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


分布式事务解决方案学习

https://www.bilibili.com/video/BV1n7411R7WQ?p=1 第一部分:分布式事务的需求来源 传统本地事务的ACID原则 原子性(Atomicity) 原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。 一致性(Consistency) 事务前后数据的完整性必须保持一致。比如A有500B有500,A转账给B 500 最终两人金额总和依然为1000才对 隔离性( More


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

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


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

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


redis的分布式锁实现

总结: 单机互斥锁 1. SET KEY Value PX milliseconds NX SET 商品ID 线程ID PX 30000 NX 1.PX 防止锁过期,NX互斥 2.线程ID 记录下来,作为唯一值 3.释放锁验证value,不能让别人的线程,解了别人的锁。 2. 集群锁 RedLock 假设集群5个节点 P1.获取当前Unix时间,毫秒为单位 P2.依次从5台机器,相同的KEY 和 唯一性的Value请求锁,为每 More


CDN的理解

CDN 可以有效解决大规模网络流量问题,比如一天上亿PV了,本地集群也做了一主多从,但是主机器也给你搞崩溃了。如果一个IP只对了一个机器,那么这个机器一天上亿,一定崩 还好啊,客户访问的不是IP,是域名,一个域名可不是只能对应一个主机,一个域名可以对应很多主机 CDN简单的比方: CDN就是相当于遍布各个地方的仓储一样,打一个比方,如果你想以最快的速度 More


网站流量监测开源 Web 分析软件收集

月小升正在开发一套电商监测系统,发现市面上很难找到类似的开源系统,可能需求太小众。下面的开源系统,大家可以试试,以方便研究其机制。不过抱着怀疑的态度看这些系统比较好。月小升在使用pwiki的过程,就发现丢量比较严重。大约25%的丢量。也许是我配置错了什么,不过总要怀疑态度。没有绝对的精确监测,只能相对准确一些。GA是个良好的参考线,GA丢量很少 More


Java 连接Hbase代码 读取,写入,建库

开发工具:Eclipse, 三步 1.新建一个项目 2.把hbase安装下的lib的文件都拷贝进来 3.把lib目录下jar文件都引入 4.lib下的client-facing-thirdparty 目录下的jar也都引入 看图 package com.yue; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.*; import org.apache.hadoop.hbase.client.*; import java.io More


Hbase 使用场景及案例

Hbase特点 1. 高速写入:高速写入,对读取需求比较小。 2. 大数据:分布式存储,海量数据搞得定。不用担心无限增长的数据。 3. 可靠:写入的不是内存,是硬盘,高性能 4. 查询简单:不需要复杂查询条件来查询数据的应用,HBase只支持基于rowkey的查询,对于HBase来说,单条记录或者小范围的查询是可以接受的。 Hbase使用场景1:对象存储 我们知道不少的头 More