自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 简读笔记-深入理解kafka-第一部分

第一章 初始kafka参考书籍: 朱小厮–深入理解Kafka 核心设计与实践原理Kafka体系结构Kafka体系架构包含若干Producer, 若干Broker , 若干Consumer,以及一个Zookeeper集群。Zookeeper是Kafka用来负责集群元数据的管理、控制器的选举等操作。Producer:生产者,即发送消息的一方。生产者负责创建消息,然后将其投递到Kafk...

2019-05-05 13:03:41 487

原创 简读笔记-Redis设计与实现第四章

第四部分 独立功能的实现Redis设计与实现简读笔记链接第一章_数据结构与对象第二章_单机数据库的实现第三章__多机数据库的实现第四章_独立功能的实现发布订阅两种类型的订阅订阅频道订阅模式SUBSCRIBE "news.it" //订阅频道SUBSCRIBE "news.[ie]t" //订阅模式PUBLISH "news.it" "hello" //发布消息频...

2019-05-02 14:32:20 148

原创 随笔记--Spring源码深度解析-容器与AOP部分

这本书看得头大, 刷了容器与AOP部分2遍才能勉强看懂,做一些小笔记加深下印象容器的基本实现BeanFactory bf = new XmlBeanFactory(new ClassPathResource("xx.xml"));MyBean myBean = (MyBean)bf.getBean("myTestBean");完成上面代码功能需要的几个大步骤加载配置文件初始化容...

2019-04-29 23:37:35 317

原创 简读笔记-Redis设计与实现第三章

第三部分 多机数据库的实现复制1.旧版复制功能的实现旧版复制分为两个阶段 : 同步 和 命令传播同步过程的执行步骤从服务器向主服务器发送SYNC命令收到SYNC命令后,主服务器开始执行BGSAVE操作生成RDB文件,并使用一个缓冲区记录现在开始执行的所有写命令(用于命令传播阶段保持数据库一致性)。当主服务器的BGSAVE操作执行完时,主服务器会将BGSAVE命令生成的RDB...

2019-04-24 01:00:46 139

原创 简读笔记-Redis设计与实现第二章

第二部分 单机数据库的实现数据库服务器中的数据库Redis服务器的所有数据库都保存在redisServer.db数组中,而数据库的数量使用redisServer.dbnum属性保存切换数据库客户端通过修改目标数据库指针,让它指向redisServer.db数组中的不同元素来切换不同的数据库数据库键空间数据库主要由dict和expires两个字典域构成,其中dict字典负责...

2019-04-22 21:47:36 171

原创 简读笔记_Redis设计与实现_第一章_数据结构与对象

第一部分 数据结构与对象简单动态字符串(SDS simple dynamic string)Redis没有直接使用C语言传统的字符串表示,而是自己构建了SDS这样的抽象数据类型,并将SDS作为Redis默认字符串表示SDS示例SDS与C字符串的区别常数复杂度获取字符串长度C字符串需要遍历字符数组并计数,时间复杂度为O(N)而SDS的len属性记录了已占用长度,时...

2019-04-21 16:40:11 166

原创 设计模式学习专栏十一--------代理模式

设计模式学习专栏十一--------代理模式名称 : 代理模式(Proxy)价值观念 : 控制对象的访问场景之前以状态模式开发的糖果机设计得很好 , 现在老板希望能远程获取旗下所有糖果机得库存状况RMI示意图客户到RMI 的注册表中查找RMI注册表返回Stub对象客户调用Stub的方法,就像Stub就是真正的服务对象一样客户辅助对象(Stub)打包调用信息(变量\方法名称等...

2019-03-13 13:43:28 171

原创 设计模式学习专栏十一--------状态模式

设计模式学习专栏十一--------状态模式名称: 状态模式 (State)价值观念: 通过改变对象内部的状态来帮助对象控制自己的行为场景设计一个万能糖果机 , 我们希望设计尽可能有弹性 , 而且将来我们可能要为它增加更多的行为~刚开始的设计方式public class GumballMachine { final static int SOLD_OUT = 0; fina...

2019-03-12 20:34:46 168

原创 设计模式学习专栏十--------组合模式

设计模式学习专栏十--------组合模式场景回顾迭代器模式的案例我们希望能够加上一份 餐后甜点的 “子菜单”我们需要什么?我们需要某种树形结构 , 可以容纳菜单 , 子菜单和菜单项我们需要确定能够在每个菜单的各个项之间游走 . 而且至少要像现在用迭代器一样方便我们也需要能够更有弹性地在菜单项之间游走 . 比如说 , 可以只需要遍历甜品菜单, 或者可以遍历餐厅的整个菜单(包括...

2019-03-12 15:01:57 204

原创 设计模式学习专栏九--------迭代器模式

设计模式学习专栏九--------迭代器模式名称 : 迭代器模式(Iterator)价值观念: 管理良好的集合场景爆炸性新闻: 对象村餐厅和煎饼屋餐厅屋合并了 , 我们打算用煎饼屋的菜单当早餐 , 用对象村餐厅的菜单当中餐.可是 …煎饼屋的菜单用集合来存储 , 对象村餐厅使用数组来存储… 它们都不想改变自己的存储结构, 因为有本身很多代码都依赖于原有的数据结构那么, 合并后的餐...

2019-03-12 11:51:16 154

原创 设计模式学习专栏八--------模板方法模式

设计模式学习专栏八--------模板方法模式名称 : 模板方法模式 (Template Method)价值观念: 封装算法场景创建咖啡和茶最初的设计发现第一步和第三步是相同的步骤, 因此将它们抽取到 父类中仔细观察 , 冲泡步骤的 第二和第四步实质上是一样的, 只是对于不同的饮料有不同的实现. 我们可以把 它们也进行抽象吗?进一步设计将泡步骤的 第二和第四步 ...

2019-03-11 23:56:27 180

原创 设计模式学习专栏七--------外观模式

设计模式学习专栏七--------外观模式场景在我们进入外观模式之前 , 让我们看一个风行全美的热潮: 建立自己的家庭影院经过一番研究比较,你组装了一套杀手级别的系统 , 内含DVD播放器, 投影机, 自动屏幕, 环绕立体声 ,甚至还有爆米花机.以下是相关的组件正当一切部署完成,想要开始享受一部电影时,却发现…使用代码实现看电影出现的问题我们的客户端需要面对太多具体的组件了...

2019-03-11 22:59:44 158

原创 设计模式学习专栏六--------适配器模式

设计模式学习专栏六--------适配器模式场景如何让火鸡Turckey冒充鸭子Duck鸭子接口public interface Duck { public void quack(); public void fly();}鸭子的实现类--绿头鸭​public class MallardDuck implements Duck {...

2019-03-11 21:52:02 176

原创 设计模式学习专栏五--------命令模式

设计模式学习专栏五--------命令模式场景设计一个智能遥控器,遥控器上有7个插槽 , 每个插槽(某设备具体供应商)对应两个按钮 on , off ,以及一个全局的撤销操作undo.较差的实现方式判断每个插槽对应的具体厂商是谁, 然后做出对应的动作if(slot1 == Light){ light.on()}else if(slot1 == Hot...

2019-03-11 18:04:06 314

原创 设计模式学习专栏四--------装饰者模式

设计模式学习专栏四--------装饰者模式场景设计星巴兹咖啡, 主体(DarkRoast等) + 配料 (摩卡,奶泡等) , 顾客在购买咖啡时, 也可以要求在其中加入各种调料, 如蒸奶(Steamed Milk) , 豆浆(Soy) , 摩卡(Mocha) 或者奶泡. 星巴兹会根据所加入的调料收取不同的费用.所以 订单系统必须考虑到这些调料部分刚开始的实现方式思路:...

2019-03-11 13:04:31 483

原创 设计模式学习专栏三--------观察者模式

设计模式学习专栏三--------观察者模式场景建立一个气象站应用, 利用WeatherData对象取得数据,并更新三个布告板: 目前状况 , 气象统计 , 天气预报此系统中的三个部分是气象站(获取实际气象数据的物理装置) , WeatherData对象(追踪来自气象站的数据,并更新布告板) 和 布告板(显示目前天气状况给用户看.)WeatherData对象知道如何跟物理...

2019-03-11 01:39:54 217

原创 设计模式学习专栏二--------单例模式

单例模式单例模式:确保一个类最多只有一个实例,并提供一个全局访问点有些对象我们只需要一个:线程池、缓存、硬件设备等 如果多个实例会有造成冲突、结果的不一致性等问题单例模式的类图:由类图转化的代码public class Singleton { private static Singleton uniqeInstance=null; //私有的构...

2019-03-10 23:38:50 178

原创 设计模式学习专栏一--------策略模式

策略模式场景设计鸭子模拟器系统,实现具有各种行为组合的鸭子 刚开始设计时,此系统设计了标准的OO技术,设计了一个鸭子超类,并让各种鸭子继承此超类 问题引入 : "让鸭子会飞! 此程序需要会飞的鸭子(火箭喷射鸭)" "鸭子的叫声不同(橡皮鸭, 模型鸭)"较差的实现方式 在超类中增加fly()方法,并给予实现. 所有的鸭子都将拥有飞行的...

2019-03-10 22:06:07 188

原创 冒泡&选择&插入&堆排序

public abstract class IArraySort { //排序 public abstract int[] sort(int[] sourceArray); public void swap(int arr[],int i,int j){ int temp = arr[i]; arr[i]=arr[j]; ...

2019-01-31 11:37:12 105

原创 希尔排序&归并排序&快速排序

public abstract class IArraySort { //排序 public abstract int[] sort(int[] sourceArray); public void swap(int arr[],int i,int j){ int temp = arr[i]; arr[i]=arr[j]; ...

2019-01-31 11:32:28 362

原创 计数排序&桶排序&基数排序

由于网上好多关于计数排序&桶排序&基数排序的代码实现都很混乱。自己整理如下public abstract class IArraySort { //排序 public abstract int[] sort(int[] sourceArray); public void swap(int arr[],int i,int j){ int...

2019-01-31 11:25:11 160

空空如也

空空如也

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

TA关注的人

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