У меня есть сервер Rails, который немного перегружен API, и поэтому я хочу запустить прозрачный прокси-сервер с кэшированием Squid между всеми действиями порта 80 и реальным миром. Однако мне не нужен входящий трафик для прохождения этого прокси-сервера Squid. Например
Rails -> Squid -> Internet
Internet -> Rails
Я не могу представить, что это необычная установка, но я не могу найти никаких примеров в Интернете. Следуя прозрачным руководствам по Squid, только что закончилось, что весь входящий трафик попадает на прокси-сервер Squid, а исходящий трафик, похоже, проходит мимо него (хотя я не уверен в этом).
Вот это ifconfig
вывод. Думаю, это будет актуально для любых ответов.
eth0 Link encap:Ethernet HWaddr f2:3c:91:ae:33:6b
inet addr:176.58.105.173 Bcast:176.58.105.255 Mask:255.255.255.0
inet6 addr: fe80::f03c:91ff:feae:336b/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:330029 errors:0 dropped:0 overruns:0 frame:0
TX packets:185242 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:333723993 (333.7 MB) TX bytes:34410551 (34.4 MB)
Interrupt:44
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:684735 errors:0 dropped:0 overruns:0 frame:0
TX packets:684735 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:54837497 (54.8 MB) TX bytes:54837497 (54.8 MB)
Я бы не стал утруждать себя настройкой прозрачного прокси. Вместо этого просто запустите Squid на 127.0.0.1:3128, а затем используйте материал Net :: HTTP :: Proxy для вызовов API. Документация здесь. Я не рекомендую для начала прокачивать все через прокси, а перемещаться по конкретным вызовам, пока вы не освоитесь с настройкой.
Что касается размера вашего кэша Squid, если вы выделите кеш 128 МБ, Squid будет использовать примерно 196 МБ, включая кеш и накладные расходы. Если вы думаете, что собираетесь приблизиться к максимальному объему памяти машины, я бы установил некоторый мониторинг пространства подкачки, который обычно является вашим лучшим индикатором того, что вы переписали память.