[需求]
订单附带一个序列号:序列号为当月第x单
********************
这个需求看似很简单,但随着系统复杂性以及并发量的增加,实现并不简单。
探究几种场景。
[无并发压力下单系统]
这种场景最简单,也是最容易误导开发以此为基础进行模型设计。此种系统下,甚至可以采取数据库层面的查询、约束等进行序列号生成。如果考虑到DB IO效率低,可以考虑放在内存,只要维护好序列即可。本身无并发压力,简单的处理线程安全问题即可。
(待补充)
[需求]
订单附带一个序列号:序列号为当月第x单
********************
这个需求看似很简单,但随着系统复杂性以及并发量的增加,实现并不简单。
探究几种场景。
[无并发压力下单系统]
这种场景最简单,也是最容易误导开发以此为基础进行模型设计。此种系统下,甚至可以采取数据库层面的查询、约束等进行序列号生成。如果考虑到DB IO效率低,可以考虑放在内存,只要维护好序列即可。本身无并发压力,简单的处理线程安全问题即可。
(待补充)