Насчет объектов — спорный момент.
Старый добрый foreach еще никто не отменял.
А тестировать можно и с PHPAMF — в комплекте есть браузер, при должной сноровке которого хватает в 99% случаев.
Последняя версия вышла 2 февраля, поэтому проект AMFPHP еще рано хоронить.
Тоже рассматривали как вариант зенд. Но проанализировав преимущества и недостатки такого подхода, пришли к выводу, что тащить за собой фреймворк и подстраиваться под него ради использования одной его библиотеки не очень хорошо.
По производительности Java выигрывает, не спорю, но не является «серебрянной пулей»
Рейтинги у нас строятся специальным серваком, который под это заточен.
И что касается удобства — пых не требует преобразования типов, да и программистов найти на нем проще.
А если прижмет, то всегда успеем переписать на яву ( ни разу не прижимало, если честно — когда наступала необходимость оптимизировать, денег уже было достаточно чтобы арендовать еще один сервер и не париться о том, что где-то мы потеряли процентов 20 производительности )
Пруф дайте пожалуйста.
Вот так отвернешься, и Scala под нож пустят :)
Старый добрый foreach еще никто не отменял.
А тестировать можно и с PHPAMF — в комплекте есть браузер, при должной сноровке которого хватает в 99% случаев.
Прогонял простой вызов hello, который описан в статье
на LVDS-512 от селектела,
ПО:
ubuntu+ngnix+fastcgi+eaccelerator
(Версии не важны, т.к. измерения относительны)
для измерения времени — microtime, для измерения памяти — memory_get_usage
Контрольный прогоны начиная со 101 (чтобы включился кеш и начал работать eaccelerator в полную силу)
Данные заносились в лог, далее усреднялись.
всего контрольных прогонов: 1000
AMFPHP
TIME: 12,3 ms
MEMORY: 50,5 K
ZEND_AMF
TIME: 20,5 ms
MEMORY: 93,6 K
Результат налицо.
Возможно, я не включил полезные оптимизации, но если скажете, что делать, могу повторить тесты.
Просто решили не тащить за собой мертвые зависимости.
Тем более представьте, как бы увеличилась статья, если бы вдруг вместо AMFPHP использовался Zend_amf.
А так все просто
1. Скачал
2. Настроил
…
PROFIT!
Он тащит за собой 5 зависимостей
Zend_Server_Interface
Zend_Server_Reflection
Zend_Server_Reflection_Function_abstract
Zend_Server_Reflection_Method
+ расширение PHP Reflection
framework.zend.com/wiki/display/ZFPROP/Zend_Amf+-+Wade+Arnold?focusedCommentId=7373250
Это для нас очень нежелательно, т.к. каждое расширение PHP увеличивает время ответа и усложняет настройку сервера.
Но тем не менее, эта реализация AMF довольно стабильна, удобна в управлении и ни разу нас не подводила (5 проект на ней делаем)
Лучшее — враг хорошего ;)
Тоже рассматривали как вариант зенд. Но проанализировав преимущества и недостатки такого подхода, пришли к выводу, что тащить за собой фреймворк и подстраиваться под него ради использования одной его библиотеки не очень хорошо.
По производительности Java выигрывает, не спорю, но не является «серебрянной пулей»
Рейтинги у нас строятся специальным серваком, который под это заточен.
И что касается удобства — пых не требует преобразования типов, да и программистов найти на нем проще.
А если прижмет, то всегда успеем переписать на яву ( ни разу не прижимало, если честно — когда наступала необходимость оптимизировать, денег уже было достаточно чтобы арендовать еще один сервер и не париться о том, что где-то мы потеряли процентов 20 производительности )