刘俊技术博客专栏

专注于J2EE和大数据

Netty线程模型

1. 背景1.1. Java线程模型的演进1.1.1. 单线程时间回到十几年前,那时主流的CPU都还是单核(除了商用高性能的小机),CPU的核心频率是机器最重要的指标之一。在Java领域当时比较流行的是单线程编程,对于CPU密集型的应用程序而言,频繁的通过多线程进行协作和抢占时间片反而会降低性能。...

2018-05-31 09:29:29

阅读数:176

评论数:0

Spring-boot集成通用Mapper以及pagehelper分页插件

配置POM文件<parent> <groupId>org.springframework.boot</groupId> <artifac...

2018-05-29 15:57:24

阅读数:169

评论数:0

logback高级特性使用--异步存储日志

异步记录日志注意:该功能需要高版本才能支持,如1.0.11。AsyncAppender,异步记录日志。工作原理:当Logging Event进入AsyncAppender后,AsyncAppender会调用appender方法,append方法中在将event填入Buffer(这里选用的数据结构为...

2018-05-28 16:05:08

阅读数:272

评论数:0

使用Google的Guava工具EventBus-观察者模式

EventBus是Google.Guava提供的消息发布-订阅类库,它实现了观察者设计模式,消息通知负责人通过EventBus去注册/注销观察者,最后由消息通知负责人给观察者发布消息。首先使用 maven 依赖:[java] view plain copy<!-- https...

2018-05-28 15:16:56

阅读数:137

评论数:0

docker swarm 和compose部署服务,解决跨主机网路问题和ip不固定问题(二)

一 docker 版本1.13及以上,compose版本1.11及以上。docker的搭建和运行compose参考官方文档完成二  docker swarm 和compose 简介Docker宣布在1.12版的引擎中内置编排能力,也就是 Swarm Mode,在容器之上引入了服务(service)...

2018-05-24 15:01:22

阅读数:705

评论数:1

docker swarm 和compose部署服务,解决跨主机网路问题和ip不固定问题(一)

一  要求: docker版本13以上;compose版本11以上;关闭防火墙和selinux二  composev3版本加入了很多功能,现在我肯可以很方便的结合docker swarm 和compose来完成不同主机之间的通信问题三 准别2台虚机,安装docker ,配置docker swarm...

2018-05-24 14:31:24

阅读数:557

评论数:0

关于docker容器网络的一些理解

写在前边的话      突然发现好久没有更新博客了,像我这种频繁发表博客的人竟然也会放慢了更新的速度,其实不是说自己不去写,不去更新,只是不愿意去将就,去发表一些让别人看了没有多大帮助的文章,作为2017年的开篇博客,我想和你们一起学习下docker容器网络的知识,首先声明,以下内容大部分都是来源...

2018-05-23 10:48:39

阅读数:164

评论数:0

Redis集群实现

Redis cluster tutorialRedis集群提供一种方式自动将数据分布在多个Redis节点上。Redis Cluster provides a way to run a Redis installation where data is automatically sharded ac...

2018-05-17 08:48:55

阅读数:393

评论数:0

spring cloud服务发现注解之@EnableDiscoveryClient与@EnableEurekaClient

在之前的一篇文章Spring Cloud feign使用中在使用服务发现的时候提到了两种注解,一种为@EnableDiscoveryClient,一种为@EnableEurekaClient,用法上基本一致,今天就来讲下两者,下文是从stackoverflow上面找到的对这两者的解释:There ...

2018-05-16 20:11:38

阅读数:386

评论数:0

Maven 的聚合(多模块)和 Parent 继承

即使是长期从事 Maven 工作的开发人员也不能完全掌握聚合(多模块)和 Parent 继承的关系,在使用多模块时,子模块总要指定聚合的 pom 为 <parent>。由于在大多数示例中都是这么写的,所以很难让人搞懂这两者的具体作用和关系。实际上在 Ma...

2018-05-16 14:09:54

阅读数:130

评论数:0

改变eureka server中注册的服务的健康检测方式

默认情况下注册到eureka server的服务是通过心跳来告知自己是UP还是DOWN,并不是通过spring-boot-actuator模块的/health端点来实现的,这样其实不是很合理。默认的心跳实现方式可以有效的检查eureka客户端进程是否正常运作,但是无法保证客户端应用能够正常提供服务...

2018-05-15 21:43:08

阅读数:56

评论数:0

一个比较好用的 chrome浏览器的json格式化插件

 插件名:JSON-Handle 下载地址:      http://jsonhandle.sinaapp.com/插件下载后,在浏览器输入:chrome://extensions/将下载后的文件拖入 chrome浏览器即可:   演示:      点击OK后 即可格式化json  ...

2018-05-15 21:40:15

阅读数:90

评论数:0

MYSQL数据库中的枚举类型和集合类型

枚举类型,enum一般来说就是单选,在定义枚举的时候列出所有的可能性;代码如下[php] view plain copycreate table type_enum(      gender enum('male','remale','serect'),  );  insert into type...

2018-05-14 20:26:30

阅读数:159

评论数:0

Mybatis中#{}和${}传参的区别及#和$的区别小结

最近在用mybatis,之前用过ibatis,总体来说差不多,不过还是遇到了不少问题,再次记录下,比如说用#{},和 ${}传参的区别,使用#传入参数是,sql语句解析是会加上"",比如 select * from table where name = #{na...

2018-05-14 11:20:33

阅读数:55

评论数:0

windows下强制杀死tomcat进程

在Windows操作系统中,我们在启动一个tomcat服务器时,经常会发现8080端口已经被占用的错误,而我们又不知道如何停止这个tomcat服务器。本文将通过命令来强行终止这个已经运行的tomcat进程,如下:1、首先查找到占用8080端口的进程号PID是多少 CMD>ne...

2018-05-12 10:58:21

阅读数:176

评论数:0

mybatis一级与二级缓存详解

mybatis提供查询缓存,用于减轻数据压力,提高数据库性能。mybaits提供一级缓存,和二级缓存。一级缓存是SqlSession级别的缓存。在操作数据库时需要构造 sqlSession对象,在对象中有一个数据结构(HashMap)用于存储缓存数据。不同的sqlSession之间的缓存数据区域(...

2018-05-10 19:29:18

阅读数:53

评论数:0

eclipse将选中的代码块整体左移或者右移

左移:    选中代码块,按住shift+Tab键,则会整体往左一个tab键距离右移:    选中代码块,按住Tab键,则会整体往右一个tab键距离

2018-05-09 18:54:33

阅读数:260

评论数:0

docker redis4.0 集群(cluster)搭建

前言 redis集群对于很多人来说非常熟悉,在前些日子,我也有一位大兄弟也发布过一篇关于在阿里云(centOS7)上搭建redis 集群的文章http://www.cnblogs.com/zhengzeze/p/7325750.html,虽然集群搭建的文章在网上很多,我比较喜欢这篇文章的地方是他在...

2018-05-07 17:21:02

阅读数:406

评论数:0

mysql5.7从入门到精通读书笔记-13章 Mysql用户管理

登录    mysql -u root -p -P 3306 -h 192.168.1.123创建用户    GRANT INSERT,DELETE,UPDATE,SELECT ON *.* TO 'testUser'@'localhost' IDENTIFIED BY '123456';    ...

2018-05-07 16:02:28

阅读数:57

评论数:0

10张图带你深入理解Docker容器和镜像

这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(container)和镜像(image)之间的区别,并深入探讨容器和运行中的容器之间的区别。当我对Docker技术还是一知半解的时候,我发现理解Docker的命令非常困难。于是,我花了几周的时间来学习Docker的工作原理,更确切地说,...

2018-05-05 23:50:04

阅读数:87

评论数:0

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