.png)
Мне было интересно, есть ли у кого-нибудь решения для регулирования пропускной способности на Xserve (работающий под управлением Apache 2); я пытаюсь использовать mod_bw (http://ivn.cl/category/apache/#bandwidth), но столкнулся с проблемами. Я могу собрать нужный модуль с помощью apxs, но у меня возникают проблемы при попытке перезапустить Apache (он сообщает, что mod_bw.so скомпилирован для неправильной архитектуры).
Спасибо.
решение1
Вы можете регулировать пропускную способность, используя функцию dummynet брандмауэра (инструкции см. на страницеСоветы по Mac OS XиАФП548, но поскольку они привязаны только к номерам портов TCP, они не могут различать разные виртуальные хосты, клиентские соединения и т. д.
Вероятно, вам лучше исправить несоответствие архитектуры. Запустите, file /usr/libexec/apache2/mod_bw.so
чтобы увидеть, для какой архитектуры(х) был собран модуль, и file /usr/sbin/httpd
для чего собран httpd (в 10.6 это должны быть X86_64, i386 и ppc). Чтобы контролировать, для какой архитектуры(х) собран модуль, я думаю, вы можете просто добавить флаги -arch, которые будут переданы компилятору и компоновщику, например
apxs -Wc,"-arch x86_64" -Wc,"-arch i386" -Wc,"-arch ppc" -Wl,"-arch x86_64" -Wl,"-arch i386" -Wl,"-arch ppc" ...
Вероятно, лучше всего будет соответствовать архитектурам, для которых скомпилирован httpd, но при этом необходимо включать только режим, в котором он фактически работает; чтобы узнать это, вы можете просмотреть его в Activity Monitor.