S02E05 Clojure, React, JVM vs Erlang VM, интервью с Иваном Глушковым
http://eax.me/eaxcast-s02e05/
- Названные базюльки: Couchbase, DynamoDB; - Облачные хостинги: Amazon, Joyent, DigitalOcean, Rackspace; - Бест практис по использованию DynamoDB от Амазона, плюс тут еще есть слайды [PDF] на эту тему; - Доклад «That’s Billion with a B: Scaling to the Next Level at WhatsApp» с Erlang Factory 2014, видео и слайды [PDF]; - Ваня пишет звук этой внешней звуковухой и этим микрофоном;
Александр: Всем привет. EaxCast, первый сезон, пятый выпуск. Небольшое объявление. Вы жаловались на затянутые введения и короткие выпуски. Мы все переосмыслили. Теперь введения станут короче, а выпуски длиннее. Меня зовут Александр, это — Валерий. Валерий: Привет! А: И у нас в гостях специальный гость, широчайше известный в узких кругах Иван Глушков. Привет, Вань. Иван: Ты меня сейчас перехвалишь. Привет, привет. А: Расскажи, пожалуйста, немного о себе специально для тех наших слушателей, которые не входят в круги, в которых ты широчайше известен. И: Я закончил МФТИ. Учился там не с самого начала, я сперва начинал в далекой республике Марий Эл, потом перевелся в МФТИ, закончил его и какое-то время работал над процессорами «Эльбрус», делал компиляторы для семейства процессоров «Эльбрус» порядка шести-семи лет. Потом меня Лев Валкин позвал в проект Echo, и я с удовольствием откликнулся на предложение. Я давно хотел заниматься этой областью, и переехал в Ульяновск из Москвы, и сейчас уже больше четырех лет работаю. Пишу на Erlang в основном, делаю всякие функциональщины, OCaml, Haskell тоже трогаю иногда. То есть, в целом полностью поменял образ мыслей и свои инструменты, за исключением Vim’а, пожалуй. Как-то так. А: Vim, отлично. Собралось три вимера. В: Три вимараста. А: Как там, в Ульяновске? Я никогда не был, как там погода сейчас? И: Ульяновск — удивительный город в том плане, что… Я живу на высоком берегу, на правом, и здесь всегда есть ветер. Мне это вообще выносит мозг, я не могу жить зимой, например, минус двадцать и ветер, летом плюс двадцать и ветер, весной сумрачно, непонятная погода и ветер, и все время ветер… Так что в целом… в целом, все очень хорошо, но есть свои минусы, конечно, везде. А: Скажи, пожалуйста, с какими базами данных тебе сейчас приходится работать? И: Прямо сейчас мы пользуемся только PostgreSQL. Какое-то время назад я использовал MySQL, трогал руками множество всяких-разных и не скажу, что я имею в них большой опыт. Максимум, что я делаю по PostgreSQL, — это прикрутить какую-нибудь табличку, допилить какие-нибудь индексы, посмотреть, почему там что-то немножко не оптимально, но у нас есть специалисты более крутые в Постгре, и я поэтому туда сильно не лажу. То есть, если возникают какие-то серьезные затыки, и я не понимаю, в чем дело, я не лезу на StockOverflow, я просто иду к ребятам, и мы начинаем вместе мозговать над проблемой. А: Просто очень странно, мне казалось, что в «Эхе» должно быть обязательно какой-то key-value, Riak, или хотя бы Memcached. Неужели обходитесь? И: Я их не называю как таковыми базами данных, я их называю больше как Key Value решения, поэтому мы расходимся немножко в номенклатуре. Да, у нас, конечно же, есть и Риак, мы сейчас попытаемся прикручивать DynamoDB амазоновскую, у нас есть мемкеш, Membase — точнее, уже Couchbase, и вроде все. B: А почему вдруг решили взяться за DynamoDB? И: Здесь есть некоторые тонкости. Во-первых, меньше надо усилий на поддержку. В случае, к примеру, с Риаком… Нам Риак, в целом, нравится, он — стабильная, понятная, хорошая система, но бывали случаи, когда у нас, к примеру, нужно срочно добавить двадцать нод в связи с тем, что мы ожидаем возрастания нагрузки, а это не так просто, когда у вас очень большая база. В случае динамо ты просто прикручиваешь там счетчик, увеличиваешь, говоришь, что я теперь большее количество чтений и записей буду делать, и все, больше об этом даже не беспокоишься. В: Я просто на него слышал наезды как раз по поводу того, что очень тяжело иногда прогнозировать, сколько тебе вот этих реквест баджет понадобится, когда у тебя при