SmInc, ладно-ладно, Facebook, Twitter и Firebase ни черта не понимают ни в разработке, ни в менеджменте. На этой восхитительной ноте удаляюсь из обсуждения.
SmInc, моё мнение и код - ничто, по сравнению с мнением и кодом ведущего разработчика Firebase Грега Солтиса, одного из инженеров Facebook Эндрю Кокса и инженера Twitter Джефа Смика. Каждый из них - автор публикаций, тема которых "Как мы перешли с C++ на Java, чтобы снизить сложность".
SmInc, холивар начали вы с абсурдного заявления, что на Java не пишут сервера. Я вам привёл примеры обратного, вы тут же скатились до аргументации "иди гуляй".
Вот например, xmpp-сервер OpenFire он корпоративный? А сервер контроля IoT-устройств Blynk корпоративный? Сервера Майнкрафта корпоративные? Я это могу дооолго продолжать.
И не надо говорить, что это ужасно сложно
Не буду. Замечу только, что на Java всё равно проще.
Надо просто уметь писать.
На Сях работаю с 2000-го, на Java с 2002-го. Умею. Могу сравнивать.
А самописные пишут на том что работает побыстрее - C++, например.
На Java можно писать очень быстрые вещи. Надо просто уметь ;) Уже упомянутый Blynk способен обрабатывать без малого миллион запросов в секунду, работая на VPS за $20. У Одноклассников платформа на средних серваках (4 ядра и до 48 гигов памяти) способна обрабатывать по 40k запросов в секунду. У Netflix EC2-инстанс класса xlarge способен прокачивать 38 гигабит трафика через одновременно удерживаемые 10k соединений.
l4m3r, может и есть какие-то corner cases, в которых без контейнеров никак. Типа наличия двух проектов, которые требуют разных конфликтующих версий какой-то библиотеки, причём обязательно на уровне системы. Но такой хлам ещё встретить надо. В обыденной жизни потребности в контейнерах нет.
l4m3r, да, запускаю по мере надобности. В том числе брокеры очередей, если в том есть потребность. Не вижу ничего страшного в том, чтобы набрать три команды в консоли. Тем более, что эта проблема легко решается shell-скриптом\батником. Крон в системе и так есть. Правда, не понимаю, зачем он может понадобиться на этапе разработки.
l4m3r, использование контейнеров для изоляции окружений разработки имеет смысл, если вы ведёте целую кучу проектов, в каждом окружение разное и изоляцию не предоставляет экосистема используемой платформы. Достаточно редкое явление, свойственное обычно для фрилансера-многостаночника. Впрочем, я как раз сейчас фрилансер-многостаночник и не испытываю никаких проблем с тем, чтобы без всяких там контейнеров запустить в нужный момент нужную СУБД или движок полнотекстового поиска.
Для использования контейнеров в проде причин ещё меньше. Если у вас пачка автоматически масштабируемых микросервисов, крутящихся на AWS, то контейнеры - нужный инструмент. Если один экземпляр монолита на одном хосте, то контейнеры - это дополнительная работа и дополнительная точка отказа.