摘要:
分布式锁:满足分布式系统或集群模式下多进程可见并且互斥的锁。 分布式锁的两个基本特征: 多线程(进程)可见(读写) 互斥 还应具备的特征: 高可用:不能挂机 高性能:读写要快 安全性:不能出现死锁 实现方式 主要有以下三种: 其中,MySQL 的实现成本相对最低、Redis 性能最高、Zookeep 阅读全文
摘要:
秒杀业务的核心流程是:判断日期和库存、扣减库存、创建订单 如下图: 注意,秒杀库存信息和商品信息最好是独立的两张表,不要放在一起影响性能。 @Resource private ISeckillVoucherService seckillVoucherService; @Resource priv 阅读全文
摘要:
本学期我们学习了软件需求这门课程,了解关于需求分析的相关知识,在软件开发过程中,软件需求是第一步,同时也是最重要的一步,当我们找到了用户真正的需求,在开发过程中会达到事半功倍的效果,阅读了《用户故事与敏捷方法》这本书,在这本书中详细的介绍了用户故事与敏捷开发方法的结合,找到真正适合用户的,有价值的需 阅读全文
摘要:
1. conda --version #查看conda版本,验证是否安装2. conda update conda #更新至最新版本,也会更新其它相关包3. conda update --all #更新所有包4. conda update package_name #更新指定的包5. conda c 阅读全文
摘要:
介绍 为什么需要分布式全局 ID 生成器? 对于订单这种数据,数据库自增的规律性太明显,会暴露一些信息(比如根据昨日和今日的订单号差值看出销量) 数据量过大时,不同表的 id 分别自增,容易出现 id 冲突 分布式全局 ID 生成应满足的特点: 唯一:整个系统每个 id 都是唯一的 递增:虽然不连续 阅读全文
摘要:
缓存雪崩 缓存雪崩是指在同一时段大量的缓存key同时失效或者Redis服务宕机,导致大量请求到达数据库,带来巨大压力。 解决思路: 1.不让key同时失效 2.尽量不让Redis宕机 具体解决方案: 缓存击穿 又叫热点key失效: 两种解决方案: 1.互斥锁:只有一个线程会负责缓存重建,其余线程拿不 阅读全文
摘要:
今天,我了解到了模块化软件构造的最基本知识。 阅读全文
摘要:
今天学习了mongodb数据库的使用,并且学会了对其进行简单的创建数据库以及创建数据表的操作,然后学会了简单的增删改查,并且用Java进行连接。同时进一步了解了企业erp,并 找了相关的代码进测试学习。 阅读全文