自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

转载 一文看懂怎么解决Maven依赖冲突问题

在本文中,我们将讲到如何处理Maven的依赖冲突不知道你在使用Maven时是否遇到过诸如"NoSuchMethodError"或"ClassNotFoundException"之类的问题,甚至发生这些问题的Java类你没都没有听说过。要搞清楚这里面的缘由,我们得学习Maven对依赖冲突的处理机制。Maven采用“最近获胜策略(nearest wins strategy)”的方式处理依赖冲突,即...

2019-08-20 17:33:11 4962 2

原创 分布式唯一ID生成系列(5)——Twitter的雪法算法Snowflake适合做分布式ID吗

介绍Snowflake算法SnowFlake算法是国际大公司Twitter的采用的一种生成分布式自增id的策略,这个算法产生的分布式id是足够我们我们中小公司在日常里面的使用了。我也是比较推荐这一种算法产生的分布式id的。算法snowflake的生成的分布式id结构组成部分算法snowflake生成id的结果是一个64bit大小的整数,它的结构如下图,这里我么来讲一下这个结构:首先因为w...

2019-08-14 09:50:41 1569

原创 分布式唯一ID生成系列(4)——Redis集群实现的分布式ID适合做分布式ID吗

首先是项目地址:https://github.com/maqiankun/distributed-id-redis-generator关于Redis集群生成分布式ID,这里要先了解redis使用lua脚本的时候的EVAL,EVALSHA命令:https://www.runoob.com/redis/scripting-eval.htmlhttps://www.runoob.com/redi...

2019-08-08 09:47:13 1050

原创 分布式唯一ID生成系列(3)——数据库自增ID机制适合做分布式ID吗

数据库自增ID机制原理介绍在分布式里面,数据库的自增ID机制的主要原理是:数据库自增ID和mysql数据库的replace_into()函数实现的。这里的replace数据库自增ID和mysql数据库的replace_into()函数实现的。这里的replace into跟insert功能类似,不同点在于:replace into首先尝试插入数据列表中,如果发现表中已经有此行数据(根据主键或唯一...

2019-08-07 10:07:42 1032

原创 分布式唯一ID生成系列(2)——UUID适合做分布式ID吗

UUID的生成策略:UUID的方式能生成一串唯一随机32位长度数据,它是无序的一串数据,按照开放软件基金会(OSF)制定的标准计算,UUID的生成用到了以太网卡地址、纳秒级时间、芯片ID码和许多可能的数字。UUID的底层是由一组32位数的16进制数字构成,是故 UUID 理论上的总数为 ,约等于 ,也就是说若每纳秒产生1百万个 UUID,要花100亿年才会将所有 UUID 用完(100亿年啊,地...

2019-08-06 09:10:28 1105

原创 分布式唯一ID生成系列(1)——为什么需要分布式ID以及分布式ID的业务需求

为什么需要分布式id生成系统在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识。如在美团点评的金融、支付、餐饮、酒店、猫眼电影等产品的系统中,数据日渐增长,对数据分库分表后需要有一个唯一ID来标识一条数据或消息,数据库的自增ID显然不能满足需求;特别一点的如订单、骑手、优惠券也都需要有唯一ID做标识。此时一个能够生成全局唯一ID的系统是非常必要的。概括下来,那业务系统对ID号的要求有哪些...

2019-08-05 16:01:34 2827

原创 大白话讲解分布式里面的Cap原则

什么叫做capCap分别指可用性,分区容错性,一致性分区容错性如下图中,G1 和 G2 是两台跨区的服务器。G1 向 G2 发送一条消息,G2 可能无法收到。系统设计的时候,必须考虑到这种情况。一般来说,分区容错无法避免,因此可以认为 CAP 的 P 总是成立。所以在cap原则里面,分区容错性是必须要有的一致性一致性的意思是,写操作之后的读操作,必须返回该修改后的值。举例来说,某条记录...

2019-08-02 09:37:39 5059 3

原创 Debug方式讲解Rabbitmq的自动ACK和手动ACK

介绍Rabbitmq的手动ACK和自动ACK当消息一旦被消费者接收,队列中的消息就会被删除。那么问题来了:RabbitMQ怎么知道消息被接收了呢?这就要通过消息确认机制(Acknowlege)来实现了。当消费者获取消息后,会向RabbitMQ发送回执ACK,告知消息已经被接收。不过这种回执ACK分两种情况:自动ACK:消息一旦被接收,消费者自动发送ACK手动ACK:消息接收后,不会发送A...

2019-08-01 09:45:44 20455 6

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除