自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

西瓜游侠的博客

开心快乐码代码!

  • 博客(13)
  • 资源 (1)
  • 收藏
  • 关注

原创 【Java设计模式13】——命令模式

命令模式是一种行为模式,通过将动作封装成对象实现命令请求者和命令接收者之间的解耦。调用者只需要简单的下达命令,然后等待命令完成即可,对执行者如何处理命令完全不关心。命令模式中的角色:Command(命令接口):为所有命令声明一个公共接口,定义一个execute()方法。ConcreteCommand(具体命令):实现命令接口的某一个具体命令,定义了该命令的动作和具体的执行者。Invo...

2020-02-16 20:14:41 344

原创 Servlet中的8大监听器

1 概述Listener用于监听servlet中的事件,例如context、request、session对象的创建、修改、删除,并处罚响应事件。Listener是观察者模式的实现,在servlet中主要用于对context、request、session对象的生命周期进行监控。在servlet2.5规范中共定义了8中Listener。2 Servlet三大作用域2.1 Servlet...

2020-02-16 19:05:57 4597 2

原创 使用Feign调用服务接口

Feign是一个声明式的REST客户端。Feign具有可插拔的注解特性,支持可插拔的编码器和解码器。Feign默认集成了Ribbon,并和Eureka结合,默认实现了负载均衡的效果。引入依赖使用Feign,需要引入spring-cloud-starter-openfeign依赖,同时为了配合 Consul,还要引入spring-cloud-starter-consul-discovery依赖:...

2020-02-10 14:33:47 2659

原创 Raft协议

算法论文:https://web.stanford.edu/~ouster/cgi-bin/papers/raft-atc14Raft是工程上使用较为广泛的 最终一致性、去中心化、高可用 的分布式协议。Raft是一个 共识算法。Raft增强了可理解性,但是在性能、可靠性、可用性方面不输于Paxos算法。Raft会选举出一个leader,leader负责接收所有客户端的更新请求,并负责日...

2020-02-09 21:21:35 560

原创 Spring Cloud Consul 实现服务注册/发现

前置条件:首先根据 搭建Consul集群 搭建好Consul集群。下面使用Spring Cloud Consul 实现服务注册/发现。Spring Cloud 版本:Greenwich.SR5‘Spring Boot’ 版本:2.2.4.RELEASEConsul 版本:1.6.3引入依赖首先需要引入几个依赖:<!-- spring cloud consul 相关依赖 ...

2020-02-07 23:17:07 753

原创 搭建Consul集群

下载安装包wget https://releases.hashicorp.com/consul/1.6.3/consul_1.6.3_linux_amd64.zip解压unzip consul_1.6.3_linux_amd64.zip

2020-02-07 14:30:01 318

原创 CentOS 7通过yum安装Docker和docker-compose

参考:http://www.imooc.com/article/16448需要linux内核版本在3.10以上,可以通过uname -r查看。1、切换为root用户2、卸载旧版本(如果安装过旧版本的话)$ yum remove docker \ docker-common \ docker-selinux \ docker-engine3、安装...

2020-02-03 18:16:26 21598 1

原创 Docker知识点导航

待完成…

2020-02-03 18:05:30 316

原创 初识Consul

参考:http://blog.didispace.com/consul-service-discovery-exp/1 Consul是什么Consul是基于GO语言开发的开源工具,主要面向分布式、服务化的系统提供服务注册、服务发现和配置管理的功能。Consul的功能都很实用,其中包括:服务注册/发现健康检查Key/Value存储多数据中心分布式一致性保证等。Consul本...

2020-02-02 20:44:28 269

原创 垃圾收集算法(理论)

分代收集理论一般至少会把Java堆划分为 新生代(Young Generation) 和 老年代(Old Generation) 两个区域。在新生代中,每次垃圾收集时都发现有大批对象死去,而每次回收后存活的少量对象,将会逐步晋升到老年代中存放。在新生代用复制算法,在老年代用标记-清理或标记-整理算法。几个概念:新生代收集(Minor GC/Young GC):指目标只是新生代的垃圾收集...

2020-02-02 16:16:41 218

原创 强引用、软引用、弱引用、虚引用

参考:深入理解Java虚拟机:JVM高级特性与最佳实践(第3版) 周志明 著在JDK 1.2版之后,Java对引用的概念进行了扩充,将引用分为4种(引用强度依次减弱):强引用(Strongly Re-ference)软引用(Soft Reference)弱引用(Weak Reference)虚引用(PhantomReference)(1)强引用:是最传统的“引用”的定义,是指...

2020-02-02 00:40:33 125

原创 引用不可达的对象什么时候才会被真正回收?

参考:深入理解Java虚拟机:JVM高级特性与最佳实践(第3版) 周志明 著在可达性分析算法中判定为不可达的对象,也不是“非死不可”的,要真正宣告一个对象死亡,至少要 经历两次标记过程。第一次标记如果对象在进行可达性分析后发现没有与GC Roots相连接的引用链,那它将会被第一次标记。第二次标记经过第一次标记后的对象,根据 此对象是否有必要执行finalize()方法 进行筛选,随后...

2020-02-02 00:29:16 1251

原创 JVM如何判断Java对象是否存活,是否要被GC回收?

GC在对堆内存进行垃圾清理之前,需要判断哪些Java对象不再被使用,需要被回收。通常有两种算法:引用计数算法、可达性分析算法。引用计数算法(已被淘汰)引用计数算法:在对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加一;当引用失效时,计数器值就减一;任何时刻计数器为零的对象就是不可能再被使用的。存在的问题:主流的Java虚拟机里面都没有选用引用计数算法来管理内存,因为单纯的引用计...

2020-02-02 00:11:23 1391

sensebuilder2.0

sensebuilder2.0 windows安装程序,官网太慢了,下载下来供大家使用

2018-11-17

空空如也

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

TA关注的人

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