我们正在构建订单处理系统。我们有一个处理服务器集群。我们需要为订单分配可读的编号(例如 ORD-000001、ORD-000002)。
主要问题是我们很难实现系统范围的锁。我正在考虑锁定过期的模式。但是想到的一切还是有瓶颈的。
我们正在接近 DDD,因此很难直接访问数据库。我们正在使用 NHibernate。我们使用 UnitOfWork。
请帮助一些想法。每个想法都将是有价值的。有什么链接可以阅读有关主题的内容吗?
更新:我想强调,我需要序列号。因此不能使用高/低算法。此时我正在调查场景
- 我分配“可能很好的数字”;
- 推送到数据库;
- 如果失败,尝试分配另一个“可能很好的数字”;
- 如果成功,则提交;
但我找不到合适的技术。