Vue-FAQ
923 subscribers
562 photos
90 videos
557 links
Канал сайта https://vue-faq.org
Информация о Vue.js, фронтенд разработке и не только

Contacts: @RuslanMakarov
Download Telegram
Тут в чате спросили - нужно ли фронтендеру знать Docker?

Имеется в виду, по собственному желанию, а не когда тебе его навязывают в уже готовом проекте. Лично я его не использую, несмотря на то, что full-stack и devops. Просто нет надобности. Как-то начал считать - а может дешевле свои проекты хостить как контейнеры? Да нет, лучше сервер купить и быть на нем полным хозяином. Хотя могу представить, что есть ситуации, когда он действительно упрощает жизнь.

Но вот никогда не встречался с юз-кейсами, когда нужен Kubernetes. Сложно представить систему с десятками микросервисов, каждый из которых нужно изолировать, или которая масштабируется рождая новые десятки контейнеров-обработчиков при возрастающей нагрузке.

А в интернете послушать, так это очередной мастхев для любого магазина "У дяди Васи".

Давайте, вообще, посчитаем нагрузку на средний сайт. Возьмем какой-нибудь Озон. По статистике 2023 года у него 46 миллионов активных пользователей, делающих в год в среднем 20 заказов. Это 30 заказов в секунду.

Допустим для создания одного заказа надо провести на сайте 1 час. Получаем, на сайте одновременно висит около 10000 человек.

Допустим, на бэкенд API за данными при этом отправляется в среднем 1 запрос в 2 секунды. Итого 5000 запросов в секунду.

Если руки разработчиков растут из нужного места, 95%-99% этих запросов (каталоги, информация о товаре, отзывы и т.п.) - кэшируются на каком-нибудь Redis, который на 1 CPU с достаточным количеством RAM спокойно держит десятки и сотни тысяч запросов в секунду, поэтому их просто можно не учитывать. Итого остается 200-300 в секунду уже нормальных запросов на бэк и БД.

Самое ресурсозатратное при этом - база данных. Сколько тянет PostgreSQL на бюджетном железе? Десятки тысяч запросов в секунду простых селектов, тысячи инсертов и сложных джойнов с временными таблицами. А в Озоне поиск (самое тяжелое) наверняка не по %LIKE% происходит, а по заранее построенным индексам тоже в каком-нибудь memory-based хранилище.

Немного упрощенно, но многие ли строят системы уровня Озон-а?

Ну и зачем дяде Васе нужен Kubernetes?

#highload #docker #k8s