Как по мне, фейсбук (автор Реакта) не тот сайт, для которого нужно было городить огород.
Там хватило бы и jQuery.
Код должен быть понятен большинству, а не только крутым перцам.
Такой код дороже.
А еще фейсбук память жрет.
1. Но предалагается, чтобы Битрикс что-то фиксил.
2. Один из способов, но не панацея. xss успешно пролезают через него, если понадеятся только на него.
3. Ну в этом случае сырые данные может не нужны. А в другом нужны.
Допустим name — это логин.
Тогда для фильтрации обработку нужно будет использовать еще в фильтре.
А если мы потом изменим второй параметр в htmlspecialchars($_POST['name'], ENT_QUOTES);
Или захотим вообще вырезать hmtl.
Или нужно пропустить часть html — ссылки, списки, рисунки (в комментрии пользователя к статье).
:)
1. Это не вина Битрикса, что разработчики не думают головой. Такое можно сделать везде.
2. htmlspecialchars и т.п. — не панацея от xss.
3. Часто нужно хранить сырые данные.
Так у вас используется lsyncd для дистрибуции кеша или кеш генерируется обходом бота?
Сколько у вас nginx серверов?
Я понял из предыдущего ответа, что 1.
>Смысл в надежности.(за 8 лет не было серьезных сбоев) и быстроте продукта
Как это достигается? Транзакции пишутся сразу? У меня за 8 лет тоже сбоев не было на mysql. Правда, нагрузок тоже.
>Уточните пожалуйста, что было перепутано?
SQL — это лишь язык запросов, интерфейс доступа, его можно успешно применять и для нереляционных баз.
Вот Сфинкс имеет несколько интерфейсов, в том числе и SQL.
>например создавать индексы прямо в «поддеревьях»
А обновить только один ключ в каше можно? :) Или нужно перезаписывать всю кашу?
Такие индексы будут тупить при обновлении?
Ну и на сколько они эффективны по сравнению с индексом по полю?
Это так сложно разбить код хотя бы на файлики?
>jQuery структуру не предоставляет
А плагины?
>и большая часть любителей jQuery не способна самостоятельно задать гибкую структуру.
То есть Вы не используете jQuery из-за того, что кто-то не может задать гибкую структуру? :)
Но вот как раз фейсбук не такой сайт.
Вот почему у них миллионы строк кода?
Потому что, грубо говоря, не используют jQuery, а городят огороды.
https://habrahabr.ru/post/308148/
Вряд ли стоит писать на голом js.
Тогда не используйте вообще фреймворки.
Там хватило бы и jQuery.
Код должен быть понятен большинству, а не только крутым перцам.
Такой код дороже.
А еще фейсбук память жрет.
https://www.google.com/trends/explore?q=jQuery,AngularJS,%2Fm%2F012l1vxv
?
https://habrahabr.ru/post/308148/
2. Один из способов, но не панацея. xss успешно пролезают через него, если понадеятся только на него.
3. Ну в этом случае сырые данные может не нужны. А в другом нужны.
Допустим name — это логин.
Тогда для фильтрации обработку нужно будет использовать еще в фильтре.
А если мы потом изменим второй параметр в htmlspecialchars($_POST['name'], ENT_QUOTES);
Или захотим вообще вырезать hmtl.
Или нужно пропустить часть html — ссылки, списки, рисунки (в комментрии пользователя к статье).
:)
2. htmlspecialchars и т.п. — не панацея от xss.
3. Часто нужно хранить сырые данные.
П.С.
ООП использую в меру, без фанатизма.
Но первый вопрос актуален.
Сколько у вас nginx серверов?
Я понял из предыдущего ответа, что 1.
+Это же вордпресс со множеством плагинов :)
Хотя там вроде порядка 40 серверов.
Кеш на каждом отдельный.
Это уже второй вопрос.
Если движок не позволяет делать группировки/джойны/другое, то это не вина SQL. :)
Это всего лишь язык запросов. :)
Это не сама СУБД.
Это примерно как в чай в большистве случаев добавляют сахар.
Но это не значит, что чай равняется сахару :)
Можно было добавить в ключ метод :)
Не знаю, как для фастцги, но прокси позволяет кешировать GET и HEAD (любые другие методы) вместе, отправляя 1 GET запрос на бекэнд.
Вы сами себе создали проблему, а потом ее решили костылями :)
То есть было примерно так:
?
И для каждого сервера-бекэнда был свой фастцги-кеш?
Или выше Вы говорили не о фастцги-кеше, а о кеше приложения?..
Может стоило использовать мемкеш/сетевую фс?
Или у Вас несколько nginx + несколько php?
Может нужно было просто прописать:
Могли бы переехать на cloudflare :)
Как это достигается? Транзакции пишутся сразу? У меня за 8 лет тоже сбоев не было на mysql. Правда, нагрузок тоже.
>Уточните пожалуйста, что было перепутано?
SQL — это лишь язык запросов, интерфейс доступа, его можно успешно применять и для нереляционных баз.
Вот Сфинкс имеет несколько интерфейсов, в том числе и SQL.
>например создавать индексы прямо в «поддеревьях»
А обновить только один ключ в каше можно? :) Или нужно перезаписывать всю кашу?
Такие индексы будут тупить при обновлении?
Ну и на сколько они эффективны по сравнению с индексом по полю?