AlexSm 6d3e410c45 Remove CMakeLists from main (#2032) | 9 месяцев назад | |
---|---|---|
.. | ||
ut | bf0f13dd39 add ymake export to ydb | 1 год назад |
README.md | 829eae21c7 Fix typos | 2 лет назад |
cache.cpp | 6a1e535429 Restoring authorship annotation for <vmordovin@yandex-team.ru>. Commit 2 of 2. | 2 лет назад |
cache.h | 984590e9d9 Restoring authorship annotation for <and42@yandex-team.ru>. Commit 2 of 2. | 2 лет назад |
magic.cpp | 984590e9d9 Restoring authorship annotation for <and42@yandex-team.ru>. Commit 2 of 2. | 2 лет назад |
magic.h | 984590e9d9 Restoring authorship annotation for <and42@yandex-team.ru>. Commit 2 of 2. | 2 лет назад |
thread.cpp | 6a1e535429 Restoring authorship annotation for <vmordovin@yandex-team.ru>. Commit 2 of 2. | 2 лет назад |
thread.h | 984590e9d9 Restoring authorship annotation for <and42@yandex-team.ru>. Commit 2 of 2. | 2 лет назад |
ya.make | bf0f13dd39 add ymake export to ydb | 1 год назад |
Библиотека кеширующего resolving-а - изначально писалась для имплементации neh http протокола, использующей корутины. Для предотвращения пробоя короткого стека корутин есть метод, предусматривающий вынос в отдельный тред собственно вызов функции резолвинга. Для предотвращения обращения к DNS серверам (использования вместо этого заранее заданных ip-адресов), предусмотрена ручка добавления alias-ов hosname -> ip-address (требование от метапоискового движка).
Из-за того, что библиотека разрабатывалась под задачу максимально быстрого резолвинга добавлены слои кеширования результатов resoving-а, - возможности сбросить кеш для того, чтобы получить более свежие адреса для указанного host-а нет.