Netty
文章平均质量分 85
iteye_1364
这个作者很懒,什么都没留下…
展开
-
Netty使用初步【转】
1、简介Java1.4提供了NIO使开发者可以使用Java编写高性能的服务端程序,但使用原生的NIO API就像Linux C中网络编程一样,还是需要做IO处理、协议处理等低层次工作。所以,就像C服务端程序大量使用libevent作为网络应用框架一样,Java社区也不断涌现出基于NIO的网络应用框架。在这其中,Jboss出品的Netty就是个中翘楚。Netty是个异步的事件驱动网络应用框架,...原创 2011-09-21 12:52:44 · 99 阅读 · 0 评论 -
Netty代码分析【转】
Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序[官方定义],整体来看其包含了以下内容:1.提供了丰富的协议编解码支持,2.实现自有的buffer系统,减少复制所带来的消耗,3.整套channel的实现,4.基于事件的过程流转以及完整的网络事件响应与扩展,5.丰富的example。本文并不对Netty实际使用中可能出现的问题做...原创 2011-09-28 15:40:53 · 128 阅读 · 0 评论 -
使用netty 作为 http服务器【转】
netty是继mina之后一个非常受欢迎的nio网络框架(其实netty的主程就是mina的主程).其实netty的介绍就不说了,去看项目介绍吧,直接上代码httpserver启动和配置类 import static org.jboss.netty.channel.Channels.pipeline;import java.net.InetSocketAddress;i...原创 2011-09-22 17:45:35 · 114 阅读 · 0 评论 -
netty的粘包 解包问题【转】
view plain1、简介 Java1.4提供了NIO使开发者可以使用Java编写高性能的服务端程序,但使用原生的NIO API就像Linux C中网络编程一样,还是需要做IO处理、协议处理等低层次工作。所以,就像C服务端程序大量使用libevent作为网络应用框架一样,Java社区也不断涌现出基于NIO的网络应用框架。在这其中,Jboss出品的Netty就...原创 2011-09-22 00:16:14 · 178 阅读 · 0 评论 -
netty和 procolbuffers结合使用【转】
ProtocolBuffer是用于结构化数据串行化的灵活、高效、自动的方法,有如XML,不过它更小、更快、也更简单。你可以定义自己的数据结构,然后使用代码生成器生成的代码来读写这个数据结构。你甚至可以在无需重新部署程序的情况下更新数据结构。 需要在 根目录创建 proto 文件夹 存放.proto 的文件(用于生成对应的 java 消息模型) 如需编译MessageFile.P...原创 2011-09-22 00:14:31 · 99 阅读 · 0 评论 -
netty的个人使用心得【转】
Netty是由JBOSS提供的一个java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。 如果需要客户端和服务器端沟通 分别都需要编写一个 实现了SimpleChannelHandler接口的类,其中类中需要重写的主要方法为channelConnected() and channelOpen() 这两个方法...原创 2011-09-22 00:13:44 · 109 阅读 · 0 评论 -
netty心跳代码【转】
类:ServerNIOHandler 别看名字是server它其实是客户端的handler,这个我是用来做反向连接的。所有handler的超类import java.net.ConnectException;import java.util.concurrent.TimeUnit;import org.jboss.netty.bootstrap.ClientBootstrap;import o...原创 2011-09-22 00:12:05 · 129 阅读 · 0 评论 -
通过 AtomicIntegerArray 或 AtomicInteger做简单的洪流控制【转】
在设计系统的时候,为了防止雪崩效应我们都需要加入一些洪流控制,比如你有多个分库的时候,你肯定不会希望见到某一个分库挂掉的时候把整个应用都拖垮,通过一个简单的计数器我们就可以实现简单的洪流控制。 JDK 最新提供的java.util.concurrent.*下的类简化了多线程的编程,atomic类采用经典的compareAndSet模式,在不同步锁的情况下保证了多线程的数据安全,进而极大...原创 2011-09-22 00:00:26 · 131 阅读 · 0 评论 -
使用内嵌的HTTP服务器构建Java WEB应用【转】
通常我们会在众多的J2EE标准的基础上来构建自己的Java WEB应用,比如最常见的Servlet。这样写出来的程序可以在所有符合J2EE标准的WEB服务器上运行,比如Tomcat,JBoss等等。事实上大多数Java WEB项目也正是采用这种架构,这么做有很多很多好处。但是这么做也有一些问题,J2EE标准和J2EE服务器隐藏了大部分的HTTP底层消息处理细节,如果你的应用不需要利用的众多J2EE...原创 2011-09-21 23:58:29 · 227 阅读 · 0 评论 -
Netty服务器线程模型概览【转】
一切从ServerBootstrap开始ServerBootstrap负责初始话netty服务器,并且开始监听端口的socket请求。JAVA 12345678910bootstrap bootstrap = new ServerBootstrap( new NioServerSocketChannelFactory...原创 2011-09-21 23:57:10 · 106 阅读 · 0 评论 -
Netty NIO 框架性能压测-短链接-对比Tomcat【转】
压测方案准备多个文件大小分别为 1k 10k 100k 300k 使用ab分别按 [50,2000](按50逐渐叠加)压测服务,每次请求10W次 硬件信息:CPU:Intel(R) Xeon(R) CPU 1.86GHz ×4 4G 统计脚本:grep "Requests per second:" 300k_* | awk -F':' '{print substr($1,6),$...原创 2011-09-21 23:51:48 · 367 阅读 · 0 评论 -
Netty NIO 框架性能压测 – 长链接【转】
压测准备需要将ulimit -n 改大,否则nio链接开不大。 准备4台机器(1台netty服务器,3台压测机) 使用apache的ab做压测工具 开始干活压测代码:package org.dueam.sample.netty;package org.dueam.sample.netty; import java.io.BufferedRead...原创 2011-09-21 23:50:40 · 202 阅读 · 0 评论 -
Netty学习笔记(一)二进制流协议【转】
一、协议1. 请求: 字段类型说明lengthshort消息长度commandidshort消息类型useridint用户号2. 响应: 字段类型说明...原创 2011-09-21 23:40:13 · 401 阅读 · 0 评论 -
Netty实现原理浅析【转】
Netty是JBoss出品的高效的Java NIO开发框架,关于其使用,可参考我的另一篇文章 netty使用初步。本文将主要分析Netty实现方面的东西,由于精力有限,本人并没有对其源码做了极细致的研 究。如果下面的内容有错误或不严谨的地方,也请指正和谅解。对于Netty使用者来说,Netty提供了几个典型的example,并有详尽的API doc和guide doc,本文的一些内容及图示也来自...原创 2011-09-21 12:53:52 · 130 阅读 · 0 评论 -
Reactor模式和NIO<转>
本文可看成是对Doug Lea Scalable IO in Java一文的翻译。当前分布式计算 Web Services盛行天下,这些网络服务的底层都离不开对socket的操作。他们都有一个共同的结构:1. Read request2. Decode request3. Process service4. Encode reply5. Send reply经典的网络服务的设计如下图,在...原创 2013-05-27 14:20:36 · 170 阅读 · 0 评论