- 博客(18)
- 资源 (9)
- 收藏
- 关注
原创 灰度发布方案
一、灰度发布定义灰度发布(又名金丝雀发布)是指在黑与白之间,能够平滑过渡的一种发布方式。在其上可以进行A/B testing,即让一部分用户继续用产品特性A,一部分用户开始用产品特性B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B 上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。二、实现思路方向1、在代码中做。一套线上环境,代码...
2018-07-15 16:49:08 22593 1
原创 springboot整合aceadmin
接上一篇springboot整合mybatis Ace Admin资源地址 简单说就是一个bootstrap的后台管理系统模板,也整合了很多其他的插件如jqgrid 资源下载后,将静态资源粘贴到resources的static目录,将html粘贴到templates目录 框架搭建完毕,开始撸代码 这里主要介绍一下jqgrid,因为后台管理系统一个很重要的功能就是表格展示,而jqgrid功能
2017-07-20 17:38:35 3845 5
原创 springboot整合mybatis
一、开发环境 jdk:1.8 编译工具:Intellij IDEA 15 版本控制:Maven 二、pom.xml <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId>
2017-07-20 16:30:23 528
原创 ThreadLocal
当访问共享的可变数据时,通常需要使用同步。一种避免使用同步的方式就是不共享数据。如果尽在单线程内访问数据,就不需要同步。这种技术被称为线程封闭,这是实现线程安全最简单的方式之一。ThreadLocal是一种维持线程封闭性的方法。ThreadLocal类能使线程中的某个值域保存值的对象关联起来。ThreadLocal提供的get和set等方法,为每个使用该变量的线程都存有一份独立的副
2017-07-08 15:32:37 297
原创 volatile
volatile变量是一种比sychronized关键字更轻量级的同步机制。 下面通过一个示例来了解volatile的用法:检查某个状态标记以判断是否退出循环。 volatile boolean asleep; ... while(!asleep) countSomeSheep();
2017-07-08 11:33:47 232
原创 高性能序列化protostuff
protostuff基于Google protobuf,但是提供了更多的功能和更简易的用法。protobuf的一个缺点是需要数据结构的预编译过程,首先要编写.proto格式的配置文件,再通过protobuf提供的工具生成各种语言响应的代码。由于java具有反射和动态代码生成的能力,这个预编译过程不是必须的,可以在代码执行时来实现。这就是protostuffSerializati
2017-06-30 11:41:53 2097
原创 hornetq只进不出引发的问题
今天上班例行检查的时候发现一个连接hornetq的应用处于"假死"状态,不干活重启后,问题依旧。日志也没有发现什么。打开hornetq的日志后发现,有几天connect_timeout报警。重启hornetq后问题依旧。在排除了账号、网络等问题后,还是找不到原因折腾一上午。将出问题的应用挪到测试服务器上测试后,确定应用是正常的问题定在了hornetq身上。后来想到有几个程序
2017-06-26 16:10:31 710
原创 手动添加jar包到本地maven仓库
很多时候我们需要的jar包在maven仓库上没有我们可以自己找到这个jar包,但是怎么通过在pom文件配置使用呢?需要我们手动将本地的jar包添加到本地maven仓库。前提是已经配置好maven环境变量使用mvn命令:mvn install:install-file -Dfile=jar包的位置 -DgroupId=一般是公司名倒序 -DartifactId=唯一型ID -Dver
2017-06-24 12:38:43 9077
原创 org.springframework.core.NestedIOException: ASM ClassReader failed to parse class file
之前项目没有问题,前几天把jdk升级到1.8后,编译的jar包运行出错org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component class: URL***; nested exception is org.springframework.core.Ne
2017-06-15 10:55:20 9564 2
原创 Netty入门应用
使用JDK的NIO类库开发程序步骤十分繁琐,而且容易出错。下面使用netty进行入门开发本例使用netty 4.0的jar包(netty 5.0由于各种原因被原作者放弃)netty jar包下载地址http://download.csdn.net/detail/hueason/9832925package com.hueason.netty.n2.simpledemo;impo
2017-05-04 09:31:39 275
原创 Netty入门--AIO
AIO也就是NIO2.0,是Java1.7提供的新异步非阻塞I/ONIO2.0的异步套接字通道是真正的异步非阻塞I/O,它不需要通过多路复用器(Selector)对注册的通道进行轮询操作即可实现异步读写。下面是demopackage com.hueason.netty.n1.aio;/** * Created by Administrator on 2017/4/20. */
2017-05-02 16:24:17 1136
原创 Netty入门--NIO
JavaNIO库是在JDK1.4中引入的。NIO弥补了原来同步阻塞I/O的不足。下面是NIO的三个主要概念1.缓冲区BufferBuffer是一个对象,它包含一些要写入或者要读取的数据在NIO库中,所有数据都是用缓冲区处理的。在读取数据时,他是直接读到缓冲区中;在写入数据时,写入到缓冲区中。任何时候访问NIO中的数据,都是通过缓冲区进行操作。缓冲区实质上是一个数组。通常是一
2017-05-02 15:45:29 406
原创 Netty入门--伪异步I/O
同步阻塞I/O也就是一个客户端请求,服务端需要开启一个线程处理,无法满足高并发需求。后来前辈对这种线程模型进行了优化--服务端通过一个线程池来处理多个客户端的请求接入,形成客户端个数M:线程池最大线程数N的比例关系,其中M可以远远大于N。通过线程池客户灵活地调配线程资源,设置线程的最大值,防止由于海量并发接入导致线程耗尽。采用线程池和任务队列可以实现一种伪异步的I/O通信模型下面通过一个例
2017-05-02 15:19:22 330
原创 Netty入门--BIO
网络编程的基本模型是Clieng/Server模型,也就是两个进程之间进行相互通信,其中服务端提供位置信息(绑定的IP地址和监听端口),客户端通过连接操作向服务端监听的地址发起连接请求,通过三次握手建立连接,如果连接建立成功,双方就可以通过网络套接字(Socket)进行通信。采用BIO通信模型的服务器端,通常由一个独立的Acceptor线程负责监听客户端的连接,它接收到客户端连接成功请求之后为
2017-05-02 14:56:59 314
原创 Java几种I/O模型对比
同步阻塞I/O(BIO)伪异步I/O非阻塞I/O(NIO)异步I/O(AIO)客户端个数:I/O线程1:1M:N(其中M可以大于N)M:1(1个I/O线程处理多个客户端连接)M:0(不需要启动额外的I/O线程,被动回调)I/O类型(阻塞)阻塞I/O阻塞I/O非阻塞I/O非阻塞I/OI/O类型(同步)同步I/O同
2017-05-02 14:50:09 393
原创 idea快捷键和基本配置
我是从eclipse转到idea开发的,刚开始几天快捷键是各种不适应,经过一段时间的摸索,将这段时间的经验分享给大家首先,idea的各项基础配置都是在settings配的一些常用配置:(配置选定后记得选择右下角Apply按钮后再点击OK,才能生效)风格: 我是用的是默认风格,就是白底黑字的,还有一种常用的就是Darcula是黑底的,很多人使用,也很酷炫正
2017-04-28 21:39:47 1211
原创 idea下载和使用
下载链接http://pan.baidu.com/s/1ceqjoE安装后需要注册码才能打开,获取注册码地址http://idea.lanyus.com/
2017-04-28 21:34:58 529
原创 Linux服务器启动Tomcat7报Error listenerStart
到新公司接收第一个任务,把现有的项目搭建在本地测试服务器上。首先是在服务器新解压一份tomcat7,将项目war包放到webapps下,然后启动tomcat结果报错 Error:listenerStart,并没有更多的错误日志解决办法:新建一个log4j.properties放到项目的classes目录下,再启动项目就会打印更多的错误日志log4j.properties:#
2017-04-09 10:30:55 1060
scons-4.0.0.tar.gz
2020-07-20
protobuf--java-3.2.0.jar & protoc-3.2.0-windows-x86_32.exe
2017-05-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人