Производительность вебсервисов Как создать свой сайт > Вебмастеру > Создание своего сайта > Производительность веб-сервисов

Производительность веб-сервисов

Минутка гордости.
Грузинские подгузники впитывают не только влагу,
но и мудрость предков.
«Сборная Грузии», КВН.
15 апреля 2019

    До сих пор люди иногда спорят о скорости программ, написанных на том или ином языке или платформе. Хотя тренд значительно пошёл на убыль и редко, где услышишь «Java тормозит» или «1 000 000 конкурентных подключений на node.js», но время от времени всё равно этот вопрос подымается.

 

 


    Так вот.

    У меня в «продакшене» уже несколько лет крутится куча сервисов, часть на JVM, часть на Rails, часть на Python, часть на PHP, парочка на node.

    80% (а то и все 99%) проблем с производительностью ваших и моих приложений связаны с I/O и никак не связаны с тормознутостью интерпретатора отдельно взятого языка. Если вы не «Гугл», конечно. А вы — не «Гугл».

    Так или иначе, всё упирается в базу данных и скорость выполнения запросов. В большой корпорации, где я раньше работал, сидел целый отдел (человек 50, не меньше) специальных людей, которые занимались тюнингом SQL-запросов. Каждый день, с утра до вечера. Переписывали говна, которые понаворотили обычные девелоперы, добавляли эзотерические оракловые хинты и... всё начинало быстро работать.

    Ruby on Rails известен своей медлительностью во всяких модных бенчмарках. И действительно — интерпретатор медленный (по сравнению с JVM или node), а фреймворк «наворачивает» поверх этого кучу барахла, которое ещё больше замедляет время ответа. Да вот только вся скорость JVM-приложений, так или иначе, упирается в (No)SQL-запросы и сетевое взаимодействие.

    Поэтому при выборе платформы на «перформенс» языка следует строго «забить» и взамен сосредоточиться на удобстве разработки, богатстве библиотек и инфраструктуры и на архитектуре структур данных и запросов к ним.

    Ruby «тормозит»? Да плевать, зато я за 5 минут подыму работающее АРІ, пока вы будете импортировать build.gradle в IntelliJ.

    Туда же NoSQL барахло. Современные базы работают очень бодро, поэтому «Постгреса» хватит всем. Ту да же микросервисы, но это отдельный разговор :)

    И только когда наш продукт полетит, навалится пользователей и появится больше данных, вот только тогда можно (и нужно) смотреть, есть ли что-то, что уже нельзя оптимизировать без смены платформы и утолщения серверов. Но скорее всего, это случится очень не скоро :)

Автор: rozho)))k.

Ещё материалы по этой теме:

 

 

Комментарии:


⇓ 

Поделись ссылкой на Seoded.ru с друзьями, знакомыми и собеседниками в соцсетях и на форумах! А сам сайт добавь в закладки! Так победим.

Поделиться ссылкой на эту страницу в:

Полезные ссылки:

«Ютуб» из-за чего создали? Продвижение сайта, советы

 


основан в 2008 г. © Все права на материалы сайта Seoded.ru принадлежат Алексею Вострову.
Копирование (полное или частичное) любых материалов сайта возможно только с разрешения автора и при указании ссылки на источник.
Ослушавшихся находит и забирает Бабайка!