РебятаКак управлять границей URL-адреса искателя?
У меня есть следующий код для добавления посещенных ссылок на мой искатель. После извлечения ссылок у меня есть для петли, которая заполняет каждую деталь href tags.
И после того, как я посетил ссылку, откройте ее, я добавлю URL-адрес посетившей переменной коллекции ссылок, указанной выше.
private final Collection<String> urlForntier = Collections.synchronizedSet(new HashSet<String>());
Реализация искателя mulithread и предположим, если я посетил 100000 URLs, если я не прекратил искателю он будет расти с каждым днем. и это создаст проблемы с памятью? Пожалуйста, какой вариант мне нужно обновить, не создавая несогласованность потоков?
Заранее благодарен!
Thanks Dewfy! Интересно, когда переменная будет очищена, если я буду бежать, как 10000 лет, сколько мемуаров мне нужно? как это решить? даже youg я использую Trie stacture u предложил – danielad
@ danielad от открытой статистики от Google средняя длина URL-адреса составляет 90 символов, на сегодняшний день Google сообщает о 50 миллиардах (5 * 10^10) веб-страниц, некоторые реализации Trie заявляют, что мы можем сохранить это структура с эффективностью памяти как O (N). Создание простого умножения '90 * 5 * 10^10 = 4.5 * 10^12' (байты) = 4191 (Gb) Не так много для современного компьютера – Dewfy
Вау, ты такой профессиональный брат! – danielad