摘要: 早上一台rabbitmq和Java所在的服务器,客户端反馈超级卡,看io和cpu都不高。发现六七万消息挤压,临时性问题解决之后,看/var/log/messages,发现很多TCP: time wait bucket table overflow,如下所示: Nov 22 10:36:08 iZ23 阅读全文
posted @ 2016-11-22 15:49 zhjh256 阅读(472) 评论(0) 推荐(0) 编辑
摘要: 设计一个好的框架和设计一个好的软件一样,需要考虑的方面很多,比如扩展性、性能、用户体验、稳健性等等,视不同的场景,每个点都可能导致成败,但他们通常并不是老板们关心的,因为在大部分情况下,他们通常都没有做到极限的渴望,或者说相比业务来说,一台机器不够上两台、十台不够上百台,没什么大不了的,反正花的都是 阅读全文
posted @ 2016-11-22 12:53 zhjh256 阅读(1267) 评论(0) 推荐(0) 编辑
摘要: 有段时间没搞oracle了,最近要给别人在win 7下装个oracle 10g,特记录备忘下。 使用http://download.oracle.com/otn/nt/oracle10g/10201/10201_database_win32.zip,直接迅雷可下载 解压后,更改..\db\Disk1 阅读全文
posted @ 2016-11-22 09:13 zhjh256 阅读(509) 评论(0) 推荐(0) 编辑
摘要: 在通过MapperScannerConfigurer启用了mybatis的映射器之后,默认情况下,在basePackage下的所有接口类都会被无条件的自动代理,如下所示: 此时,无论com.ld.platform.*.dao下的类是否具有对应的实现类,在自动注入的时候,mybatis都会根据完整类型 阅读全文
posted @ 2016-11-21 17:20 zhjh256 阅读(2264) 评论(0) 推荐(0) 编辑
摘要: d:\>netstat -ano | findstr "7777" TCP 127.0.0.1:7776 127.0.0.1:7777 ESTABLISHED 11764 TCP 127.0.0.1:7777 127.0.0.1:7776 ESTABLISHED 11764 阅读全文
posted @ 2016-11-21 17:10 zhjh256 阅读(385) 评论(0) 推荐(0) 编辑
摘要: 最近有个jar改了名字后,有个依赖它的工程死活引用的是老名字,导致打包的时候出错,如下所示: [INFO] [INFO] Building com.ld.base.runtime 1.0.0-SNAPSHOT[INFO] [WARNING] The POM for org.jxls:jxls:jar 阅读全文
posted @ 2016-11-21 17:09 zhjh256 阅读(18224) 评论(0) 推荐(0) 编辑
摘要: 请访问https://git.oschina.net/zhjh256/io-spider获取最新更新。 spider提供了多重安全保障机制,目前主要支持接入握手校验,报文完整性校验,报文加密,报文长度检查四种机制。 接入认证 spider使用两次握手校验,其握手流程如下: 签名AES加密的方式实现。 阅读全文
posted @ 2016-11-20 21:46 zhjh256 阅读(397) 评论(0) 推荐(0) 编辑
摘要: 关于backbone.js的优缺点,这里就不详谈了,网上关于这方面的讨论很多了,而且各种框架之所以长久生存,通常都是有其特定优势和擅长点的。 使用backbone.js作为前端框架的应用通常都是html和javascript分离的,也可参考requirejs的结构。 本文介绍backbone.js的 阅读全文
posted @ 2016-11-20 21:38 zhjh256 阅读(917) 评论(0) 推荐(0) 编辑
摘要: 请访问https://git.oschina.net/zhjh256/io-spider获取最新更新。 协议与兼容性 spider使用java语言开发,使用Spring作为IoC容器,采用TCP/IP协议,在此基础上,结合SaaS系统模式的特性进行针对性和重点设计,以更加灵活和高效的满足多租户系统、 阅读全文
posted @ 2016-11-19 21:46 zhjh256 阅读(444) 评论(0) 推荐(0) 编辑
摘要: 请访问https://git.oschina.net/zhjh256/io-spider获取最新更新。 spider有一个配置文件spider.xml,为xml格式,spider.xml采用DTD进行管理,用于管理spider的所有特性、路由、高可用等。 配置文件支持三种不同的方式进行指定: 1、 阅读全文
posted @ 2016-11-19 19:07 zhjh256 阅读(1735) 评论(2) 推荐(1) 编辑
摘要: 请访问https://git.oschina.net/zhjh256/io-spider获取最新更新。 本部分将介绍使用spider RPC开发分布式应用的客户端和服务端。 spider RPC中间件基于J2SE 8开发,因此需要确保服务器上安装了JDK 8及以上版本,不依赖于任何额外需要独立安装和 阅读全文
posted @ 2016-11-19 16:35 zhjh256 阅读(849) 评论(0) 推荐(0) 编辑
摘要: 请访问https://git.oschina.net/zhjh256/io-spider获取最新更新。 测试环境部署结构 测试用例 public @ResponseBody String t1001(Model model,HttpServletRequest request){ PlatformR 阅读全文
posted @ 2016-11-19 16:23 zhjh256 阅读(603) 评论(0) 推荐(0) 编辑
摘要: 请访问https://git.oschina.net/zhjh256/io-spider获取最新更新。 spider RPC 特性介绍 spider RPC 性能测试 spider RPC 入门指南 spider RPC 配置文件参考 spider RPC 开发指南 spider RPC 安全性 s 阅读全文
posted @ 2016-11-19 16:04 zhjh256 阅读(481) 评论(0) 推荐(0) 编辑
摘要: 今天安装wordpress完成后跳转到login页面时,出现建立数据库连接时出错。网上清一色的拷贝http://mt.sohu.com/20160917/n468547634.shtml的答案。 只能说这可能是一个原因,但你TMD能不说不外乎么?坑爹的货。。。 最后,检查了下表里面的记录,结果发现每 阅读全文
posted @ 2016-11-18 15:04 zhjh256 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 因为要搭建个知识库,直接用wordpress,这前提是得先装php,实在不喜欢XAMPP,所以自己折腾,没想到php这一来还不少啊,从头到尾折腾了一个小时多。记录下主要的流程和遇到的坑。 首先官网下载php,http://php.net/downloads.php,用的是5.6.28的版本。 下载后 阅读全文
posted @ 2016-11-18 13:53 zhjh256 阅读(10819) 评论(0) 推荐(1) 编辑
摘要: 前一篇说了jsrender嵌套循环的使用,在SPA的应用中,广泛使用的一个点就是view模板,使用了SPA之后,每个业务页面不再是独立的html,仅仅是一个segment,所以通常这些segment会被独立的存储,而不是跟demo一样嵌在宿主页面中。因为jsrender的模板本质上就是一个strin 阅读全文
posted @ 2016-11-17 12:23 zhjh256 阅读(1062) 评论(0) 推荐(0) 编辑
摘要: 最近在参与整合前端的框架,我们知道javascript最强大的模板引擎之一当属jsrender,号称下一代jquery模板引擎的标准实现。 通常在模板merge的过程中,我们会遇到两次乃至三级嵌套的情形,强大的jsrender自然会支持,如下所示: 效果如下: 阅读全文
posted @ 2016-11-17 11:35 zhjh256 阅读(2675) 评论(0) 推荐(0) 编辑
摘要: 今天在测公司的中间件时发现,增加netty自带的zlib codec压缩处理后,就报decompress failed, invalid head之类的异常。后来发现,直接用bytebuf处理报文体是正常的,但是增加了stringencoder/decoder之后,就会出现这个异常。本来之前就想把这 阅读全文
posted @ 2016-11-16 20:20 zhjh256 阅读(2922) 评论(3) 推荐(0) 编辑
摘要: 自从大规模使用了虚拟化之后,大流量时soft interrupt在某个cpu很高就是个严重的问题,最近一有时间就研究这个问题,如果网卡本身不支持多队列的话,有没有办法缓解这个问题。 一开始使用rps,效果不是很好,总体来说,设置rps之后,其他cpu确实分担了部分si,但实际效果并不明显。 后来,考 阅读全文
posted @ 2016-11-15 18:59 zhjh256 阅读(1850) 评论(1) 推荐(0) 编辑
摘要: 昨天一早,开发人员反馈说一个测试环境报Tablespace is missing for table 'db_rsk/XXX",周末刚升级过,特地让开发回去查了下,说脚本中肯定没有drop table的操作。datadir下检查了下,发现frm文件在的ibd文件没有了,bing了下,没发现类似异常。 阅读全文
posted @ 2016-11-15 11:52 zhjh256 阅读(10726) 评论(0) 推荐(0) 编辑
摘要: 之所以sockjs会存在,说得不好听点,就是因为微软是个流氓,现在使用windows 7的系统仍然有近半,而windows 7默认自带的是ie 8,有些会自动更新到ie 9,但是大部分非IT用户其实都不愿意或者不会升级(通常我们做IT的认为很简单的事情,在其他行业的人来看,那就是天书,不要觉得不可能 阅读全文
posted @ 2016-11-10 19:10 zhjh256 阅读(24756) 评论(3) 推荐(2) 编辑
摘要: 今天,某个环境又发生了死锁,如下: *** (1) TRANSACTION:TRANSACTION 735307073, ACTIVE 0 sec insertingmysql tables in use 1, locked 1LOCK WAIT 6 lock struct(s), heap siz 阅读全文
posted @ 2016-11-10 17:52 zhjh256 阅读(1673) 评论(0) 推荐(0) 编辑
摘要: 有些场景下,在实现一些基础服务和拦截器的时候,我们可能需要在不知道JSON字符串所属对象类型的情况下,对JSON字符串中的某些属性进行遍历和修改,比如,设置或查询一些报文头字段。 在jackson中,使用最多的JsonNode抽象类并没有提供修改节点值的方法,而是在ObjectNode节点中提供修改 阅读全文
posted @ 2016-11-10 09:28 zhjh256 阅读(18169) 评论(1) 推荐(0) 编辑
摘要: 最近在高并发的系统中发现,concurrenthashmap除了大家熟知的避免循环期间发生ConcurrentModificationException异常外,还有重要的一点是Retrievals reflect the results of the most recently completed  阅读全文
posted @ 2016-11-09 13:21 zhjh256 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 最近公司计划将风控逻辑移到slave库进行计算,因为考虑到业务表数据会比较大,此时如果还是走nest-loop的话,即使unique进行连接,因为还是需要至少2次以上LIO才能读一条记录,如果达到类似hash join效果的话,在大数据量下,性能通常可以大幅度提升。 因为memory引擎支持hash 阅读全文
posted @ 2016-11-09 09:41 zhjh256 阅读(878) 评论(0) 推荐(0) 编辑
摘要: 最近,将部分开发和测试环境的mysql升级到5.7之后,今天抽时间测试了下5.6和5.7 PK查询的性能,使用mysqlslap进行测试,测试结果发现在低配下,percona 5.6.31大约比5.7.15快20-30%左右,percona 5.7.15比mysql企业版5.7.16快10%左右,如 阅读全文
posted @ 2016-11-08 19:18 zhjh256 阅读(1154) 评论(0) 推荐(0) 编辑
摘要: 最近在考虑公司主要基础三方库版本统一和升级的问题,特看了下tomcat jdk servlet websocket版本的对应关系,如下: nginx前置的j2ee websocket 1.1完整实现方案如下。 js端(一般来说单页面只应该建立最多一两个ws,非单页面也应该仅在portal及一些首页用 阅读全文
posted @ 2016-11-07 07:37 zhjh256 阅读(801) 评论(0) 推荐(0) 编辑
摘要: 使用标准的JSR 356注解时,需要使用tomcat 8.x版本,如果使用tomcat 7.x的版本,则需要继承WebSocketServlet,否则会报WebSocket connection to,Error during WebSocket handshake: Unexpected resp 阅读全文
posted @ 2016-11-05 12:25 zhjh256 阅读(1237) 评论(0) 推荐(0) 编辑
摘要: 最近为了省事,决定从excel将表结构生成jquery.datatable的json对象结构,其中要把下划线转驼峰,如下: =LEFT(C251,1)&MID(SUBSTITUTE(PROPER(C251),"_",""),2,100) 阅读全文
posted @ 2016-11-04 16:41 zhjh256 阅读(3395) 评论(0) 推荐(2) 编辑
摘要: possible SYN flooding on port 7244. Sending cookie 阅读全文
posted @ 2016-11-03 11:06 zhjh256 阅读(1294) 评论(0) 推荐(0) 编辑
摘要: kernel: EXT4-fs (dm-0): Unaligned AIO/DIO on inode 1055943 by mysqld; performance will be poor 阅读全文
posted @ 2016-11-03 11:05 zhjh256 阅读(668) 评论(0) 推荐(0) 编辑
摘要: 在有些严格的系统中,我们需要做到干净的停止线程并清理相关状态。涉及到这个主题会带出很多的相关点,简单的总结如下: 我们知道,在java中,有一个volatile关键字,其官方说明(https://docs.oracle.com/javase/tutorial/essential/concurrenc 阅读全文
posted @ 2016-11-02 13:04 zhjh256 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 实现上看,两者都继承于AbstractQueue,但是ConcurrentLinkedQueue实现了Queue,而LinkedBlockingQueue实现了BlockingQueue,BlockingQueue又继承于Queue,增加了几个额外的阻塞方法,而在ConcurrentLinkedQu 阅读全文
posted @ 2016-11-02 12:43 zhjh256 阅读(445) 评论(0) 推荐(0) 编辑
摘要: 有些时候,需要对特定环境中的Java应用进行实时性能分析,大部分非开发和测试环境(这两者可以使用jprofiler,最佳java性能诊断工具),一般都是用jvisualvm进行基本检测以最小化对系统的影响(其开启后,负载影响大约20%—30%),jvisualvm没有提供cli模式,只提供了GUI。 阅读全文
posted @ 2016-11-02 12:37 zhjh256 阅读(400) 评论(0) 推荐(0) 编辑
摘要: 今日,测试公司自行开发的一rpc中间件,期间发现top si的比例很高,且几乎只有一个cpu是繁忙的,其他均基本为0。 经查,si主要是系统软中断,最后确定是网卡导致的系统中断。于是,往上搜了下资料,主流的用法是如果网卡支持多队列的,则启用之。 常用的Intel的82575、82576,I350,B 阅读全文
posted @ 2016-11-01 18:53 zhjh256 阅读(4572) 评论(0) 推荐(0) 编辑
摘要: 今早,把开发环境的mysql升级到了5.7.15,5.6数据导入后,启动一切正常,检查.err日志,发现有如下异常: 2016-10-31T00:29:33.187073Z 0 [Warning] System table 'time_zone_leap_second' is expected to 阅读全文
posted @ 2016-10-31 08:56 zhjh256 阅读(1456) 评论(0) 推荐(0) 编辑
摘要: 今天一大早到公司,计划把开发环境的mysql升级到5.7.15,干净关闭系统后,把目录从5.6指向到5.7,一切正常,重新指向5.6启动时,报下列错误: 2016-10-31 08:13:14 86998 [ERROR] Plugin 'InnoDB' init function returned 阅读全文
posted @ 2016-10-31 08:36 zhjh256 阅读(3034) 评论(0) 推荐(0) 编辑
摘要: 最近测试netty开发的服务端应用在关闭时,出现下列异常: -》###WARN#########nioEventLoopGroup-3-2###io.netty.util.internal.logging.Slf4JLogger.warn(Slf4JLogger.java:151)###Failed 阅读全文
posted @ 2016-10-29 15:08 zhjh256 阅读(1784) 评论(0) 推荐(0) 编辑
摘要: 0、其实常规的逻辑判断结构、工具类、文件读写、控制台读写这些的关系都不大,熟悉之后,这些都是灵活运用的问题。 学习c/c++需要预先知道的一个前提就是,虽然有ANSI C标准,但是每个c/c++编译器的实现在不少实用特性(除了标准库外)上存在着很大的差异,所以最好的方法是先针对某种实现(可参考标准) 阅读全文
posted @ 2016-10-28 12:45 zhjh256 阅读(2407) 评论(0) 推荐(0) 编辑
摘要: 通常在使用了jdbc或者netty的应用程序中,当shutdown tomcat或java应用程序时,会出现无法停止的情况,报类似如下错误: 严重: The web application [] registered the JDBC driver [com.mysql.jdbc.Driver] b 阅读全文
posted @ 2016-10-27 21:02 zhjh256 阅读(1846) 评论(0) 推荐(0) 编辑