上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 50 下一页
摘要: 1.分布式锁解决方案 1.采用数据库 不建议 性能不好 jdbc 2.基于Redis实现分布式锁(setnx)setnx也可以存入key,如果存入key成功返回1,如果存入的key已经存在了,返回0. 3.基于Zookeeper实现分布式锁 Zookeeper是一个分布式协调工具,在分布式解决方案中 阅读全文
posted @ 2018-11-03 20:51 toov5 阅读(428) 评论(0) 推荐(0) 编辑
摘要: 1.添加 contentType:“application/json“之后,向后台发送数据的格式必须为json字符串 2.我们在项目开发时开发环境和运行环境的配置是不一样的,比如数据库本地测试,和运行环境数据库的地址是不同的。这时候可以通过spring.profiles.active来分区配置。 y 阅读全文
posted @ 2018-11-03 15:48 toov5 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 分布式锁 分布式锁,这个主要得益于 ZooKeeper 为我们保证了数据的强一致性。锁服务可以分为两类,一个是 保持独占,另一个是 控制时序。 1. 所谓保持独占,就是所有试图来获取这个锁的客户端,最终只有一个可以成功获得这把锁。通常的做法是把 zk 上的一个 znode 看作是一把锁,通过 cre 阅读全文
posted @ 2018-11-03 04:09 toov5 阅读(28289) 评论(3) 推荐(6) 编辑
摘要: 前面:https://www.cnblogs.com/toov5/p/9899238.html 服务发生宕机 咋办? 发个事件通知,告知大家哟, 会有通知事件哦 看项目: 服务端: 客户端 pom: 启动三个服务端,一个客户端。然后随机关闭一个服务端: 控制台: 当有新节点启动时候: 核心部分代码欣 阅读全文
posted @ 2018-11-03 02:01 toov5 阅读(1205) 评论(0) 推荐(0) 编辑
摘要: 先玩个正常的,好玩的socket编程: 服务端: 首先公共的这个Handler: 客户端: 运行结果: 引申思路 使用Zookeeper实现负载均衡原理,服务器端将启动的服务注册到,zk注册中心上,采用临时节点。客户端从zk节点上获取最新服务节点信息,本地使用负载均衡算法,随机分配服务器。 1、会员 阅读全文
posted @ 2018-11-03 00:27 toov5 阅读(14145) 评论(1) 推荐(0) 编辑
摘要: 可以通过图形化界面进行操作使用的工具是 zookeeper-dev-ZooInspector.jar 连接到我的zk之后: 1、Java操作zk 依赖: 代码: 结果: 注意如果创建父子关系,必须先创建父 在创建子 然后: 说明: String result = zk.create("/itmayi 阅读全文
posted @ 2018-11-02 19:59 toov5 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 三台 Linux虚拟机,每台都需要安装Jdk环境 1、上传Zookeeper安装包 (比较大 直接上传得了) 或者:wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10 阅读全文
posted @ 2018-11-02 18:43 toov5 阅读(310) 评论(0) 推荐(0) 编辑
摘要: Zookeeper是分布式协调工具 应用场景 命名服务(注册中心) Dubbo注册中心 分布式配置中心(SpringCloud config)动态管理配置文件信息 消息中间件 事件通知(类似发布订阅) 分布式事务(全局协调者) 实现分布式锁 实现选举策略(类似哨兵机制) 实现本地动态负载均衡 (Du 阅读全文
posted @ 2018-11-02 17:49 toov5 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 缓存穿透 缓存穿透是指用户查询数据,在数据库没有,自然在缓存中也不会有。这样就导致用户查询的时候,在缓存中找不到,每次都要去数据库再查询一遍,然后返回空。这样请求就绕过缓存直接查数据库,这也是经常提的缓存命中率问题。 解决的办法就是:如果查询数据库也为空,直接设置一个默认值存放到缓存,这样第二次到缓 阅读全文
posted @ 2018-11-02 16:46 toov5 阅读(5359) 评论(1) 推荐(0) 编辑
摘要: 项目目录结构: pom: yml: service controller 启动 结果: Redis集群的几个注意事项 Redis集群使用CRC16对key进行hash,集群固定使用16384对hash出来的值取模。因为取模结果一定在16384之内,所以集群中的sharding(分片)实际就是如何将1 阅读全文
posted @ 2018-11-02 03:09 toov5 阅读(4391) 评论(0) 推荐(0) 编辑
上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 50 下一页