пока это будет лишь прототип проекта, имеющего микросервисную архитектуру и возможно позже этот прототип будет переписываться на Go при росте нагрузок
потом посмотрим
в зависимости от того какие нагрузки пойдут и как сервис будет держать нагрузку
но, есть несколько очень тонких и важных моментов...
для реализации данного проекта Python больше подходит, динамическая типизация всё таки рулит в некоторых задачах и алгоритмах, и многое упрощает, например рефакторинг, последующую модификацию, развитие, наращивание или наоборот сокращение функционала, его композицию в монолитную архитектуру или декомпозицию, разбивку на микросервисы
Python и Ruby замечательные языки, как две ипостаси, они мне оба очень нравятся, даже не знаю какой из них больше, в них есть много полезных, интересных и удобных фич для программирования, которые пока реализованы только в их интерпретаторах
это и сопрограммы, и динамическая типизация, и параметрический полиморфизм, и метаклассы, и т.д.
https://en.wikipedia.org/wiki/First-class_citizen#Examples
очень жаль что эти реализации интерпретаторов так неэффективны и до сих пор нет толковой реализации окружения этих языков, языковой среды, транслятора (именно компилятора), использующего возможности регистровой машины LLVM
из этого вытекает огромная неэффективность, неэкономичность, энергонеэффективность, необходимость масштабирования бОльшими экономическими затратами на хостинг, бОльшими ресурсами железа, бОльшими расходами энергии, электричества для поддержания работы серверов, сервисов
для перехода на Go очень вдохновила статья Трэвиса Ридера в блоге Iron.io:
https://www.iron.io/how-we-went-from-30-servers-to-2-go/
применяя Go это замечаешь всё больше, более остро, что всё остальное это костыли программирования, неэффективные и слишком энергозатратные
особенно это заметно в сфере криптовалют, где proof-of-work это главный принцип вычислительной сети
ещё очень жаль что производительность реализаций Ruby, MRI/YARV, JRuby, стала проседать сильно с введением в них поддержки версии 2.0 языка Ruby и его возможностей, как относительно реализаций версий 1.9 языка, так и относительно даже реализаций Python 3
Python минималистичен и этим привлекателен, Go ещё более минималистичен
хотя Ruby имеет более широкие языковые возможности (языка и стандартной библиотеки) при этом сохраняя минимализм языка, лаконичность архитектуры и реализации, как самого языка так и его окружения, языковой среды, трансляторов
огромное преимущество это объектная природа всех элементов, классов и типов языка и возможность их модификации, перегрузки, ad-hoc полиморфизма - это и есть реализация парадигмы First-class citizen, которую Ruby подчерпнул из Smalltalk
в программировании это называется интроспекцией типов и более обобщённо рефлексией и метапрограммированием, first-class object
в Python и Go такие возможности тоже есть, но они позволяют модифицировать не абсолютно все возможности языка, как в Ruby, в котором любой элемент, класс, объект и тип можно переопределить или вообще создать с помощью наследования свои типы, операторы, синтаксис, DSL для определённых задач
потом посмотрим
в зависимости от того какие нагрузки пойдут и как сервис будет держать нагрузку
но, есть несколько очень тонких и важных моментов...
для реализации данного проекта Python больше подходит, динамическая типизация всё таки рулит в некоторых задачах и алгоритмах, и многое упрощает, например рефакторинг, последующую модификацию, развитие, наращивание или наоборот сокращение функционала, его композицию в монолитную архитектуру или декомпозицию, разбивку на микросервисы
Python и Ruby замечательные языки, как две ипостаси, они мне оба очень нравятся, даже не знаю какой из них больше, в них есть много полезных, интересных и удобных фич для программирования, которые пока реализованы только в их интерпретаторах
это и сопрограммы, и динамическая типизация, и параметрический полиморфизм, и метаклассы, и т.д.
https://en.wikipedia.org/wiki/First-class_citizen#Examples
очень жаль что эти реализации интерпретаторов так неэффективны и до сих пор нет толковой реализации окружения этих языков, языковой среды, транслятора (именно компилятора), использующего возможности регистровой машины LLVM
из этого вытекает огромная неэффективность, неэкономичность, энергонеэффективность, необходимость масштабирования бОльшими экономическими затратами на хостинг, бОльшими ресурсами железа, бОльшими расходами энергии, электричества для поддержания работы серверов, сервисов
для перехода на Go очень вдохновила статья Трэвиса Ридера в блоге Iron.io:
https://www.iron.io/how-we-went-from-30-servers-to-2-go/
применяя Go это замечаешь всё больше, более остро, что всё остальное это костыли программирования, неэффективные и слишком энергозатратные
особенно это заметно в сфере криптовалют, где proof-of-work это главный принцип вычислительной сети
ещё очень жаль что производительность реализаций Ruby, MRI/YARV, JRuby, стала проседать сильно с введением в них поддержки версии 2.0 языка Ruby и его возможностей, как относительно реализаций версий 1.9 языка, так и относительно даже реализаций Python 3
Python минималистичен и этим привлекателен, Go ещё более минималистичен
хотя Ruby имеет более широкие языковые возможности (языка и стандартной библиотеки) при этом сохраняя минимализм языка, лаконичность архитектуры и реализации, как самого языка так и его окружения, языковой среды, трансляторов
огромное преимущество это объектная природа всех элементов, классов и типов языка и возможность их модификации, перегрузки, ad-hoc полиморфизма - это и есть реализация парадигмы First-class citizen, которую Ruby подчерпнул из Smalltalk
в программировании это называется интроспекцией типов и более обобщённо рефлексией и метапрограммированием, first-class object
в Python и Go такие возможности тоже есть, но они позволяют модифицировать не абсолютно все возможности языка, как в Ruby, в котором любой элемент, класс, объект и тип можно переопределить или вообще создать с помощью наследования свои типы, операторы, синтаксис, DSL для определённых задач
кстати, в Go есть динамическая идентификация (RTTI) и вывод типов (type inference) в runtime через reflect.TypeOf
https://golang.org/pkg/reflect/#TypeOf
это и есть один из аспектов реализации рефлексии (first-class object) и интроспекции типов в Go для динамического вывода, идентификации и определения типов данных
https://golang.org/pkg/reflect/#TypeOf
это и есть один из аспектов реализации рефлексии (first-class object) и интроспекции типов в Go для динамического вывода, идентификации и определения типов данных
Сегодня символу Linux исполнилось 20 лет.
9 мая 1996 года официальным талисманом Linux стал пингвин Tux.
https://upload.wikimedia.org/wikipedia/commons/thumb/5/55/Tux_Enhanced.svg/1000px-Tux_Enhanced.svg.png
https://en.wikipedia.org/wiki/Tux
9 мая 1996 года официальным талисманом Linux стал пингвин Tux.
https://upload.wikimedia.org/wikipedia/commons/thumb/5/55/Tux_Enhanced.svg/1000px-Tux_Enhanced.svg.png
https://en.wikipedia.org/wiki/Tux
Forwarded from Andrew Bednoff
Keybase.io делают шифрованное облачное хранение, клиент и vfs для этого...
крутяк! 👍
крутяк! 👍
Forwarded from Andrew Bednoff
Keybase mounts end-to-end encrypted folders in /keybase/private
есть приватные с шифрованием и публичные с подписью директории в облачном хранилище
есть приватные с шифрованием и публичные с подписью директории в облачном хранилище
Тут недавно в нескольких чатах прозвучал один и тот же вопрос.
Почему массовый проприетарный софт профессионального назначения (для графического дизайна, полиграфических и издательских систем, и другой популярный профессиональный проприетарный софт) не разрабатывается с учётом поддержки им Linux?
У многих это вызывает разочарование в Linux системах.
Но нужно осознавать и понимать, что многое зависит и от популярности Linux, качественного состава его пользовательской базы, целевой аудитории, а от этого уже желание производителей профессионального софта (Adobe, Autodesk, etc.) адаптировать его к среде Linux окружения и желание производителей железа (NVidia, AMD) поддерживать свои хардвёрные продукты в Linux.
Те же Pixar и Disney создают графику под Linux на своём софте, потому что рендеринг быстрее и открытые инструменты автоматизации (Python, etc.) доступны и хорошо поддерживаются огромным сообществом.
Linux имеет очень прочные позиции в индустрии кино - почти все эффекты, их монтаж, графика, анимация для кино создаются в Linux.
В качестве аргументов в спорах часто приводится якобы "отсутствие" некоторых "истинных" Windows технологий, типа RDP и Skype.
Под Linux есть Hanouts, Viber, Tox, как полные альтернативы Skype, более функциональные, есть десктоп-клиент Telegram в качестве более удобного мессенджера, есть управление удалённым рабочим столом через VNC или Chrome.
Также есть замечательный проект ffmpeg без которого большая часть видеохостингов и стриминговых сервисов просто не существовала бы!
Облачные инфраструктуры, кластерные фермы, сервера, мейнфреймы, суперкомпьютеры, промышленные системы, промышленный дизайн и моделирование - отрасли в которых позиции Linux традиционно очень сильны, благодаря массе открытых инструментов enterprise grade класса, работающих на Linux.
Пока ОС на ядре Linux не может быть универсальным решением для всех отраслей и причина не в самом ядре, ядро как раз таки способно поддержать любое железо и программы, и пока нет ничего более универсального, обобщённого по своей кодовой базе для многих архитектур железа, чем ядро Linux!
Про музыкальную индустрию, производство графического и издательского контента, нелинейный монтаж видео и эффекты - да, в этих отраслях позиции Apple очень сильны, потому что в них много значат патенты, лицензии, защита правообладателей и т.д.
M$ Windows традиционно держится за счёт OEM производителей и огромной массы не очень грамотных в IT людей, которым нет разницы чем пользоваться, лишь бы было проще для решения повседневных задач.
В мобильном секторе позиции Linux также сильны, за счёт Android и поддержки Linux со стороны Google, т.к. все их сервисы работают на Linux, а Android и ChromeOS, браузеры Chrome/Chromium это только средство продвижения и доставки их сервисов до конечных пользователей.
Intel например заинтересованы в Linux из-за серверного рынка и присутствия на нём, для продвижения своего, производимого ими, серверного железа, контроллеров встроенных систем и персонального профессионального железа для специалистов, во многом вовлечённых в серверный сектор, i.e. лэптопы, десктопы, рабочие станции для бэкэнд девелоперов и для разработчиков промышленной графики, создания графических эффектов в кино, графической анимации.
Oracle одной из первых увидела в Linux перспективу для продвижения своих корпоративных продуктов, СУБД и для поддержки ядром своей архитектуры SPARC в серверном сегменте рынка железа. Равно как и IBM со своими корпоративными продуктами, технологиями хранения данных, архитектурой Power, серверами и мэйнфреймами.
Вообще в мобильном и серверном секторе без поддержки и заинтересованности крупных вендоров Linux бы не имел таких сильных позиций, а вендоры доверяют Linux из-за его открытости, свободы применения и модификации под нужды бизнеса - "рука руку моет".
Где рынок был заинтересован в открытости, там позиции Linux сильны - это самый главный вывод!
Где востребована открытость, там уже востребован или будет востребован Linux - это market driven expansion!
Вот и вся правда-матка!
Почему массовый проприетарный софт профессионального назначения (для графического дизайна, полиграфических и издательских систем, и другой популярный профессиональный проприетарный софт) не разрабатывается с учётом поддержки им Linux?
У многих это вызывает разочарование в Linux системах.
Но нужно осознавать и понимать, что многое зависит и от популярности Linux, качественного состава его пользовательской базы, целевой аудитории, а от этого уже желание производителей профессионального софта (Adobe, Autodesk, etc.) адаптировать его к среде Linux окружения и желание производителей железа (NVidia, AMD) поддерживать свои хардвёрные продукты в Linux.
Те же Pixar и Disney создают графику под Linux на своём софте, потому что рендеринг быстрее и открытые инструменты автоматизации (Python, etc.) доступны и хорошо поддерживаются огромным сообществом.
Linux имеет очень прочные позиции в индустрии кино - почти все эффекты, их монтаж, графика, анимация для кино создаются в Linux.
В качестве аргументов в спорах часто приводится якобы "отсутствие" некоторых "истинных" Windows технологий, типа RDP и Skype.
Под Linux есть Hanouts, Viber, Tox, как полные альтернативы Skype, более функциональные, есть десктоп-клиент Telegram в качестве более удобного мессенджера, есть управление удалённым рабочим столом через VNC или Chrome.
Также есть замечательный проект ffmpeg без которого большая часть видеохостингов и стриминговых сервисов просто не существовала бы!
Облачные инфраструктуры, кластерные фермы, сервера, мейнфреймы, суперкомпьютеры, промышленные системы, промышленный дизайн и моделирование - отрасли в которых позиции Linux традиционно очень сильны, благодаря массе открытых инструментов enterprise grade класса, работающих на Linux.
Пока ОС на ядре Linux не может быть универсальным решением для всех отраслей и причина не в самом ядре, ядро как раз таки способно поддержать любое железо и программы, и пока нет ничего более универсального, обобщённого по своей кодовой базе для многих архитектур железа, чем ядро Linux!
Про музыкальную индустрию, производство графического и издательского контента, нелинейный монтаж видео и эффекты - да, в этих отраслях позиции Apple очень сильны, потому что в них много значат патенты, лицензии, защита правообладателей и т.д.
M$ Windows традиционно держится за счёт OEM производителей и огромной массы не очень грамотных в IT людей, которым нет разницы чем пользоваться, лишь бы было проще для решения повседневных задач.
В мобильном секторе позиции Linux также сильны, за счёт Android и поддержки Linux со стороны Google, т.к. все их сервисы работают на Linux, а Android и ChromeOS, браузеры Chrome/Chromium это только средство продвижения и доставки их сервисов до конечных пользователей.
Intel например заинтересованы в Linux из-за серверного рынка и присутствия на нём, для продвижения своего, производимого ими, серверного железа, контроллеров встроенных систем и персонального профессионального железа для специалистов, во многом вовлечённых в серверный сектор, i.e. лэптопы, десктопы, рабочие станции для бэкэнд девелоперов и для разработчиков промышленной графики, создания графических эффектов в кино, графической анимации.
Oracle одной из первых увидела в Linux перспективу для продвижения своих корпоративных продуктов, СУБД и для поддержки ядром своей архитектуры SPARC в серверном сегменте рынка железа. Равно как и IBM со своими корпоративными продуктами, технологиями хранения данных, архитектурой Power, серверами и мэйнфреймами.
Вообще в мобильном и серверном секторе без поддержки и заинтересованности крупных вендоров Linux бы не имел таких сильных позиций, а вендоры доверяют Linux из-за его открытости, свободы применения и модификации под нужды бизнеса - "рука руку моет".
Где рынок был заинтересован в открытости, там позиции Linux сильны - это самый главный вывод!
Где востребована открытость, там уже востребован или будет востребован Linux - это market driven expansion!
Вот и вся правда-матка!
Всё зависит от целей и задач, применения и применимости.
Там где открытость и свободу нельзя или не получается поставить на коммерческие рельсы, там она не востребована и эта модель не работает.
Это основная мысль, почему массовый проприетарный софт для профессионального графического дизайна (и другой проприетарный софт) не разрабатывается с учётом поддержки им Linux.
Не потому что производители этого софта не могут, а потому что это требует усилий которые не окупятся, поэтому производителям софта это не выгодно.
Корпоративность, патенты, соглашения, деньги рулят потому что!
Поэтому в десктоп и мобильном секторе сподвижникам FLOSS и Linux нужно искать новые пути продвижения и монетизации, чтобы занять большую долю рынка.
Главный стратег и основатель Canonical, Марк Шаттлворт, начал продвижение Ubuntu Touch очень грамотно - с поддержки производителями устройств и операторами связи, особенно азиатскими, опытные образцы были отработаны на европейском рынке компанией BQ, девайсы BQ и Meizu с Ubuntu были продемонстрированы в Барселоне на MWC2015 (BQ) и MWC2016 (Meizu), а далее Canonical начала продвижение с азиатско-тихоокеанского региона и его рынков.
Одновременно в Canonical сконцентрировались на конвергенции разработки приложений и интерфейсов для разных типов поддерживаемых устройств, обобщённом графическом сервере Mir для этих целей, системе доставки и развёртывания приложений и обновлений прошивок/дистрибутива на базе системы управления контейнерами Snappy.
Там где открытость и свободу нельзя или не получается поставить на коммерческие рельсы, там она не востребована и эта модель не работает.
Это основная мысль, почему массовый проприетарный софт для профессионального графического дизайна (и другой проприетарный софт) не разрабатывается с учётом поддержки им Linux.
Не потому что производители этого софта не могут, а потому что это требует усилий которые не окупятся, поэтому производителям софта это не выгодно.
Корпоративность, патенты, соглашения, деньги рулят потому что!
Поэтому в десктоп и мобильном секторе сподвижникам FLOSS и Linux нужно искать новые пути продвижения и монетизации, чтобы занять большую долю рынка.
Главный стратег и основатель Canonical, Марк Шаттлворт, начал продвижение Ubuntu Touch очень грамотно - с поддержки производителями устройств и операторами связи, особенно азиатскими, опытные образцы были отработаны на европейском рынке компанией BQ, девайсы BQ и Meizu с Ubuntu были продемонстрированы в Барселоне на MWC2015 (BQ) и MWC2016 (Meizu), а далее Canonical начала продвижение с азиатско-тихоокеанского региона и его рынков.
Одновременно в Canonical сконцентрировались на конвергенции разработки приложений и интерфейсов для разных типов поддерживаемых устройств, обобщённом графическом сервере Mir для этих целей, системе доставки и развёртывания приложений и обновлений прошивок/дистрибутива на базе системы управления контейнерами Snappy.
Как раз о том как Linux пришёл к лицензии GNU GPL на открытые исходники, о процессе разработки, о ядре и его создателе в интервью Линуса Торвальдса на конференции TED (Февраль 2016-го года, Ванкувер, Британская Колумбия, Канада) с её основателем и куратором Крисом Андерсоном
https://youtu.be/o8NPllzkFhE
https://youtu.be/o8NPllzkFhE
YouTube
The Mind Behind Linux | Linus Torvalds | TED
Linus Torvalds transformed technology twice — first with the Linux kernel, which helps power the Internet, and again with Git, the source code management system used by developers worldwide. In a rare interview with TED Curator Chris Anderson, Torvalds discusses…
Technologique
Как раз о том как Linux пришёл к лицензии GNU GPL на открытые исходники, о процессе разработки, о ядре и его создателе в интервью Линуса Торвальдса на конференции TED (Февраль 2016-го года, Ванкувер, Британская Колумбия, Канада) с её основателем и куратором…
Перевод данного интервью на русский язык
https://youtu.be/Xd4IsqrxFlA
Плюс ещё один вариант перевода на русский
https://youtu.be/_tvsaMdEEuY
https://youtu.be/Xd4IsqrxFlA
Плюс ещё один вариант перевода на русский
https://youtu.be/_tvsaMdEEuY
YouTube
Линус Торвальдс TED
Мой основной канал - https://goo.gl/HM7ob7
Группа в ВК - http://vk.com/offtopnew
Группа в ВК - http://vk.com/offtopnew
Forwarded from Geeks
В честь пятницы покажу немножко нахальный, но в целом хороший сайт с сообщением об уязвимости в драйвере управления оперативной памятью материнских плат ASUS. Тут вы найдёте всё, как будто бы оно так и должно быть: и надоедливая 8-битная музыка, и анимация в стиле демо-сцен с космосом, сделанная на модном сейчас canvas, и даже есть отсылка к твиттер-аккаунту SwiftOnSecurity. Вот так вроде бы и несложно, но вполне добротно и, главное, очень уникально можно сообщить о проблеме в безопасности - не то, что эти ваши скучные промо-странички уязвимостей, которые стали популярны после heartbleed. Радует, что творческие люди ещё остались и в этом месте, и они тратят своё время и силы, чтобы сделать что-то действительно интересное и при этом полезное для всех. :) И да, чуть не забыл, собственно код для проверки на уязвимость, как и бинарный файл, тут тоже присутствуют: всё буквально умещается в один C#-файл размером 200 строк - красота, что тут ещё скажешь. http://rol.im/asux/
Asus вновь удалось выделиться! 😂
Найдена опаснейшая уязвимость в BIOS материнских плат Asus в подсистеме инициализации и управления ОЗУ, которая фактически делает систему BIOS такой базовой!
Наикрутейшая презентация уязвимости! Такая прям ностальгическая, в духе крэкинговых команд начала нулевых, с восьмибитной музыкой! Какие наши времена! Теперь это всё на веб технологиях! Какая была классная музыка! Can't stop listening! 😂
http://rol.im/asux/
https://twitter.com/SwiftOnSecurity
Найдена опаснейшая уязвимость в BIOS материнских плат Asus в подсистеме инициализации и управления ОЗУ, которая фактически делает систему BIOS такой базовой!
Наикрутейшая презентация уязвимости! Такая прям ностальгическая, в духе крэкинговых команд начала нулевых, с восьмибитной музыкой! Какие наши времена! Теперь это всё на веб технологиях! Какая была классная музыка! Can't stop listening! 😂
http://rol.im/asux/
https://twitter.com/SwiftOnSecurity
X (formerly Twitter)
SwiftOnSecurity (@SwiftOnSecurity) on X
computer security person. former helpdesk.
Роме огромное СПАСИБО! 👍
Я наконец-то понял зачем M$ стараниями Canonical впихнула окружение GNU/Linux в Windows 10 - это же очевидно, чтобы запускать контейнеры и имеено Docker! 😂
Я наконец-то понял зачем M$ стараниями Canonical впихнула окружение GNU/Linux в Windows 10 - это же очевидно, чтобы запускать контейнеры и имеено Docker! 😂
Forwarded from Roman Kononov
YouTube
Meetup #6: Docker
Революция товарищи! 😂👍
https://blog.docker.com/2013/09/docker-can-now-run-within-docker/
https://github.com/jpetazzo/dind
https://blog.docker.com/2013/09/docker-can-now-run-within-docker/
https://github.com/jpetazzo/dind
Docker
Docker can now run within Docker
One of the (many!) features of Docker 0.6 is the new "privileged" mode for containers. It allows you to run some containers with (almost) all the capabilities of their host machine, regarding kernel features and device access. Among the (many!) possibilities…
Forwarded from Luger Parabellum
про запуск докера в докере:
Ехал докер через докер,
Видит докер в докер докер.
Сунул докер докер в докер.
Докер докер докер докер!
))
Ехал докер через докер,
Видит докер в докер докер.
Сунул докер докер в докер.
Докер докер докер докер!
))
мы с командой CodEx много чего писали, юзали Java, Scala, JRuby, Groovy, стек NIO2, фреймворки Netty и Vert.x
вот тогда я и понял и почувствовал буквально какой громадный overhead генерируют JavaEE, фреймворки и сама JVM
это просто огромный пласт библиотек, нацеленных на упрощение разработки, но здорово отъедающих ресурсы и замедляющих всю систему
когда в системе так много звеньев, диагностика производительности и поиск bottle-neck, узкого звена, превращается в нетривиальную задачу
после этого я стал искать что-нибудь потоньше, золотую середину между упрощением разработки, скоростью разработки, и скоростью исполнения, скоростью работы всего стека, с более эффективным использованием ресурсов железа, что-то более энергоэффективное 😄
помню в году 2012 и 2013 мы делали продукт, операторский биллинг и платёжный банковский онлайн процессинг транзакций
вот там был ебздец какой high-load, обслуживание более 100M пользователей в Asia-Pacific region, более 1M RPS к маршрутизатору запросов в контроллере по приёму, десериализации, сериализации и отдаче JSON
метрики производительности по БД конечно не так однозначно измеримы - всё зависит от распараллеливания запросов, работы производимой в движке БД по объединению данных в рамках одного запроса, кэшированию данных в памяти и т.д.
поэтому в тесте фреймворков techempower для этого создали три или даже четыре вида тестов
после этого всего сложилось твёрдое убеждение о Java и прочем под JVM, которое лучше всего выражено на этой картине:
http://andrcmdr.tk/post/143237771807
😂👍
вот тогда я и понял и почувствовал буквально какой громадный overhead генерируют JavaEE, фреймворки и сама JVM
это просто огромный пласт библиотек, нацеленных на упрощение разработки, но здорово отъедающих ресурсы и замедляющих всю систему
когда в системе так много звеньев, диагностика производительности и поиск bottle-neck, узкого звена, превращается в нетривиальную задачу
после этого я стал искать что-нибудь потоньше, золотую середину между упрощением разработки, скоростью разработки, и скоростью исполнения, скоростью работы всего стека, с более эффективным использованием ресурсов железа, что-то более энергоэффективное 😄
помню в году 2012 и 2013 мы делали продукт, операторский биллинг и платёжный банковский онлайн процессинг транзакций
вот там был ебздец какой high-load, обслуживание более 100M пользователей в Asia-Pacific region, более 1M RPS к маршрутизатору запросов в контроллере по приёму, десериализации, сериализации и отдаче JSON
метрики производительности по БД конечно не так однозначно измеримы - всё зависит от распараллеливания запросов, работы производимой в движке БД по объединению данных в рамках одного запроса, кэшированию данных в памяти и т.д.
поэтому в тесте фреймворков techempower для этого создали три или даже четыре вида тестов
после этого всего сложилось твёрдое убеждение о Java и прочем под JVM, которое лучше всего выражено на этой картине:
http://andrcmdr.tk/post/143237771807
😂👍
AndrCmdr's Weblog
classicprogrammerpaintings: “ Hieronymus Bosch “A visual guide to the Scala language” oil on oak panels, 1490-1510 The left panel shows the functional features, the main one describes the type system,...