Превратности именования микросервисов

Превратности именования микросервисов

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

58e952ea302f1fa452f69c9d8204a8bc?s=128

Vladimir Plizga

October 26, 2019
Tweet

Transcript

  1. Превратности именования микросервисов

  2. Я Владимир Плизгá разработчик ЦФТ Привет! 2

  3. Контекст Зачем вообще об этом думать 1 3

  4. “ There are only two hard things in Computer Science:

    cache invalidation and naming things. — Phil Karlton 4
  5. С приходом микросервисов проблема становится ещё острее 5

  6. Модуль в монолите ◉ Не важен при разработке ◉ Не

    виден в тестировании ◉ Не интересен при релизе Потому что жизненный цикл стал совсем другим Микросервис ◉ Разрабатывается отдельно ◉ Тестируется отдельно ◉ Выносится отдельно 6
  7. Вместо disclaimer’а ◉ Речь не о декомпозиции а об именовании

    ◉ Опыт одной команды ◉ Субъективщина и вкусовщина 7
  8. Подходы к именованию На примерах наших и не только 2

    8
  9. Классика Старый добрый дедовский способ 9

  10. Классический подход ◉ Примерно как классы в коде ◉ По

    лучшим практикам ◉ ◉ ◉ 10
  11. Классический подход ➕ Легко понять ❓ Легко запомнить ➖ Длинные

    трудно писать трудно произносить не везде входят 11
  12. Людям свойственно сокращать Не потому что мы ленивые А потому

    что разумные 12
  13. Классический подход ➕ Легко понять ❓ Легко запомнить ➖ Длинные

    трудно писать трудно произносить не везде входят 13
  14. Сокращение Триумф мыслительной деятельности гуманоида 14

  15. Сокращ.-я ➕ Легко писать ❓ Легко произносить ➖ Трудно запомнить

    ➖ Трудно понять нужен справочник 15
  16. Чтобы легко понять и запомнить, нужна ассоциация… 16

  17. Ассоциация Мечта домохозяйки 17

  18. Ассоциация ➕ Легко запомнить ➕ Легко писать ➕ Легко произносить

    ❓ Легко понять ➖ Трудно найти ➖ Можно пересечься 18
  19. Производная ассоциация 19

  20. Производная ассоциация 20 ◉ Опирается на базовое понятие ◉ Имеет

    созвучный ударный слог ◉ Не обязательно существующее слово ◉ В остальном это ассоциация сокращение
  21. Производная ассоциация ➕ Легко запомнить ➕ Легко писать ➕ Легко

    произносить ❓ Легко понять ➖ Трудно найти ➕ Интересно искать 21
  22. Демократия — наихудшая форма правления, если не считать всех остальных.

    У. Черчилль 22 “
  23. 23

  24. Осведомлённость Участники процесса заранее узнают с каким микросервисом им предстоит

    работать и могут на это повлиять Коллективный выбор решает сразу 2 задачи Генерация идей В мозгоштурме и спорах появляются поистине клёвые варианты имён 24
  25. 25

  26. 26 Однако С таким подходом важно не впадать в крайность

    Здравый смысл никто не отменял
  27. И чё? Резюме и выводы 3 27

  28. Чек-лист по выбору имён Лаконичность Желательно не больше букв или

    слогов Иначе все равно сократят Запоминаемость Хорошо как в имени есть крючок для построения ассоциации Произносимость Чем меньше подряд идущих согласных тем лучше Записываемость Двойные гласные и согласные наверняка станут причиной опечаток Транслитерируемость В чатах лень менять раскладку поэтому имя точно будут писать на русском Логичность Легко превратить имя в ребус куда сложнее сделать его понятным 28
  29. Основные выводы ◉ Имена микросервисов для людей ◉ Кто нибудь

    всегда недоволен ◉ Логичность понятность не панацея 29
  30. «Как корабль назовёшь, так он и поплывёт» 30 “

  31. Время для вопросов Владимир Плизг ◉ ◉ Спасибо! 31