Полный текст
Архитектура MMO: источник истины, потоки данных, узкие места I/O и их устранениеЗадержки, состояния гонки, синхронность и доступность — это то, с чем сталкивается любой архитектор ПО изо дня в день. Тем не менее почти в каждом случае решением оказывается пересмотр функциональных и технических требований, так что мы редко прибегаем к проектированию полных решений ввиду их сложности.Но мир многопользовательских игр устроен немного иначе. Пространственная сложность в нём устремляется к бесконечности, а временну́ю мы стремимся сократить до минимума. Мы работаем со множеством строго детерминированных модулей, которые можем легко обслуживать и развёртывать параллельно. И рано или поздно мы сталкиваемся со злом, которое кроется за кулисами любой MMO — проблемами ввода-вывода в базе данных.Основная цель этой статьи — изучить ограничения, которые возникают на уровне ввода-вывода данных при проектировании MMO-архитектур, взаимодействия системы с данными, вытекающие из всего этого проблемы и их решения.