- 博客(25)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
原创 netty之websocket
此示例并未处理websocket的断线重连问题。注意:1. 在网络良好的情况下,服务端或客户端主动断开,对方会收到相应的断开事件2. 由于网络问题造成连接断开,对方并不知晓连接已断开,需要使用心跳检测来解决websocket服务端import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.ChannelFuture;i
2018-01-13 16:18:42
492
原创 netty之Socket多客户端连接
netty 聊天服务端import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.ChannelFuture;import io.netty.channel.EventLoopGroup;import io.netty.channel.nio.NioEventLoopGroup;import io.netty.chann
2018-01-13 16:18:05
6583
原创 netty之Socket
netty可以进行socket的服务端和客户端的编程,下面是简单的示例。netty socket服务端import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.ChannelFuture;import io.netty.channel.EventLoopGroup;import io.netty.channel.nio.
2018-01-13 16:17:10
9442
原创 netty之Http服务器
1. netty可以做的事情netty可以作为RPC的通信框架netty作为长连接服务器(websockt)netty也可以作为http服务器(不是基于servlet规范)2. netty的Hello World(Http服务器)import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.ChannelFuture;
2018-01-13 16:15:35
1264
1
原创 mysql 优化学习二
mysql 优化学习二影响数据库的性能的几个因素服务器硬件服务器操作系统服务器操作引擎的选择服务器参数配置数据库表结构的设计和SQL语句CPU资源和可用内存大小计算密集型的应用CPU越可能影响整个系统的性能,成为系统的瓶颈。 热数据的大小远远超过内存大小时IO系统就可能成为系统的瓶颈。 网络往往发生在大量的数据被查询时,特别是当我们使用memcache这的缓存层时,如果缓存大量失效就
2017-11-10 07:30:46
408
原创 mysql 优化学习一
影响数据库的因素服务器硬件性能磁盘IOsql查询速度网卡流量QPS: 每秒钟处理的查询量TPS: 每秒钟处理的事务数并发量:同一时刻所需要数据服务器做处理的请求的数量连接量:往往要比并发量大得多,是客户端与数据库服务器建立的链接数量超高的QPS 和 TPS10ms 处理一个sql => 1s 处理 100个sql => QPS <= 100 100ms处理一个sql => 1s
2017-09-07 18:57:23
278
原创 在@Configuration中使用通用Mapper会出现无法初始化的问题
通用mapper通用mapper是mybatis的扩展,它提供了一系列的通用方法,避免了冗余的xml编写和公共增删改查的重复劳动。它极大的简化了单表的增删改查,并可以随意的按照自己的需要选择通用方法,还可以很方便的开发自己的通用方法。本人曾使用spring整合通用mapper一直未出现问题,后来项目升级为spring boot,在整合通用mapper时出现了一个问题,我也曾在github上询问(is
2017-09-02 18:26:11
8448
原创 设计模式之建设者模式
建设者模式是对象的创建模式。建设者模式可以见一个产品的内部表象(内部对象)与产品的生产过程分割开来,从而使一个建设过程生成具有不同的内部表象(内部对象)。产品的内部表象 一个产品常有不同的组成成分作为产品的零件,这些零件有可能是对象,也有可能不是对象,它们通常又叫做产品的内部表象(internal representation)。不同的产品可以有不同的内部表象,也就是不同的零件。
2015-05-07 19:36:12
1486
原创 设计模式之抽象工厂模式
一、抽象工厂模式是所有形态的工厂模式中最为抽象和最其一般性的。抽象工厂模式可以向客户端提供一个接口,使得客户端在不必指定产品的具体类型的情况下,能够创建多个产品族的产品对象。二、模式中包含的角色及其职责1.抽象工厂(Creator)角色抽象工厂模式的核心,包含对多个产品结构的声明,任何工厂类都必须实现这个接口。2.具体工厂(Concrete Creator)角色具体
2015-05-06 14:33:13
348
原创 设计模式之工厂方法模式
一、工厂方法模式同样属于类的创建型模式,又称为多态工厂模式。工厂方法模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂类不再负责类的创建工作,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一步抽象的好处是工厂方法模式可以使系统在不修改具体工厂角色的情况下引进新的产品。二、模式中的角色及其职责1.抽象工厂(Creator)角色
2015-05-06 13:40:25
338
原创 设计模式之简单工厂模式
一、简单工厂模式属于类的创建型模式,又叫做静态工厂模式。通过专门定义一个工厂类来负责完成创建其他类的实例工作,通常本创建的实例都有一个共同的父类或继承自同一个接口。二、模式中的角色及其职责1.工厂(Creator)角色工厂类是简单工厂模式的核心,它负责实现所有实例创建的内部逻辑。工厂类可以被外界直接调用,创建所需要的实例对象。2.抽象(Product)角色工厂类创建的所
2015-05-06 11:11:44
360
原创 js中自定义键值对形式的Map结构
js中模仿java中的Map结构,用以存储键值对/** * 为Array对象添加remove方法,删除制定值得元素 * @param {String} 数组元素值 */Array.prototype.remove = function(s) { for (var i = 0; i < this.length; i++) { if (s ==
2015-04-07 09:57:47
8620
原创 linux启动流程
本文不涉及硬件的启动流程,只关注linux的启动流程1.加载内核linux接管硬件后会首先读入 /boot 目录下的内核文件,将内核载入内存中2.启动init进程将内核加载到内存后,linux会运行一个初始化程序(/sbin/init),它的作用是初始化系统环境init是linux第一个启动的进程,所以它的进程ID(PID)是 1 ,它是所有进程的父进程,也就是
2015-02-09 16:19:39
384
原创 tomcat开启jmx
1.修改JAVA_HOME/jre/lib/management/jmxremote.access monitorRole readonly controlRole readwrite \ create javax.management.monitor.*,javax.management.timer.* \ unr
2015-02-09 16:07:51
7958
原创 nginx开启status模块监控
nginx开启status模块需要在编译的时候加上--with-http_stub_status_module,然后配置nginx.conf在server中加入如下代码location /server-status { stub_status on; access_log off;}重启nginx,通过浏览器访问 http:你的IP/ser
2015-01-27 08:44:13
580
原创 centos6.5下安装nginx
1.安装pcre-8.36.tar.gztar -zxvf pcre-8.36.tar.gzcd pcre-8.36./configure --prefix=/usr/local/pcremakemake install2.安装zlib-1.2.8.tar.gz tar -zxvf zlib-1.2.8.tar.gzcd zlib-1.2.8./configure --pr
2015-01-26 13:48:41
380
原创 apache开启server-status监控性能
1.开启mod_status.so 模块cd /usr/local/apache/confvi httpd.conf找到LoadModule status_module modules/mod_status.so去掉前面的#(默认没有,如果有就去掉)2.配置server-status服务方法一:在httpd.conf加入 SetHandler server
2015-01-26 10:10:35
1407
原创 Centos6.6下安装apache2.4
安装以下包需要gcc,请自行安装gcc1.安装apr-1.5.1.tar.gztar -zxvf apr-1.5.1.tar.gz cd apr-1.5.1./configure --prefix=/usr/local/aprmakemake install2.安装apr-util-1.5.4.tar.gztar -zxvf apr-util-1.5.4.tar.gz c
2015-01-26 09:33:49
380
原创 resin4开启jmx
1.修改JAVA_HOME/jre/lib/management/jmxremote.access monitorRole readonly controlRole readwrite \ create javax.management.monitor.*,javax.management.timer.* \ unreg
2015-01-26 08:58:50
2425
2
转载 文件下载出现中文乱码问题
HttpServletRequest request = ServletActionContext.getRequest();String Agent = request.getHeader("User-Agent");if (null != Agent) {Agent = Agent.toLowerCase();if (Agent.indexOf("firefox") != -1
2014-08-26 14:54:13
539
原创 Tomcat报没有权限java.security.AccessControlException
异常信息:严重: Socket accept failedjava.security.AccessControlException: access denied ("java.net.SocketPermission" "[0:0:0:0:0:0:0:1]:52550" "accept,resolve") at java.security.AccessControlContext
2014-08-14 15:55:05
832
原创 获取硬盘的序列号
package com.uniware.license.util;import java.io.BufferedReader;import java.io.File;import java.io.FileWriter;import java.io.IOException;import java.io.InputStreamReader;/** * * De
2014-07-29 13:34:31
597
原创 struts2下载文件时文件名如果包含中文出现错误
解决方法:fileName= new String(fileName.getBytes(),"ISO8859-1");
2014-07-28 11:28:54
444
spring-data-jpa事务不起作用
2015-12-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人