自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 HashMap和ConcurrentHashMap源码讲解

HashMap和ConcurrentHashMap源码讲解github地址HashMapput :1.判断 table 是否空,空则初始化2.计算槽位3.槽位首节点如果为空直接插入槽4.槽位首节点不为空 4.1 判断槽位首节点的 key 相同 替换 value 4.2 槽位首节点的 key 相同 4.2.1 节点是

2018-01-30 21:52:05 1051

原创 Netty实现的websocket推送框架

Netty实现的websocket推送框架2017-11-20 更新 单请求多协议(多订阅) 实现WebSocket Netty实现目的业务需求,需要向前端浏览器订阅推送业务,接受后端推送,之前用的是amq.js (activemq基于轮询实现),有很大的性能问题和实时性也无法保证; 所以就使用了 netty 实现了个 Websocket 框架推送需求:有时候需要进行多订阅,对于前端的需求的多消息

2017-12-10 00:22:31 2594 1

原创 nodejs实现tcp反向代理(优化,亲测)

nodejs实现tcp反向代理(优化,亲测)背景:公司的生产服务器环境是windows ,无法使用tcp 反向代理服务器 (nginx 或 haproxy )公司用的mq 组件是个老的第三方组件,性能不佳,为了避免mq性能瓶颈,到时候可能需要部署集群,所以研究了一下windows反向代理tcpProxy.js/** * tcp反向代理 * net模块官方文档 https://nodejs

2017-12-10 00:18:26 3394 1

原创 (详细可用)分布式锁实现 Java + redis (一)

(详细可用)分布式锁实现 Java + redis (一)分布式环境下很多系统需要使用分布式锁 目的不多说了redis实现分布式锁官网描述:https://redis.io/topics/benchmarks在 Pitfalls and misconceptions 小标题下截取Redis is, mostly, a single-threaded server from the POV o

2017-12-10 00:09:35 653

原创 nginx docker 镜像(带lua的1.11.2 与 1.12.0)

nginx docker 镜像为了方便 nginx 配置模块与安装nginx 版本:带有 lua 模块(已经安装好)的 nginx.1.11.2与 nginx.1.12.0docker镜像地址_百度云如果不行可以加我qq 234778286镜像下载完是 tar文件docker基本操作docker 导出 images 命令:先查看 images 运行状态:docker ps 导出:docke

2017-05-21 15:42:03 3499 1

原创 WebSocket 与 netty服务器 实战

WebSocket 与 netty服务器 实战后续献上 线上的例子….websocket原理是客户端浏览器首先要向服务器发送一个http请求,这个请求与一般的http请求不同,包含了一些附加头消息,其中 Upgrade:WebSocket 表明这是一个申请协议升级的http请求 ,服务端解析这些附加头消息,并生成应答消息返回给客户端,客户端和服务端的WebSocket连接就建立起来了,双方可以通过

2017-04-15 17:40:51 15366 4

原创 Thrift连接池,spring配置化,透明化调用(优化)

Thrift连接池,spring配置化,透明化调用(优化)github项目地址:github项目地址由于看了dubbo 的代码,就在思考,thrift 也能通过 invoker 与 proxy 的方法将服务透明化,就与普通的bean 一样的调用方式经过压力测试,连接池效果还是挺不错的了解连接池的都知道,每次建立远程资源连接并进行请求,再断开连接,对系统资源的消耗是巨大的,所以每次请求thrift的s

2017-03-18 19:25:12 4621

原创 rabbitmq学习

rabbitmq学习简介:RabbitMQ是基于AMQP(Advanced Message Queue Protocol)高级消息队列协议的一种消息队列,消费者与生产者生产者(producer)创建消息,发布到代理服务器(RabbitMQ),消息包含两部分内容:有效载荷(payload)和标签(label)。有效载荷就是你想要传输的数据(json数组或者自己定义的数据),标签描述了有效载荷并且Rab

2017-03-12 00:06:00 577

原创 Spring+基于AXIS2 的 werservice

Spring+基于AXIS2 的 werserviceWeb Service基本概念Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是:通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。XML:(Extensible Marku

2017-03-12 00:04:54 1122

原创 Web+spring容器的生命周期与 各种 Listener

Web+spring容器的生命周期与 各种 Listenerweb容器中的 Listener 配置Listener 种类与配置监听器Listener就是在application,session,request三个对象创建、销毁或者往其中添加修改删除属性时自动执行代码的功能组件。Listener是Servlet的监听器,可以监听客户端的请求,服务端的操作等。ServletContextListener

2017-03-12 00:04:03 4238 1

原创 Thrift 使用以及使用动态代理透明化调用

Thrift 使用以及使用动态代理透明化调用github项目地址:github项目地址本文介绍的是多服务的调用与使用动态代理进行透明化调用因为每次调用方法时都要对transport (io/socket 资源) 进行开启关闭,所以就想设计client 代理起来,然后在前后添加 transport 的open 和 close() (finally);thrift 版本号 0.10.0thrift 文件

2017-03-11 23:54:18 2889

原创 Spring MVC初始化

Spring MVC初始化经过上一篇分析请求的处理,可以得出spring MVC的请求处理过程中需要的组件,从而才知道初始化的时候需要哪些;因为是基于spring 的,所以需要加载spring 容器,并且组件都由spring容器进行管理所以初始化分为两部分: * spring容器; * spring MVC 即DispatcherServlet类中的属性;调用流程HttpServletBean

2017-03-05 21:54:51 667

原创 Spring MVC (DispatcherServlet)请求处理流程

Spring MVC (DispatcherServlet)请求处理流程先从请求处理开始吧,知道请求处理的流程,就能大概清楚,初始化都需要对哪些组件进行实例化。DispatcherServlet中的 doService();代码: /** * Exposes the DispatcherServlet-specific request attributes and delegate

2017-03-05 21:54:19 4631

原创 Spring MVC源码解析简介

Spring MVC源码解析简介Spring MVC (DispatcherServlet)请求处理Spring MVC初始化建议先从请求处理开始看,可以知道初始化需要些什么组件看到哪段写得看不下去直接说,我改!Spring MVC还是从 DispatcherServlet 开始DispatcherServlet 继承体系:继承关系图可以清楚, DispatcherServlet 最后也是继承自 H

2017-03-05 21:53:26 350

原创 centos 安装并操作docker 同步文件夹 并部署tomcat

1、安装docker yum -y install docker2、启动docker 并设置为开机启动service docker startchkconfig docker on或者 systemctl start docker.service systemctl enable docker.service3、安装镜像centosdocker pull c

2016-09-22 13:43:20 2716 1

原创 jenkins搭建自动化部署平台(svn+tomcat重启)

jenkins 自动化部署和集成代码的平台可以将git svn 上的代码 checkout 然后重新部署服务器,节省开发测试的效率一、https://jenkins.io/index.html 下载jenkins包(war包)二、下载完war包   在服务器上最好新建一个tomcat专门用来做jenkins启动的   修改一下server.xml   文件中修改   :(1)

2016-07-04 09:04:23 26916

转载 centos7 Redis的安装与配置

centos7 Redis的安装与配置

2016-06-20 12:48:46 914

转载 springMVC与shiro整合与自定义验证码用户类型类

shiro账号验证与权限管理 首先是账号验证的整合1、导入shiro与spring必要的jar包2、在web.xml中配置 --> shiroFilter org.springframework.web.filter.DelegatingFilterProxy targetF

2015-11-22 10:39:59 1650

转载 spring-mybatis整合

1、导入jar包2、配置mybatis 配置文件SqlMapConfig.xml   PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">                               

2015-10-04 13:44:23 387

转载 spring-xmemcached 集成

memcached和spring集成   1、首先安装memcached客户端; 2、导入项目jar 包  xmemcached-2.0.0.jar  memcached-java-2.5.1.jar slf4j-log4j12-1.7.10.jar slf4j-api-1.7.9.jar slf4j-jcl-1.7.10.jar3 配置spring 配置文件 applicationCon

2015-10-04 11:44:23 626

空空如也

空空如也

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

TA关注的人

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