Size: a a a

Teamlead Bootcamp

2021 April 08

u

unkmas in Teamlead Bootcamp
Ну ситимобил сложно считать - он совместный, остальное - полностью свои продукты
источник

PD

Phil Delgyado in Teamlead Bootcamp
Я смотрел статистику по MRG, как по группе. Одноклассники точно там, Delivery тоже (в активах точно)
источник

PD

Phil Delgyado in Teamlead Bootcamp
Открой wiki и смотри
источник

PD

Phil Delgyado in Teamlead Bootcamp
Крупная, да, тут не поспоришь.
источник

u

unkmas in Teamlead Bootcamp
Delivery скорее всего нет, там выручка по ним вроде не консолидированна в отчётах
источник

PD

Phil Delgyado in Teamlead Bootcamp
Хм, 100% в собственности, по идее должна консолидироваться.
источник

SG

Sergei Guselnikov in Teamlead Bootcamp
самая большая газпром
источник

I

Ivan in Teamlead Bootcamp
Ну сложнее, требует привычки, но может эффективнее.
источник
2021 April 12

DS

Daniyar S in Teamlead Bootcamp
Выкатили в опенсорс одну внутреннюю утилиту. Асинхронный фреймворк для быстрого создания сервисов общающихся через RabbitMQ. Если кому будет полезна - будем рады.

https://github.com/alem-research/mela
источник

SP

Sergey Protko in Teamlead Bootcamp
источник

DS

Daniyar S in Teamlead Bootcamp
Это к чему?
источник

SP

Sergey Protko in Teamlead Bootcamp
я не хочу показаться грубым но... а то к чему было? А так может будет польза от готового решения с теми же целями (удобно делать сервисы с pub/sub и сервис энвоуком). Может быть поможет вам отказаться от велосипедов
источник

DS

Daniyar S in Teamlead Bootcamp
Выкатили в опенсорс потенциально полезную утилиту. Решил поделиться вот.

Ну делать велосипед или не делать - нам виднее. Нам на нём ездить ещё.

Если говорить про готовые аналогичные решения, то ближе всего будет Celery, но абсолютно точно не dapr.

Однако, Celery не асинхронное. Нам же важна асинхронность.
источник

SP

Sergey Protko in Teamlead Bootcamp
Celery это task queue, то есть оч узкая штука. Dapr в целом это "именно то" просто больше по юзкейсам. Это скорее "кое как" можно с nservicebus сравнить в плане возможностей, только нет ограничений на каком языке у тебя приложение.

Опять же, писать свой message bus это весело, но не нужно...
источник

PD

Phil Delgyado in Teamlead Bootcamp
Хм, а что из коробки в RabbitMQ не хватает для task queue или вообще для взаимодействия между сервисами? Т.е. зачем что-то еще прикручивать?
источник

DS

Daniyar S in Teamlead Bootcamp
Всего хватает. Я не понимаю Сергея, если честно. Celery "прячет" от разработчика всё, что касается общения с рэббитом (или с другим брокером), и позволяет разработчику просто писать бизнес-логику. Точно для этой же цели мы написали Mela.

Грубо говоря, если взять просто pika или даже kombu, то код конечного сервиса будет содержать примерно 150-200 служебных строк, описывающих взаимодействие с реббитом. При этом у нас около 100 таких сервисов. Иногда бывает что там бизнес-логики на пару строк буквально.

Также систематически возникают проблемы с вариативностью. Из-за того, что сервисы пишутся разными людьми в разное время - эта самая "служебная часть", несмотря на то, что она одинакова во всех сервисах, реализовывается очень по-разному. Кроме того, бизнес-логику от этой служебной части довольно сложно отделить. То есть, чтобы понять что происходит в каком-то сервисе, тебе нужно прочитать строк 200 кода, в каждом сервисе ещё и написанного чуть-чуть по-своему.

Вот эту проблему как раз и решаем: прячем служебную часть сервисов внутрь фреймворка, а на верхнем уровне оставляем чистую бизнес-логику.
источник

PD

Phil Delgyado in Teamlead Bootcamp
Хм, то есть это это просто библиотека поверх RabbitMQ API?
Не совсем понимаю, где там место для framework'а
источник

PD

Phil Delgyado in Teamlead Bootcamp
Но где там место для opensource - особенности-то у всех скорее всего свои и эти 100 строк стоит написать один раз в компании и все.
Мне даже странно, что у вас в каждом сервисе это писали по разному, точно нет проблем с коммуникациями внутри?
источник

SP

Sergey Protko in Teamlead Bootcamp
а завтра к этой либке надо будет прикрутить какой opentracing. А после завтра надо будет заморочаться с авториацией и как роутинг сообщений между сервисами мутить. А потом кто-то захочет писать сервисы не на питоне.
источник

SP

Sergey Protko in Teamlead Bootcamp
p.s. у меня у самого есть такие велосипеды для "общения сервисов" и по этой причине я ищу способы уйти от этого за счет тулов типа Dapr которые по настоящему комуникации и бойлерплейт скрывают
источник