![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
分布式
三千大千世界
这个作者很懒,什么都没留下…
展开
-
shardingsphere示例配置
shardingsphere 版本:4.0.1 分表配置: spring.shardingsphere.datasource.names=ds spring.shardingsphere.datasource.ds.type=com.alibaba.druid.pool.DruidDataSource spring.shardingsphere.datasource.ds.driver-class-name=com.mysql.jdbc.Driver spring.shardingsphere.dat原创 2021-08-12 16:42:11 · 1565 阅读 · 0 评论 -
延时队列实现
自推荐一个分布式延时消息实现: https://github.com/Roronoa-Zoro/delay-server原创 2021-03-29 09:52:20 · 69 阅读 · 0 评论 -
生成唯一ID方案总结
方案1. snowflake算法,这个算法应该大家都不陌生,使用的也比较广泛。 缺点:硬要找个缺点的话,因为这个算法常用的模式就是datacenterID,workerId,时间戳,然后自增序列,是一套跟事件相关的算法,有年限的限制。当然,也许等过个几十年,更高级的算法就出来了,这也不是事。 方案2. 基于redis的自增ID。 缺点:ID会重复。例如:当前线程对ID自增之后,这个新值还没有复制到slave服务器,然后master服务器就挂了,这时候,如果发生主从切换,那么再次对ID自增,就.原创 2020-07-20 22:05:45 · 506 阅读 · 0 评论 -
flume 用户指南 - part 1
flume用户指南翻译 2016-05-25 23:01:55 · 445 阅读 · 0 评论 -
dubbo异步同步调用混合使用问题
个人笔记。 先看下面的case 我们假设 Assume1: ServiceB返回字符串”ServiceB”, Assume2: ServiceC返回字符串”ServiceC”, ServiceA 拼接字符串”ServiceA”,加上assume1 和 assume2 的返回结果 预期:client获得“ServiceA ServiceB ServiceC” 实际:cl...原创 2016-05-19 17:46:42 · 6721 阅读 · 0 评论 -
flume 用户指南 - part 3
Flume Sinks hdfs sink 略 (等以后用了在说吧) hive sink 略(等以后用了在说吧) Logger Sink 记录info级别的事件。测试或debug使用。 Property Name Default Description channel – type – T翻译 2016-05-26 14:54:37 · 286 阅读 · 0 评论 -
flume 用户指南 - part 2
Flume Source Avro Source 监听avro端口,从外部avro client接收事件。当前一个agent的sink是avro类型时,可以构建多级agent。加粗的是必选熟悉。 Property Name Default Description channels – type –翻译 2016-05-26 14:31:01 · 737 阅读 · 0 评论 -
基于消息的分布式事务简单方案
System-A为主系统 流程描述 1. system-A执行本地事务, 发送msg到redis,此时msg状态为unknown(这里全是unknown状态的msg,消息需要持久化,只有msg存在,即使system-b处理失败也可以有其他方式处理,一般是人工) 2.1本地事务提交 2.1.1 更改redis的msg状态为提交,从老的内存队列删除,并放入另一个内存队列(这里原创 2016-05-30 16:50:22 · 1911 阅读 · 0 评论 -
如何更好地学习dubbo源代码
dubbo转载 2016-06-08 13:39:37 · 439 阅读 · 0 评论 -
dubbo registry 基本流程
dubbo原创 2016-06-08 18:38:20 · 3983 阅读 · 0 评论 -
redisson锁笔记
redisson version:2.1.4 去查看源码的原因: 以前简单理解的基于redis的锁,就是去setnx一个key,然后设置一个过期时间。多线程的时候,谁能set成功,说明谁获取锁成功。 然后解锁操作就是删除之前的key或者等待过期。 现在用了下redisson的锁,开始也以为是这样的,认为其他线程也能强制解锁。结果测试发现不行。 源码: 获取锁 <span...原创 2016-09-03 12:39:53 · 747 阅读 · 0 评论 -
保证分布式系统数据一致性的6种方案(转载)
分布式系统转载 2016-11-25 14:35:28 · 991 阅读 · 0 评论 -
初识kafka
个人笔记。 Kafka只提供了topic,如果想实现queue的模式,那么需要通过consumergroup的方式。如果所有的consumer都在一个group,那么这个topic的消息只会被这个group里面的一个consumer消费。 如果想实现发布-订阅的模式,则每个consumer设置不同的group即可。 消息的分区有序 每个消费者对应一个分区,则每个分区的消费原创 2016-05-30 11:06:52 · 380 阅读 · 0 评论 -
上线使用canal遇到的问题
------- 基础环境 ------- canal- 1.1.3 mysql - 5.6 ------- 发生的问题 ------ 1。发生的错误 canal启动,创建数据库的脚本为 CREATE DATABASE /*!32312 IF NOT EXISTS*/`db_name` /*!40100 DEFAULT CHARACTER SET utf8mb4 */ canal启动报错,...原创 2019-06-28 09:14:36 · 5970 阅读 · 5 评论 -
dubbo 同步调用
个人笔记。 测试用例基于dubbo协议。同步调用。 具体调用过程通过debug可以看到。 最终是通过NettyChannel发送请求,具体调用org.jboss.netty.channel.Channel.write(Object)方法。 dubbo把返回值封装成了DefaultFuture,里面包含一个response. 返回值的赋值过程。 有个NettyHandle原创 2015-10-25 15:49:24 · 1545 阅读 · 0 评论