java多线程    Java入门    vsftp    ftp    linux配置    centos    FRP教程    HBase    Html5缓存    webp    zabbix    分布式    neo4j图数据库    

游戏上瘾如何戒掉游戏

Rocket MQ队列学习笔记

https://www.bilibili.com/video/BV1L4411y7mn?p=24 1.如何保证高可用 2.消息丢失怎么办,重复消费问题,消息顺序如何保证 3.消息一致性,A成功传给BCD D挂了,如何一致   1.基本消息例子 默认是负载均衡模式,还有一个广播模式 P24.张三:创建订单,扣减库存,付款订单,完成订单 Broker默认会把消息依次放入多个队列 消费者多线程的同时消费多个消 More


分库分表的方式和方案

https://www.bilibili.com/video/BV1jJ411M78w 四种方式 垂直分库,水平分库,垂直分表,水平分表 垂直分表 常用的一个表,不常用的一个表,例子:商品数据,名称价格一个表,详情说明另一个表 好处:避免IO争抢,比如修改商品描述行锁,减少锁表概念 2.充分发挥热门数据操作效率 为什么大字段IO效率低 数据量本身大,需要更长读取时间 跨页,页是数据库 More


分布式事务解决方案学习

结尾有总结: 第一部分:分布式事务的需求来源 传统本地事务的ACID原则 原子性(Atomicity)原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。 一致性(Consistency)事务前后数据的完整性必须保持一致。比如A有500B有500,A转账给B 500 最终两人金额总和依然为1000才对 隔离性(Isolation)事务的隔离性是多个用户并发访问数 More


红黑树插入旋转四种情况学习

完美测试地址 https://www.cs.usfca.edu/~galles/visualization/RedBlack.html 插入四种情况。默认新插入都是红色 1.Z是根节点 Z变色为黑色 2.Z的叔叔是红色 Z的父亲,祖父,叔叔 变色, 完美测试5,3,7,6 3.Z的叔叔是黑色,并局部呈现直线 3.1 旋转祖父,直线向右,向左旋,反过来向右 3.2 Z原来的父亲和祖父 More


MYSQL索引原理深入学习

1.索引的本质是什么 2.MYSQL为何多数用B+Tree,而不是其他 3. BTree的特点 4. B+Tree的特点 4.1 为何B+Tree叶子节点多了一个指针 4.2 为什么B+Tree上层节点不存储数据 5. 两种不同的索引分别存储文件什么样 6. Innodb索引实现原理 6.1 为什么innodb表必须有主键,并推荐【整型自增】 6.2 为什么非主键索引结构叶子节点存储的是主键 More


MQ消息队列三个典型应用场景

MQ消息队列三个典型的应用场景 异步处理 使用前:注册--->发邮件--->发短信 如果连续处理,每个动作为50ms,那么一共花费150ms 使用后:注册--->MQ队列 MQ队列-->发邮件 (异步) MQ队列--->发短信 (异步) 用MQ队列服务缩短为55ms,注册50ms,写入MQ 5ms 应用解耦 使用前:订单系统--->库存系统 下单后减去库存,订单系统会依赖库存系统稳定性 使 More


大型电商商品过亿流量详情页设计架构

1. 详情页的需求 1.多模板 2.商品详情页 a1.时效性低的数据 标题,图片,属性,商品介绍,规格参数 a2.时效性高的数据 价格,促销,库存,广告词 2. 访问特点 1.离散访问,热点数据少 2.活动时期流量暴增 商品设计思路图 触发路径 商品管理员修改一个商品的详情 商品服务把这个信息发送给MQ队列 监听MQ队列的数据缓存服务,更新这个商品的详情缓 More


redisson分布式锁原理学习笔记整理

整理完毕的笔记,收获很大 视频 https://www.bilibili.com/video/av667586995/ 提交订单 1. Redis里查库存-库存充足-扣减成功-更新库存 并发测试三单,从50变成49(其实为47),库存会超卖 2. synchroinzed(productID) 上锁 单机可以,多机器就拉倒了 synchroinzed JVM级别的锁 3. 分布式锁 锁标记productID,多方机器共享锁标记 More


Java中wait方法和sleep的不同之处

章节1:Java中wait方法和sleep的不同之处 区别1: a.wait来自Object方法 b.sleep来自Thread方法 区别2: a.sleep 让当前方法休眠1000毫秒,休眠后自动醒来,不一定要是锁对象 b.wait 传入毫秒参数,效果和sleep方法相似,但是比较麻烦,wait方法必须由锁对象调用 锁对象必须存放在同步当中 (不建议wait(1000) )建议wait() More


电商秒杀系统设计

秒杀活动对稀缺或者特价的商品进行定时定量售卖,吸引成大量的消费者进行抢购,但又只有少部分消费者可以下单成功。因此,秒杀活动将在较短时间内产生比平时大数十倍,上百倍的页面访问流量和下单请求流量。 秒杀活动可以分为3个阶段: 秒杀前:用户不断刷新商品详情页,页面请求达到瞬时峰值。 秒杀开始:用户点击秒杀按钮,下单请求达到瞬时峰值。 秒 More