05 2015 档案
摘要:粘包问题的解决策略 由于底层的 TCP 无法理解上层业务数据,所以在底层是无法保证数据包不被拆分和重组的, 这个问题只能通过上层的应用协议栈设计来解决,根据业界主流的协议的解决方案, 可以归纳如下:消息定长, 例如每个报文的大小固定长度200字节,如果不够,空位补齐空格;在包尾部添加回车换行符进行...
阅读全文
摘要:简介 TCP 是一个’流’协议,所谓流,就是没有界限的一串数据. 大家可以想想河里的流水,是连成一片的.期间并没有分界线, TCP 底层并不了解上层业务数据的具体含义 ,它会根据 TCP 缓冲区的实际情况进行包得划分,所以在业务上认为,一个完整的包可能会被 TCP 拆分成多个包进行发送 . 也有可能...
阅读全文
摘要:先啰嗦两句,使用 netty 来搭建服务器程序,可以发现相比于传统的 nio 程序, netty 的代码更加简洁,开发难度更低,扩展性也很好,非常适合作为基础通信框架.下面上代码:Serverpackage time.server.impl;import io.netty.bootstrap.S...
阅读全文
摘要:ZeroMQ 在 centos 6.5_x86_64 下的安装作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs一、ZeroMQ介绍ZeroMQ是一个开源的消息队列系统,按照官方的定义,它是一个消息通信库,帮助开发者设计分布式和并行的应用程序。首先,我们需要...
阅读全文
摘要:eclipse,myeclipse开发环境下,maven远程部署到tomcat7服务器(图文)有的人想在eclipse写java web 项目,通过maven也是一种实现的方法,可以实现java web 项目打包成war,发布到tomcat。在pom.xml文件的build增加下面的代码,相应的地方...
阅读全文