摘要:zookeeper集群搭建非常简单,准备三台安装好zookeeper服务器,在其zoo.cfg配置中分表添加如下配置 initLimit 10 集群中的follower与leader之间完成初始化同步连接时能容忍的最多心跳数(tickTime的数量)。如果zk集群环境数据量很大,同步数据时间会变长,
阅读全文
摘要:RPC是什么?远程过程调用,过程就是业务处理、计算任务,像调用本地方法一样调用远程的过程。 RMI和RPC的区别是什么?RMI是远程方法调用,是oop领域中RPC的一种实现,我们熟悉的restfull和webservice都是RPC,仅仅消息的组织方式和消息协议不同。 RPC调用过程 : 1、客户端
阅读全文
摘要:zookeeper是一个分布式程序的高性能协调服务,提供集中式信息存储服务,数据存储于内存中,类似文件系统的树形结构,高吞吐量和低延时,集群高可靠,基于zookeeper可以实现分布式统一配置中心、分布式锁、服务注册中心。 zookeeper的同类产品 consul etcd Doozer等 单机版
阅读全文
摘要:实现要点:1、构建本地消息表及定时任务,确保消息可靠发送;2、RabbitMQ可靠消费;3、redis保证幂等 两个服务:订单服务和消息服务 订单服务消息可靠发送 使用springboot构建项目,相关代码如下 spring: datasource: druid: url: jdbc:postgre
阅读全文
摘要:docker分为docker CE 和docker EE,CE即免费社区版,EE即企业付费版。下面基于centos7安装docker CE,其它linux版本可以参考官方文档https://docs.docker.com/install/linux/docker-ce/centos/。docker
阅读全文
摘要:首先是一段简单的多线程代码 public class VolatileTest { private boolean flag = true; public boolean isFlag() { return flag; } public void setFlag(boolean flag) { th
阅读全文
摘要:spring事务是基于同一个数据连接来实现的,认识到这一点是spring事务的关键,spring事务的关键点便在于在事务中不管执行几次db操作,始终使用的是同一个数据库连接。通过查看源码,我们可以看到spring事务实现思路如下 这其中的关键点就在于如何保证在事务内获取的数据库连接为同一个以及通过a
阅读全文