Эволюция приходит в большинство систем. Хорошо, если заранее подготовились к большой пользовательской нагрузке и соответствующему количеству данных: были собраны нефункциональные требования, создано архитектурное решение, проводился контроль над разработкой.
Но часто бывают ситуации, когда система изначально планировалась для малого количества пользователей и постепенно перешла в состояние перегруженной. Иными словами, была поставлена перед фактом резкого роста. Такая система начинает терять репутацию у пользователей – бизнес закипает, команда выгорает.
Во время доклада рассматриваем:
- банальные ошибки, которые совершают при разработке решений в рамках маленьких систем;
- простые действия для повышения устойчивости решения к увеличению количества данных;
- возможные направления для быстрой оптимизации системы в противодействие перегрузке;
- основные инструменты оптимизации.
Опираемся на реальные системы и сделаем упор на взаимодействие между Java и хранилищем данных.