Обновить

Комментарии 6

Уточню, что пункт про очередь и асинхронщину при десятикратной нагрузке имеет смысл только если нагрузка пиковая

olku, спасибо за уточнение! Как считаете, каким ещё примером можно дополнить этот пункт? Возможно, встречали в своей практике, видели на проектах.

Хм, ожидал от вас, я в бигтех не ходил.

Асинхронное взаимодействие интересно.

Может быть полезно, если мы явно разделяем нашу функциональность по доменам. И хотим избежать синхронного моментального взаимодействия. Возможно нет таких требований. Возможны те самые пики.

Как по мне, асинхронщина не помогает справляться с нагрузкой. Она помогает сохранить доступность системы при увеличении нагрузки. От того, что вы передали тяжелую задачу в очередь, быстрее она не обработается. Но при этом мы можем принять еще десяток, сотню или тысячу таких задач и поставить в очередь, потому что наша система остается доступной. А чтобы эту очередь разгребать при высоких нагрузках, придется горизонтально масштабироваться при пиках. Т.е. пункты 3, 4 и 5 очень тесно связаны.

Интересное наблюдение. И хороший лайфхак для аргументации на System Design Собеседование. Такой комбинацией горизонтальное масштабирование + асинхронное взаимодействие можно ответить при возможном вопросе интервьюера: "А что если нагрузка возрастёт в 10x раз?".

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации