![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
术以立策
文章平均质量分 87
是行为与技巧
程序猿KIMI
爱狗、爱生活、爱编码的退役程序猿
展开
-
从开源框架理解设计模式系列#Strategy策略模式
目录what什么是策略模式why为什么需要策略模式how如何实现策略模式开源框架经典案例Dubbo中策略模式的使用Dubbo中负载均衡LoadBalance策略分析Dubbo中集群Cluster容错策略Dubbo中使用的LoadingStrategy的使用ShardingSphere中分片算法和分片策略的使用ShardingAlgorithm分片算法ShardingStrategy分片策略JDK中ThreadPoolExecutor策略模式使用场景...原创 2021-09-11 14:01:57 · 502 阅读 · 0 评论 -
从开源框架理解设计模式系列#State状态模式
目录what什么是状态模式why为什么需要状态模式how如何实现状态模式开源框架经典案例简化版的TCPConnectionShardingSphere中的StateContext使用场景优缺点对比优点缺点参考资料what什么是状态模式Gof定义:允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。 在很多情况下,一个对象的行为取决于一个或多个动态变化的属性,这样的属性叫做状态,这样的对象叫做有状...原创 2021-09-10 23:35:03 · 310 阅读 · 0 评论 -
从开源框架理解设计模式系列#Observer观察者模式
what什么是观察者模式 Gof定义:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时, 所有依赖于它的对象都得到通知并被自动更新。 HeadFirst定义:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。观察者模式定义了一系列对象之间的一对多关系。当一个对象改变状态,其他依赖者都会收到通知。依赖(Dependents), 发布- 订阅( Publish - Subscribe)why为什么需要观察...原创 2021-09-10 00:01:10 · 180 阅读 · 0 评论 -
从开源框架理解设计模式系列#Memento备忘录模式
目录what什么是备忘录模式why为什么需要备忘录模式how如何实现备忘录模式开源框架经典案例Mysql的Redo日志JDK中Corba的备忘录模式使用场景优缺点对比优点缺点参考资料what什么是备忘录模式 Gof定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。别名Token。why为什么需要备忘录模式 使用备忘录有两个目标。存储系统关键...原创 2021-09-08 23:24:54 · 260 阅读 · 0 评论 -
从开源框架理解设计模式系列#Mediator中介者模式
目录what什么是中介者模式why为什么需要中介者模式how如何实现中介者模式开源框架经典案例Java类CorbaMessageMediator类JDK中对中介者的使用使用场景优缺点对比优点缺点参考资料what什么是中介者模式 Gof定义:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 HeadFirst定义:使用中介者模式来集中相关对象...原创 2021-09-08 22:40:06 · 246 阅读 · 0 评论 -
从开源框架理解设计模式系列#Iterator迭代器模式
what什么是迭代器模式 Gof定义:提供一种方法顺序访问一个聚合对象中各个元素, 而又不需暴露该对象的内部表示。why为什么需要迭代器模式一个聚合对象, 如列表(list), 应该提供一种方法来让别人可以访问它的元素,而又不需暴露它的内部结构。此外,针对不同的需要,可能要以不同的方式遍历这个列表。但是即使可以预见到所需的那些遍历操作,你可能也不希望列表的接口中充斥着各种不同遍历的操作。有时还可能需要在同一个表列上同时进行多个遍历。迭代器模式...原创 2021-09-08 00:10:29 · 328 阅读 · 1 评论 -
从开源框架理解设计模式系列#Interpreter解释器模式
what什么是解释器模式Gof定义:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。 HeadFirst定义:当你需要实现一个简单的语言时,就使用解释器模式定义语法的类,并用一个解释器解释句子。每个语法规则都用一个类代表。 几乎所有涉及到SQL相关的,涉及到DSL相关的,都少不了Expression模式,只是规则的差异,语法的涵义不同,比如Elasticsearch对DSL的解析,Shardin...原创 2021-09-06 23:47:22 · 399 阅读 · 1 评论 -
从开源框架理解设计模式系列#Command命令模式
what什么是命令模式 Gof定义:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤消的操作。 HeadFirst定义:将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。...原创 2021-09-06 21:24:47 · 440 阅读 · 0 评论 -
从开源框架理解设计模式系列#Chain Of Responsibility责任链模式
目录what什么是责任链模式why为什么需要责任链模式how如何实现责任链模式 开源框架经典案例SpringMVC中的的HandlerExecutionChainTomcat处理Serlvet的ApplicationFilterChain链Dubbo中的Filter链使用场景优缺点对比优点缺点参考资料what什么是责任链模式 Gof定义:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一...原创 2021-09-05 22:08:59 · 350 阅读 · 1 评论 -
从开源框架理解设计模式系列#Proxy代理模式
what什么是代理模式 Gof定义:为其他对象提供一种代理以控制对这个对象的访问。别名Surrogate。 HeadFirst定义:为另一个对象提供一个替身或占位符以控制对这个对象的访问。 使用代理模式创建代变对象,让代表对象控制某对象的访问被代理的对象可以是远程的对象、创建开销大的对象或许安全控制的对象。why为什么需要代理模式 本文重点讨论一下为什么需要代理模式,我相信每一个用过RPC框架的同学,每一个用过AOP...原创 2021-09-05 17:40:45 · 257 阅读 · 0 评论 -
从开源框架理解设计模式系列#FlyWeight享元模式
what什么是享元模式Gof定义:运用共享技术有效地支持大量细粒度的对象。 HeadFirst定义:如何想让某个类的一个实例能用来提供许多“虚拟实例”,就使用享元模式。系统只使用少量的对象,而这些对象都很相似,状态变化很小,可以实现对象的多次复用。由于享元模式要求能够共享的对象必须是细粒度对象,因此它又称为轻量级模式,它是一种对象结构型模式。 FlyWeight通常和Composite模式一起使用,用共享叶节点的DAG图来实现逻辑上...原创 2021-09-05 16:30:17 · 152 阅读 · 0 评论 -
从开源框架理解设计模式系列#Decorator装饰模式
Gof定义:动态地给一个对象添加一些额外的职责。就增加功能来说, Decorator模式相比生成子类更为灵活。别名Wrapper。 HeadFirst定义:动态地将责任附加到对象上,若要扩展功能,装饰者提供了比继承更有弹性的替代方法。 这里很重要的一点是是比继承更有弹性,根据翻译的不同,装饰模式也有人称之为“油漆工模式”。why为什么需要装饰模式首先介绍一下常见的给一个类或者对象增加行爲的方式:继承,使用继承机制是给现有类...原创 2021-09-05 13:38:31 · 220 阅读 · 0 评论 -
从开源框架理解设计模式系列#Facade外观模式
what什么是外观模式Gof定义:为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。HeadFirst定义:提供了一个统一的接口,用来访问子系统中的一群接口,外观定义了一个接口, 让子系统更容易使用。 外观模式又称为门面模式,典型的对象结构性模式。 尊贵的符号外表下,隐藏着卑劣的梦想——Mason Cooley。why为什么需要外观模式 将一个系统划分为...原创 2021-09-05 11:35:27 · 203 阅读 · 0 评论 -
从开源框架理解设计模式系列#Composite组合模式
目录what什么是组合模式why为什么需要组合模式how如何实现组合模式透明方式安全方式开源框架经典案例饿了么Element-ui组件库使用场景优缺点对比优点缺点参考资料what什么是组合模式Gof定义:将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合对象的使用具有一致性。组合模式一般用来描述整体与部分的关系,它将对象组织到树形结构中,顶层的节点被称为根节点,根节点下...原创 2021-09-05 09:55:15 · 241 阅读 · 0 评论 -
从开源框架理解设计模式系列#Bridge桥接模式
what什么是桥接模式GOF定义:将抽象部分与它的实现部分分离,使它们都可以独立地变化。HeadFirst定义:不止改变你的实现,也改变你的抽象。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(Interface)模式。这里先拋个问题,为什么桥接模式看类图怎么和策略模式有点像,下面具体分析?why为什么需要桥接模式当一个类内部具备两种或多种变化维度时,使用桥接模式可以解耦这些变化的维度,使高层代码架构稳定。 在一...原创 2021-09-05 01:30:50 · 640 阅读 · 0 评论 -
数据库研究资料,不定期更新中
我不生产知识,只是知识的搬运工。写作本小册的时间主要用在了两个方面:搞清楚事情的本质是什么。 这个过程就是研究源码、书籍和资料。 如何把我已经知道的知识表达出来。 这个过程就是我不停的在地上走过来走过去,梳理知识结构,斟酌用词用句,不停的将已经写好的文章推倒重来,只是想给大家一个不错的用户体验。这两个方面用的时间基本上是一半一半吧,在搞清楚事情的本质是什么阶段,除了直接阅读MySQL的源码之外,查看参考资料也是一种比较偷懒的学习方式。本书只是MySQL进阶的一个入门,想了解更多关于MySQL的知原创 2021-09-05 00:55:19 · 97 阅读 · 0 评论 -
从开源框架理解设计模式系列#Adapter适配器模式
what什么是适配器模式GOF定义:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。(Gof里面说这个别名是Wrapper模式,这里和装饰器模式容易混淆,因为装饰器也可以说是Wrapper)HeadFirst定义:将一个类的接口,转换成客户期望的另一个接口,适配器让原本接口不兼容的类可以合作无间。why为什么需要适配器模式 这个模式可以通过创建适配器进行接口转换,让不兼容的接口变成兼...原创 2021-09-05 00:05:21 · 763 阅读 · 2 评论 -
从开源框架理解设计模式系列#Builder建造者模式模式
目录what什么是建造者模式why为什么需要建造者模式how怎么实现建造者模式开源框架经典案例LoomBook@Builder注解Elasticsearch中的QueryBuilder常用场景优缺点对比优点缺点参考资料what什么是建造者模式GOF定义: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。HeadFirst定义:使用生成器模式封装一个产品的构造过程,并允许按步骤构造。why为什么需要建造者模式...原创 2021-09-04 18:33:47 · 429 阅读 · 0 评论 -
从开源框架理解设计模式系列#Abstract Factory抽象工厂模式
what什么是抽象工厂模式GOF定义:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。抽象工厂(AbstractFactory)模式的定义:是一种为访问类提供一个创建一组相关或相互依赖对象的接口,且访问类无须指定所要产品的具体类就能得到同族的不同等级的产品的模式结构。why为什么需要抽象工厂模式抽象工厂模式是工厂方法模式的升级版本,工厂方法模式只生产一个等级的产品,而抽象工厂模式可生产多个等级的产品。在多个业务品种、业务分类时,通过抽象工厂模式产生需...原创 2021-09-04 17:42:33 · 296 阅读 · 0 评论 -
从开源框架理解设计模式系列#Protoype原型模式
what什么是单例模式单例(Singleton)模式的定义:指一个类只有一个实例,且该类能自行创建这个实例的一种模式。例如,Windows 中只能打开一个任务管理器,这样可以避免因打开多个任务管理器窗口而造成内存资源的浪费,或出现各个窗口显示内容的不一致等错误。单例模式有 3 个特点:单例类只有一个实例对象; 该单例对象必须由单例类自行创建; 单例类对外提供一个访问该单例的全局访问点。why为什么需要单例模式在计算机系统中,还有 Windows 的回收站、操作系统中的文件...原创 2021-09-04 16:28:13 · 269 阅读 · 0 评论 -
从开源框架理解设计模式系列#Factory工厂模式
what什么是单例模式单例(Singleton)模式的定义:指一个类只有一个实例,且该类能自行创建这个实例的一种模式。例如,Windows 中只能打开一个任务管理器,这样可以避免因打开多个任务管理器窗口而造成内存资源的浪费,或出现各个窗口显示内容的不一致等错误。单例模式有 3 个特点:单例类只有一个实例对象; 该单例对象必须由单例类自行创建; 单例类对外提供一个访问该单例的全局访问点。why为什么需要单例模式在计算机系统中,还有 Windows 的回收站、操作系统中的文件...原创 2021-09-03 21:18:18 · 362 阅读 · 0 评论 -
从开源框架理解设计模式系列#Singleton单例模式
what什么是单例模式单例(Singleton)模式的定义:指一个类只有一个实例,且该类能自行创建这个实例的一种模式。例如,Windows 中只能打开一个任务管理器,这样可以避免因打开多个任务管理器窗口而造成内存资源的浪费,或出现各个窗口显示内容的不一致等错误。单例模式有 3 个特点:单例类只有一个实例对象; 该单例对象必须由单例类自行创建; 单例类对外提供一个访问该单例的全局访问点。why为什么需要单例模式在计算机系统中,还有 Windows 的回收站、操作系统中的文件...原创 2021-09-03 20:42:26 · 220 阅读 · 0 评论 -
从开源框架理解设计模式系列#Visitor访问者模式
设计模式有这么一种设计模式,访问者模式,平时见的少,用的少,感觉是比较没有存在感的一个设计模式,上一篇设计模式文中,设计模式why、what、how这个设计模式也都比较少见,且重要程度一般。但是如果读源码较多的同学,会发现到处都有visitor,visitor无处不在,比如Elasticsearch,ShardingJdbc,MybatisPlus,asm,只要一搜,到处都是,接下来我们就详细聊聊这个visitor。what先回答这个问题,什么是访问者模式,这里参考网上的一张图片及其定义,很多例原创 2021-09-03 09:52:11 · 472 阅读 · 0 评论 -
Linux 环境Runtime.getRuntime().exec()执行报文件无权限
问题最近项目使用了Runtime.getRuntime().exec()方法,这个方法返回的返回值的含义如下。在使用过程中,发现直接exec(cmd)执行scp命令没问题,但是执行ssh命令时报错比如 scp local remote,scp remote local都成功。ssh root@ip "cp a1 a2" 报错解决办法String[] cmds ={"/bin/sh"."-c",cmd};Runtime.getRuntime().exec(cmds);原因这原创 2021-09-02 17:02:45 · 7630 阅读 · 0 评论 -
如何设计可靠的灰度方案
一 灰度的基本概念1 一个典型的灰度方案一个较大的业务或系统改动,往往会影响整个产品的用户体验或操作流程。为了控制影响面,可以选取一批特定用户、流程、单据等,只允许这一部分用户或数据按照变更后的新逻辑在系统中流转,而另一部分用户仍然执行变更前的老逻辑。这一步是线上系统灰度方案的起点。将用户按照特定规则分隔为两类之后,我们主要需要关注命中灰度的这部分用户,是否按照预期执行了新逻辑、产生了符合预期的数据,以及系统整体的变化等。此阶段即灰度观察阶段,线上验证工作也是其中的关键步骤。..转载 2021-08-20 17:02:38 · 1515 阅读 · 0 评论 -
康威定律的各种解读 - ThinkingLabs
随着时间的推移,不同的人以各种不同的方式阐明了康威定律。这是我最近在阅读康威定律文献时发现的变化的概述。Melvin Conway对康威定律的原始定义:设计系统的组织被限制生产设计,这些设计是这些组织的通信结构的副本。尤尔登和康斯坦丁更坚定地重新表述了康威定律:组织设计的任何系统的结构都与组织的结构同构。– Edward Yourdon 和 Larry L. Constantine,结构化设计,1979埃里克·雷蒙德 (Eric Raymond) 重申了康威定律如下:软.转载 2021-08-19 22:09:37 · 654 阅读 · 0 评论 -
SpringBoot 解决跨域,3种解决方案!
问题背景: CORS简介: 详解响应头: 解决办法: 第一种办法: 第二种办法: 第三种办法: 前后端分离大势所趋,跨域问题更是老生常谈,随便用标题去google或百度一下,能搜出一大片解决方案,那么为啥又要写一遍呢,不急往下看。问题背景:Same Origin Policy,译为“同源策略”。它是对于客户端脚本(尤其是JavaScript)的重要安全度量标准,其目的在于防止某个文档或者脚本从多个不同“ori..原创 2021-08-19 09:39:51 · 389 阅读 · 0 评论 -
解决分布式系统的一致性问题,我们需要了解哪些理论?
作者|李艳鹏编辑|Gary一致性是一个抽象的、具有多重含义的计算机术语,在不同应用场景下,有不同的定义和含义。在传统的IT时代,一致性通常指强一致性,强一致性通常体现在你中有我、我中有你、浑然一体;而在互联网时代,一致性的含义远远超出了它原有的含义,在我们讨论互联网时代的一致性之前,我们先了解一下互联网时代的特点,互联网时代信息量巨大、需要计算能力巨大,不但对用户响应速度要求快,而且吞吐量指标也要向外扩展(既:水平伸缩)。于是单节点的服务器无法满足需求,服务节点开始池化,想想那个经典的故...转载 2021-08-03 16:04:16 · 224 阅读 · 0 评论 -
STAR原则告诉你什么是Gossip算法。
Gossip算法因为Cassandra而名声大噪,Gossip看似简单,但要真正弄清楚其本质远没看起来那么容易。为了寻求Gossip的本质,下面的内容主要参考Gossip的原始论文:>。1. Gossip背景Gossip算法如其名,灵感来自办公室八卦,只要一个人八卦一下,在有限的时间内所有的人都会知道该八卦的信息,这种方式也与病毒传播类似,因此Gossip有众多的别名“闲话算法”、“疫情传播算法”、“病毒感染算法”、“谣言传播算法”。但Gossip并不是一个新东西,之前的泛洪查找、路由原创 2021-07-30 00:47:05 · 157 阅读 · 0 评论 -
老生常谈的 Redis 雪崩、击穿、穿透、预热、降级一次全安排
关于 Redis 的介绍、特点什么的就不再这里赘述了,不然又要水千把字。今天我们就重点看企业中在使用 Redis 常见一些问题以及对应解决方案。某个请求到达业务系统,想要获取某个数据,一般是先从缓存中获取,如果缓存中不存在就会去数据库中查询,如果查询到结果就将数据保存到缓存中再返回结果。一个新的技术的引进,必然会带来一些额外的问题,那么 Redis 这么优秀的 NoSQL 数据库会带来什么样的问题呢?我们一起拭目以待。缓存击穿缓存击穿根据名字根本无法看懂是什么意思,并且很容易和另一个词——缓转载 2021-06-02 15:25:39 · 88 阅读 · 0 评论 -
面试官:你知道Dubbo怎么做优雅上下线的吗?你:优雅上下线是啥?
最近无论是校招还是社招,都进行的如火如荼,我也承担了很多的面试工作,在一次面试过程中,和候选人聊了一些关于Dubbo的知识。Dubbo是一个比较著名的RPC框架,很多人对于他的一些网络通信、通信协议、动态代理等等都有一定的了解,这位候选人也一样。但是,我接下来问了他一个问题:你们在使用Dubbo的时候,应用如果重启,怎么保证一个请求不会被中断处理的呢?他没怎么说的上来,我以为他不理解我的问题,我接着问他:我就是想问下Dubbo是如何做优雅上下线的你知道吗?接着他问我:优雅上下线是啥??好转载 2021-06-02 15:17:15 · 219 阅读 · 0 评论 -
10 张图打开 CPU 缓存一致性的大门
前言直接上,不多 BB 了。正文CPU Cache 的数据写入随着时间的推移,CPU 和内存的访问性能相差越来越大,于是就在 CPU 内部嵌入了 CPU Cache(高速缓存),CPU Cache 离 CPU 核心相当近,因此它的访问速度是很快的,于是它充当了 CPU 与内存之间的缓存角色。CPU Cache 通常分为三级缓存:L1 Cache、L2 Cache、L3 Cache,级别越低的离 CPU 核心越近,访问速度也快,但是存储容量相对就会越小。其中,在多核心的 CPU 里,每转载 2021-04-01 00:22:27 · 79 阅读 · 0 评论 -
分布式事务学习资料(不间断更新)
分布式事务实战方案汇总https://juejin.cn/post/6934911674969227295Saga 分布式事务解决方案与实践https://www.infoq.cn/article/z4Z1AkW1B3lp1NDw3jyG分布式事务专栏目前分布式事务的解决方案有 AT、TCC、Saga、MQ、XA、BED 六种。AT 方案《芋道 Spring Boot 分布式事务 Seata 入门》的「2. AT 模式 + 多数据源」小节,实现单体 Spring Boot .原创 2021-03-23 09:56:30 · 95 阅读 · 0 评论 -
如何通过事务消息保障抢购业务的分布式一致性?
阿里巴巴中间件2021 年 3 月 05 日文化 & 方法最佳实践方法论前言在电商领域,抢购和秒杀是非常普遍业务模式,抢购类业务在快速拉升用户流量并为消息者带来实惠的同时,也给电商系统带来了巨大考验。在高并发、大流量的冲击下,系统的性能和稳定性至关重要,任何一个环节出现故障,都会影响整体的购物体验,甚至造成电商系统的大面积崩溃。和电商领域抢购场景极为类似的业务模式还有很多,比如大型赛事和在线教育的报名系统,以及各类购票系统等。针对抢购类业务在技术上带来的挑战,业界有.转载 2021-03-22 21:58:48 · 89 阅读 · 0 评论 -
星巴克不使用两阶段提交
1. 请给我一杯热巧克力(Hotto Cocoa o Kudasai)刚结束了一次为期两周的日本之旅。印象深刻的是数量多到难以置信的星巴克 —— 尤其是在 新宿和六本木地区。在等待咖啡制作时,我开始思考星巴克是如何处理订单的。与大多数商业公司一样,星巴克主要关心的也是订单最大化。更多的订单就意味着更多的收入。因此,他们采用异步的方式处理订单: 点好咖啡后,收银员会拿出一个杯将你的订单在杯子上做个标记,然后将杯子放到一个队列。这里所说的队列其实就是咖啡机上的一排杯子; ...原创 2021-06-02 23:23:00 · 63 阅读 · 0 评论 -
全网最牛逼的 Elasticsearch 天团博客集合,不定期更新
1、事出有因一个问题引发的 国内外最牛逼的elasticsearch 天团博客集合。兄弟们 有玩过这个API的吗 ? 这个suggest是干嘛作用的。 死磕Elasticsearch 知识星球微信群回复:如果看过wood大叔博客 或者 官方API,就能很快找到答案。2、Elastic 中文社区 1000期日报 TOP 30 博客统计机器汇集 3000 + 精彩人工推荐的 Elastic 博文,统计汇总后 TOP 文章来源统计如下:3、国内 TOP Elasticsearch 博客转载 2021-03-08 13:31:38 · 114 阅读 · 0 评论 -
数据库研究资料,不定期更新中
我不生产知识,只是知识的搬运工。写作本小册的时间主要用在了两个方面:搞清楚事情的本质是什么。 这个过程就是研究源码、书籍和资料。 如何把我已经知道的知识表达出来。 这个过程就是我不停的在地上走过来走过去,梳理知识结构,斟酌用词用句,不停的将已经写好的文章推倒重来,只是想给大家一个不错的用户体验。这两个方面用的时间基本上是一半一半吧,在搞清楚事情的本质是什么阶段,除了直接阅读MySQL的源码之外,查看参考资料也是一种比较偷懒的学习方式。本书只是MySQL进阶的一个入门,想了解更多关于MySQL的知原创 2021-03-07 21:59:50 · 118 阅读 · 0 评论 -
如何为Elasticsearch6.x Reference中文版贡献翻译/审校
Elasticsearch6.x Reference中文版翻译工作已经得到官方授权并在翻译中,如有兴趣可以一起为Elasticsearch中文社区贡献自己的一份力量,最终翻译完成后中文版本将会同步到Elastic官网。翻译流程如下,具体详见https://github.com/elasticsearch-cn/elasticsearch/wiki。PrerequisitesGithub Accou...原创 2018-02-28 17:25:03 · 1213 阅读 · 0 评论 -
Windows下ELK6.2及head插件的安装
刚开始接触ELK,那会才1.x,2.x,而ELK版本发展之快,现在已经是6.x,本文主要是简单介绍一下ELK6.2.2版本在Windows的安装、使用,最后使用ELK简单分析一下支付宝账单。1、安装Elasticsearch集群直接从官网下载http://www.elastic.co/downloads/elasticsearch,文件解压,并将解压文件复制两份,这样就可以启动一个三节点。(注意E...原创 2018-02-27 21:03:39 · 2076 阅读 · 2 评论 -
Redis2.8和4.0的基本数据结构
redis数据结构,网上资料也很多,redis设计与实现书上讲的也很明白,具体的也可以参考博客专栏,这里只对redis2.8和4.0版本做个简单的对比: http://blog.csdn.net/column/details/15428.html(sds,list,dictht,skiplist,intset,ziplist,quicklist) 简单动态字符串(sds),在Redis需要...原创 2017-10-13 18:04:41 · 4783 阅读 · 0 评论