Так я и говорю - использовать view. Т.е. в @ApiDoc прописываете views={"v1"} или views={"v1", "v2"}. Это единственное, что можно сделать. По крайней мере, я не нашел каких-то иных возможностей.
fisher ну а это так или иначе отразится на времени отклика. Поскольку профиль скрипта (отношение CPU/Sleep) у всех разный, я и предложил смотреть экспериментально. А потом уже можно более предметно изучать, что происходит в системе, но, имхо, в этом вопросе об этом говорить рано.
Ну если один ответ длится секунду и нужно за одну секунду обслужить 5000 клиентов - то нужно 5000 воркеров, конечно ;) Тут даже считать не нужно, оно и так понятно.
Т в секундах, для микросекунд берем доли секунды, т.е. для 100мс - берем 0.1.
Для очень малых значений (очень быстрый ответ) или очень больших объемов данных передаваемых с каждым ответом - появятся расхождения, так как воркеры PHP освободятся быстрее, чем выдача ответа клиенту. Так что для первой черновой оценки, а дальше уже экспериментировать.
Neka_D: ничо не понял. У вас уже есть денормализация. Осталось только построить полнотекстовый индекс. В принцие, если эта строка нужна только для поиска - можно сразу в ней делать вектор. Если нужна еще для чего-то, то или отдельное поле с вектором или просто индекс по выражению
Дмитрий Тимофеев: Онлайн приватные ключи хранить не будешь. А так... ну вот в comodo instantssl у меня есть сертификаты, там есть личный кабинет и список выпущенных сертификатов, но хз что там можно делать. С появлением let's encrypt многое поменялось, вопрос перевыпуска просто не стоит, оно само как-то.
Дмитрий Тимофеев: Быстрая и удобная модификация разнородной информации неквалифицированными в области программирования сотрудниками. Как это соотносится с вашей задачей - я хз, по-этому и спросил. Может вы хотите способ окинуть свои сертификаты взглядом, выдернуть ключи, сгенерить реквесты и т.п.? Тогда могу посоветовать XCA - десктопное приложение работы с сертификатами. Полученное от центра сертификации импортируете туда и все. Можно генерить приватные ключи и запросы. Можно мантейнить свой CA, если нужно.
Так вы просто proxy_set_header X-Real-IP $remote_addr; проверили в режиме PROXY? Для вашего map-а (что в принципе нормальное решение) не нужны set_real_ip_from/real_ip_header. А последние используются как раз, что бы менять $remote_addr.
> Nginx еще не умеет корректно добавлять PROXY Protocol, он может его обрабатывать и только.
Умеет при L3 проксировании (модуль stream). При L7 (http) проксировании в нем смысла мало, ибо все-равно происходит терминация http запроса и его последующее создание на бекенд. Так что простой заголовок X-Real-IP пойдет.
Я принял во внимание только то, что у вас в вопросе, а там нет информации какой уровень вы проксируете через HAProxy. Если он у вас как L3/L4 прокси, тогда, понятно, что nginx должен терминировать ssl. К слову, а вы поставили правильный set_real_ip_from? Потому-что real_ip_header proxy_protocol; должен выставлять $remote_addr. Переменная $proxy_protocol_addr есть всегда вне зависимости от включенного real_ip модуля.
А с чего вы взяли, что proxy протокол минимизирует вам какие-то задержки? В вашем случае это просто дополнительный заголовок, который анализируется nginx-ом наряду с анализом обычного http запроса. Т.е. отличия о X-Real-IP никакого. Какой-то бонус вы получите только при проходе через L3 прокси сервера, например, тот же nginx со stream модулем.
Z-r: совсем другая ситуация. Там как раз следствие четко установило, что дело не в защите от нелегального распространения, а в нарушении работы легальных копий с целью получения доп. дохода.