1、kafka在高并发的情况下,如何避免消息丢失和消息重复? 消息丢失解决方案: 首先对kafka进行限速, 其次启用重试机制,重试间隔时间设置长一些,最后Kafka设置acks=all,即需要相应的所有处于ISR的分区都确认收到该消息后,才算发送成功 消息重复解决方案: 消息可以使用唯一id标识 ...
分类:
其他好文 时间:
2019-01-24 11:51:44
阅读次数:
487
一、GTID的概念1、全局事务标识:globaltransactionidentifiers。2、GTID是一个事务一一对应,并且全局唯一ID。3、一个GTID在一个服务器上只执行一次,避免重复执行导致数据混乱或者主从不一致。4、GTID用来代替传统复制方法,不再使用MASTER_LOG_FILE+MASTER_LOG_POS开启复制。而是使用MASTER_AUTO_POSTION=1的方式开始复
分类:
数据库 时间:
2019-01-21 22:13:57
阅读次数:
229
为什么要多域部署? 从稳定性上:当业务不断发展后,会面临系统稳定性、容灾、业务隔离等多种问题 从业务需求上:国际化应用往往需要全球化部署 数据库的面临的问题 多域部署时,往往会伴随着数据的迁移、双写等问题 数据如何同步?分库分表场景下如何生成全局唯一id? 我们的场景是什么? 我们目前在单元A(中心 ...
分类:
其他好文 时间:
2019-01-14 21:26:54
阅读次数:
206
使用版本4:uuid4就可以了 UUID4缺点:糟糕的随机数发生器使得它更有可能发生碰撞,但是概率真的很小 UUID1缺点:暴露隐私 If all you want is a unique ID, you should probably call uuid1() or uuid4(). Note t ...
分类:
编程语言 时间:
2019-01-12 00:27:22
阅读次数:
221
原文:高并发之 - 全局有序唯一id Snowflake 应用实战前言 本篇主要介绍高并发算法Snowflake是怎么应用到实战项目中的。 对于怎么理解Snowflake算法,大家可以从网上搜索‘Snowflake’,大量资源可供查看,这里就不一一详诉,这里主要介绍怎么实战应用。 对于不理解的,可以... ...
分类:
其他好文 时间:
2019-01-04 00:20:24
阅读次数:
303
分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。 有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。 ...
分类:
其他好文 时间:
2019-01-03 13:58:07
阅读次数:
241
概述 分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。 有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。 而twitter的snowflake解决了这种需 ...
分类:
编程语言 时间:
2018-12-19 15:37:48
阅读次数:
214
看了GitHub上的两个生成唯一ID的算法程序(一个出自百度,一个出自美团),打算运行着试试看,至于原理什么的文档上讲得很详细了,此处不再一一粘贴了,此处只演示代码 https://github.com/baidu/uid-generator https://github.com/zhuzhong/ ...
分类:
编程语言 时间:
2018-12-06 12:05:39
阅读次数:
145
基于工作需要,最近开发一个远程控制桌面项目。 基本对象:被控制端,控制端,中转服务器结构。 被控制端称为Server提供桌面图像,接受他人远程输入控制。 控制端主要根据被控制端ID发起控制,可远程控制桌面进行常规操作(鼠标,键盘,文件等)。 中转报务器 主要提供每台被控制端的唯一ID(可根据被控制端 ...
数据库架构设计 - 高可用,度性能,一致性,扩展性 - 数据冗余带来一致性问题 单库->分片(路由,范围,哈希,路由服务)->分片+分组 冗余读库,写库单点 冗余写库-双写可能冲突,两个写库不同的初始值相同的补偿来避免,业务层自己生成唯一ID避免冲突 双主当主从用,两个主只有一个主提供服务(读+写) ...
分类:
其他好文 时间:
2018-11-26 20:22:53
阅读次数:
212