Здравствуйте, gandjustas, Вы писали:
G>напиши как сделать резерв заказа, чтобы:
G>1) не продать больше чем есть на складе
G>2) если остатка недостаточно для резерве, то состояние заказа не меняется
G>3) все это должно переживать внезапные отключения клиента, падения серверов и прочие катаклизмы
С такими формулировками системы не проектируют.

Надо перечислить какие именно катаклизмы и как Система должна переживать, прикинуть стоимость и сроки разработки, и уже потом принимать решения.
G>4) так чтобы это было эффективнее монобазы (в любом смысле)
Это бессмысленное и бесполезное занятие.
Переход к МСА имеет смысл только если есть существенные нефункциональные требования, которые в монолите невозможно или трудно реализовать.
Поэтому имеет смысл только сравнение конкретных методов реализации конкретных требований.