С EC2 Вам не гарантируют производительность. Из-за природы виртуального аппаратного обеспечения, все это зависит от полного здоровья облака. Если Вы ищете что-то, что обеспечивает идентичную производительность каждый раз, большинство поставщиков (включенный Amazon) предложение, что называют зарезервированными экземплярами.
Думайте об экземплярах по запросу, больше a, "Если мне нужен больше, я могу просто запуститься больше". Т.е. если Вы надеетесь обрабатывать 100 событий в секунду, но запускаетесь, одно единственное предоставляет Вам 75 событий в секунду, можно просто запустить другой экземпляр. На основе Вашего вопроса это кажется на необходимость в выделенном сервере для непрерывной обработки - или возможно даже удаленном выделенном сервере (крыло Rackspace).
если кому-то интересно, ниже я добавил рабочие файлы конфигурации (основной / родительский сквид)
основной файл конфигурации сквида (192.168.220.1)
acl local_net src 192.168.0.0/16
acl parent_peer peername PARENT_PEER
acl parent_squid dst 192.168.220.2
acl FILE_TO_CACHE urlpath_regex \.(zip|iso|rar)$
acl STORAGE dstdomain storage.example.net
http_port 192.168.220.1:3128 intercept
icp_port 3130
cache_peer 192.168.220.2 parent 3128 3130 name=PARENT_PEER connect-timeout=7 proxy-only
cache_peer_access PARENT_PEER allow STORAGE FILE_TO_CACHE
# to connect to parent via internal interface
tcp_outgoing_address 192.168.220.1 parent_peer
# to properly get cache digest from parent
tcp_outgoing_address 192.168.220.1 parent_squid
# sent all other packets via ISP2
tcp_outgoing_address yyy.yyy.yyy.239 local_net
родительский файл конфигурации кальмара (192.168.220.2)
acl main_squid src 192.168.220.1
acl FILE_TO_CACHE urlpath_regex -i \.(zip|iso|rar)$
cache allow FILE_TO_CACHE
cache deny all
http_access allow main_squid
http_access allow localhost
http_access deny all
icp_port 3130
icp_access allow main_squid
icp_access deny all
http_port 192.168.220.2:3128
cache_mem 12 GB
maximum_object_size_in_memory 64 MB
minimum_object_size 16384 KB
maximum_object_size 1024 MB
cache_swap_low 93
cache_swap_high 98
refresh_pattern \.iso$ 129600 100 129600 override-lastmod override-expire ignore-reload
refresh_pattern \.zip$ 129600 100 129600 override-lastmod override-expire ignore-reload
refresh_pattern \.rar$ 129600 100 129600 override-lastmod override-expire ignore-reload
cache_effective_user squid
cache_effective_group squid
Взгляните на документацию squid tcp_outgoing_address
Вы можете использовать acl для ограничения области tcp_outgoing_address
.
Добавьте следующее в конфигурацию main_squid
acl parent_squid dst 192.168.220.2/32
tcp_outgoing_address 192.168.220.1 parent_squid
tcp_outgoing_address yyy.yyy.yyy.239 !parent_squid
. Но это в основном неиспользуемая функция, в которой много ошибок (я видел, как в некоторых случаях она вылетала из squid). Я бы рекомендовал использовать iptables для принудительного выбора правильного интерфейса / ip. Что-то вроде этого должно сработать
iptables -t nat -A PREROUTING -d 192.168.220.2/32 -j SNAT --to 192.168.220.1