JAVA业务逻辑
团子95
这个作者很懒,什么都没留下…
展开
-
主键生成策略
1. 全局唯一性 2. 趋势递增 InnoDB引擎使用的是聚集索引,尽量使用有序的索引保证写入性能。 Tip1:聚集索引:数据库表行中数据的物理顺序与键值的逻辑顺序相同,一个表只能有一个聚集索引,它有更快的检索速度。 3. 单调递增 保证下一个ID一定大于上一个ID,如事务号版本、IM增量消息、排序等特殊需求。 4. 信息安全 需ID无规则,不规则。 除对ID号码自身的要求,业务...原创 2019-12-19 15:46:49 · 109 阅读 · 0 评论 -
Synchronized用法
类锁与实例锁不互相阻塞。但相同的类锁,相同的当前实例锁,相同的对象锁会互相阻塞。 1. 同步普通方法: 在方法上加,最简单,但是只对单例生效;即同一个实例,只有一个线程能获取锁进入这个方法。 private synchronized void synchronizedMethod(){} 2. 同步静态方法: 不管有多少类实例,同时只有一个线程能获取锁进入这个方法。 它是类级别的锁,一旦...原创 2019-12-19 15:26:19 · 150 阅读 · 0 评论 -
关于减库存
下单减库存; 支付减库存; 预扣库存:先扣库存,异步生成订单; 优化点: 库存存在哪里? 怎么保证高并发下,正确的扣库存,还能快速响应用户的请求? 把库存平均放到若干台服务器上: 在高并发情况下,不能保证高可用:万一有机器宕机,订单会少卖; 所以要对总订单做统一管理,即容错方案; 方案 服务在本地减库存后,还要在远程(Redis)统一减库存; 有了统一减库存的操作,...原创 2019-12-16 19:03:23 · 314 阅读 · 0 评论