憨才好运

个人博客

Docker环境下安装部署Redis Sentinel

本文记录了在Mac上的Docker环境下安装部署Redis Sentinel集群并挂载外部配置和数据的操作步骤。通过前面文章可知,由于主从复制出现了故障,需要手动进行故障转移,同时写能力和存储能力有有限。所以Redis官方提供了Redis Sentinel部署方式提供高可用的解决方案。Redis Sentinel可以理解成一个特殊的Redis进程,它不存储数据,支持的命令也很有限, 只负责持......

Docker环境下安装部署Redis Slave

本文记录了在Mac上的Docker环境下安装部署Redis主从复制集群并挂载外部配置和数据的操作步骤,Redis 的主从数据是异步同步的,所以分布式的 Redis 系统并不满足「一致性」要求。当客户端在 Redis 的主节点修改了数据后,立即返回,即使在主从网络断开的情况下,主节点依旧可以正常对外提供修改服务,所以 Redis 满足「可用性」。 Redis 保证「最终一致性」,从节点会努力追......

Docker环境下安装部署Redis Standalone

本文记录了在Mac上的Docker环境下安装部署Redis单机版并挂载外部配置和数据的操作步骤,浏览了网上很多Docker环境下安装配置Redis的文章,大多都存在错误,容器启动之后配置文件不生效,本篇博客以实际操作为基础确保是准确无误的。 关注文末的公众号,后台私信获取完整的配置文件。 第一步:安装Redis官方镜像 第二步:启动Redis容器服务 第三步:验证使用Redis服务 使用Do......

Redis的线程IO模型

Redis中间件是单线程工作模型 Redis单线程模型也能效率这么高 很多人会怀疑Redis作为一款高并发中间件,怎么会是单线程工作模型,其原因在于: 纯内存操作; 核心是基于非阻塞的IO多路复用机制; C语言实现,一般来说,C语言实现的程序“距离”操作系统更近,执行速度相对会更快; 单线程反而避免了多线程的频繁上下文切换问题,预防了多线程可能产生的竞争问题; Redis单线程模型总结 ......

数据结构与算法优秀文章汇总

大佬博客 labuladong的算法小抄 动态规划 一文学会递归解题 一文学会排列与组合 巧用递归解决矩阵最大序列和问题 一文学会动态规划解题 一文学会回溯算法解题 一文学会背包解题 更多优秀文章持续收集整理中… 关注【憨才好运】微信公众号,了解更多精彩内容⬇️⬇️⬇️ ...

LeetCode-Best-Time-to-Buy-and-Sell-Stock(买卖股票的最佳时机)

关注【憨才好运】微信公众号,了解更多精彩内容⬇️⬇️⬇️ ...

LeetCode-152.Maxinum Product Sbubarray(最大乘积子数组)

LeetCode - 152. Maximum Product Subarray(最大乘积子数组) 题目 给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字)。 示例 1: 1234输入: [2,3,-2,4]输出: 6解释: 子数组 [2,3] 有最大乘积 6。示例 2: 示例 2: 123输入: [-2,0,-1]输出: 0解释: 结果不能为 2......

LeetCode-53.Maximum-Subarrray(最大子序和)

最大子序和 题目 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 示例: 123输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 递归解法 123456789101112131415161718192021private static int res;publ......

Java中SPI机制

​在动手实现一个简单的RPC框架一文中自定义的注册中心、网络通信与序列化反序列化等都是通过SPI插件和工厂类的方式实现的,只要按照 SPI 的规范,把协议的实现加入到运行时 CLASSPATH 中就可以了,就相当于告诉 Java 执行环境,在哪些目录下可以找到你所要执行的 Java 程序所需要的类或者包。我们将每个功能点抽象成一个接口,将这个接口作为插件的契约,然后把这个功能的接口与功能的实......

BIO、NIO和AIO的区别

Java BIO BIO 全称Block-IO 是一种同步且阻塞的通信模式。是一个比较传统的通信方式,模式简单,使用方便。但并发处理能力低,通信耗时,依赖网速。 Java NIO Java NIO,全程 Non-Block IO ,是Java SE 1.4版以后,针对网络传输效能优化的新功能。是一种非阻塞同步的通信模式。 NIO 与原来的 I/O 有同样的作用和目的, 他们之间最重要的区别是......