摘要: Spring Cloud是一个微服务框架,相比Dubbo等RPC框架, Spring Cloud提供的全套的分布式系统解决方案。 配置管理,服务治理,熔断机制,智能路由,微代理,控制总线,一次性token,全局一致性锁,leader选举,分布式session,集群状态管理等。 SpringCloud 阅读全文
posted @ 2018-11-07 16:00 shileishmily 阅读(943) 评论(0) 推荐(0) 编辑
摘要: 上面这段代码输出: 纳尼?不都是引用比较吗?值相等,引用不相等,应该都返回false吧?别着急,我们下面分析一下。 原因:在 Java 5 中,为 Integer 的操作引入了一个新的特性,用来节省内存和提高性能。整型对象在内部实现中通过使用相同的对象引用实现了缓存和重用。对整数区间 -128 到 阅读全文
posted @ 2018-11-01 18:09 shileishmily 阅读(519) 评论(0) 推荐(0) 编辑
摘要: 本节主要讲Producer同步发送消息的流程,异步的暂时不打算讲。因为还要讲Broker接受消息,存储消息,以及RemotingCommand。 老规矩电路图送上,为什么我喜欢电路图,因为UML比时序图或其他任何图都更能反映出类之间的调用。 发送消息时序图:下图带有浅绿色背景区域的部分为循环调用。r 阅读全文
posted @ 2018-11-01 17:09 shileishmily 阅读(324) 评论(0) 推荐(0) 编辑
摘要: 我们主要分析图中红色矩形区域,最上面RemotingClient属于RocketMQ-remoting内容,以后再分析。从图中也可以清晰的看到RocketMQ底层通信协议使用了Netty(netty-all-4.0.42.Final版本)。 言归正传,红色矩形局域里面大家看调用关系就可以看出来,MQ 阅读全文
posted @ 2018-10-31 17:17 shileishmily 阅读(534) 评论(0) 推荐(0) 编辑
摘要: 这节主要讲述RocketMQ的整体架构,和常用术语解释。当我们接触一个新东西的时候,一定要知道他的原理,只有知道原理之后,才会产生问题。只有带着问题去读源码才会事半功倍。 首先盗用官方的一张图片:(官方地址:http://rocketmq.apache.org/) NameServer:从上图可以清 阅读全文
posted @ 2018-10-31 16:09 shileishmily 阅读(826) 评论(0) 推荐(0) 编辑
摘要: 最近两天发生了很多事情,李咏(勇)去世,金庸讣告,重庆公交车坠江,印尼狮航JT610航班坠毁。让我感觉生命实在是脆弱,有人寿终正寝,有人患病离世,这些都是可预见的。但是像公交坠江,飞机坠海这类的就是不可预见的。他们也许正在去上班的路上,也许正在去参加朋友聚会的路上,也许家中有正等待他们的亲人,可是突 阅读全文
posted @ 2018-10-31 13:34 shileishmily 阅读(664) 评论(0) 推荐(0) 编辑
摘要: 下载 RocketMQ下载地址:http://rocketmq.apache.org/ WebUI监控下载地址:https://github.com/apache/incubator-rocketmq-externals/tree/master/rocketmq-console 集群测试环境: JD 阅读全文
posted @ 2018-10-29 15:39 shileishmily 阅读(884) 评论(0) 推荐(0) 编辑
摘要: 上一节讲了Apache Curator之分布式锁原理(二),在分析InterProcessMutex源码之前,我们先通过一个简单的手机抢购案例更深入理解分布式锁的原理。废话不多说,先上代码: 手机实体Bean类Phone.java:很简单,只有一个number字段,模拟手机库存数量。 用户类: 13 阅读全文
posted @ 2018-10-26 10:30 shileishmily 阅读(1192) 评论(0) 推荐(0) 编辑
摘要: 上篇文章通过秒购的例子对InterProcessMutex锁有了初步认识,本文将通过对源码进行分析带你进入分布式锁的世界。 老规矩先上图,为了更清晰的了解获取锁,释放锁的过程,下图简化了一些细节,使整个流程更加通畅。 下面将逐个方法去分析。 InterProcessMutex.acquire() I 阅读全文
posted @ 2018-10-26 10:30 shileishmily 阅读(1771) 评论(1) 推荐(0) 编辑
摘要: 本文主要讲解如下内容: 为什么要使用分布式锁? 分布式锁特性! 分布式锁的实现方式有哪些? Curator分布式锁原理 Curator分布式锁实现类UML及相关类的介绍 基于Redis,数据库实现分布式锁 为什么要使用分布式锁? 在传统的单机应用中,我们使用JAVA提供的synchronized、R 阅读全文
posted @ 2018-10-25 16:20 shileishmily 阅读(1651) 评论(0) 推荐(0) 编辑