mirror of
https://github.com/rekryt/iplist.git
synced 2025-10-13 08:59:34 +03:00
feat: optimize cidr processing
This commit is contained in:
@@ -16,15 +16,18 @@ class IP4Helper {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
async(function () use ($ip, $i, $count, &$results) {
|
async(function () use ($ip, $i, $count, &$results) {
|
||||||
|
if (self::isInRange($ip, $results)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (CIDRStorage::getInstance()->has($ip)) {
|
if (CIDRStorage::getInstance()->has($ip)) {
|
||||||
$searchArray = CIDRStorage::getInstance()->get($ip);
|
$searchArray = CIDRStorage::getInstance()->get($ip);
|
||||||
$results = array_merge($results, self::trimCIDRs($searchArray));
|
$results = array_merge($results, self::trimCIDRs($searchArray));
|
||||||
|
|
||||||
App::getLogger()->debug($ip . ' -> ' . json_encode($searchArray), [$i + 1 . '/' . $count]);
|
App::getLogger()->debug($ip . ' -> ' . json_encode($searchArray), [
|
||||||
return;
|
$i + 1 . '/' . $count,
|
||||||
}
|
'from cache',
|
||||||
|
]);
|
||||||
if (self::isInRange($ip, $results)) {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -72,7 +75,7 @@ class IP4Helper {
|
|||||||
CIDRStorage::getInstance()->set($ip, $searchArray);
|
CIDRStorage::getInstance()->set($ip, $searchArray);
|
||||||
$results = array_merge($results, self::trimCIDRs($searchArray));
|
$results = array_merge($results, self::trimCIDRs($searchArray));
|
||||||
|
|
||||||
App::getLogger()->debug($ip . ' -> ' . json_encode($searchArray), [$i + 1 . '/' . $count]);
|
App::getLogger()->debug($ip . ' -> ' . json_encode($searchArray), [$i + 1 . '/' . $count, 'found']);
|
||||||
} else {
|
} else {
|
||||||
App::getLogger()->error($ip . ' -> CIDR not found', [$i + 1 . '/' . $count]);
|
App::getLogger()->error($ip . ' -> CIDR not found', [$i + 1 . '/' . $count]);
|
||||||
}
|
}
|
||||||
|
@@ -16,15 +16,18 @@ class IP6Helper {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
async(function () use ($ip, $i, $count, &$results) {
|
async(function () use ($ip, $i, $count, &$results) {
|
||||||
|
if (self::isInRange($ip, $results)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (CIDRStorage::getInstance()->has($ip)) {
|
if (CIDRStorage::getInstance()->has($ip)) {
|
||||||
$searchArray = CIDRStorage::getInstance()->get($ip);
|
$searchArray = CIDRStorage::getInstance()->get($ip);
|
||||||
$results = array_merge($results, self::trimCIDRs($searchArray));
|
$results = array_merge($results, self::trimCIDRs($searchArray));
|
||||||
|
|
||||||
App::getLogger()->debug($ip . ' -> ' . json_encode($searchArray), [$i + 1 . '/' . $count]);
|
App::getLogger()->debug($ip . ' -> ' . json_encode($searchArray), [
|
||||||
return;
|
$i + 1 . '/' . $count,
|
||||||
}
|
'from cache',
|
||||||
|
]);
|
||||||
if (self::isInRange($ip, $results)) {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -72,7 +75,7 @@ class IP6Helper {
|
|||||||
CIDRStorage::getInstance()->set($ip, $searchArray);
|
CIDRStorage::getInstance()->set($ip, $searchArray);
|
||||||
$results = array_merge($results, self::trimCIDRs($searchArray));
|
$results = array_merge($results, self::trimCIDRs($searchArray));
|
||||||
|
|
||||||
App::getLogger()->debug($ip . ' -> ' . json_encode($searchArray), [$i + 1 . '/' . $count]);
|
App::getLogger()->debug($ip . ' -> ' . json_encode($searchArray), [$i + 1 . '/' . $count, 'found']);
|
||||||
} else {
|
} else {
|
||||||
App::getLogger()->error($ip . ' -> CIDR not found', [$i + 1 . '/' . $count]);
|
App::getLogger()->error($ip . ' -> CIDR not found', [$i + 1 . '/' . $count]);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user