Netty 3.7.0 Final 第一篇

netty简介:

做游戏的都知道,netty和mina是网络层通讯流行的两种socket框架。mina出现的早些,属于apache,netty目前更新比较稳定,5暂时还处于alpha版本,本系列netty前四篇主要是介绍目前比较用的多的3系列,后面会简要的说到netty4和mina。

netty是网络通讯框架,为什么要使用netty?使用netty有什么好处?基于Java nio的编程的难度其实可以参考Reactor模型,多路复用这些,监听端口,建立线程,关闭连接等等,这些想着都觉得很复杂,而我们使用netty后,可以不考虑这些底层通讯的内容,直接处理我们的业务逻辑。

理解netty的关键,除了需要补充nio的知识,还有一个就是它的事件。

用简要的一句话概括netty:channel是管道,是channelEvent的产生者,channelEvent通过channelHandler处理,channelPipeline就是channelHandler的集合。

以前面试的一家游戏公司问到了关于mina框架的bug,以及为什么选用netty,以及两者之间的区别。

时间: 2024-12-06 22:49:29

Netty 3.7.0 Final 第一篇的相关文章

Kinect For Windows2.0开发第一篇之搭建环境

一.环境需求: 1.Windows8,8.1     以上操作系统,Visual Studio2012以上 2.如果你有一台XboxOne上的Kinect就不用单独购买Kinect了,直接拿来做开发就可以,只需要去微软商城购买一台Kinect For Windows2.0Adapter 适配器就OK. 3.机器必须原生支持USB3.0,经过验证USB2.0无法使用,在京东购买了个PCI-E的转USB3.0的接口,测试发现不支持,看来必须是原生支持usb3.0才能用. 4.安装kinect con

WF4.0 Activities<第一篇>

一.WriteLine Activity WriteLine用于往控制台输出一段字符串.WriteLine有两个属性"Text"与"TextWriter". Text:接收一段字符串,然后用TextWriter输出! TextWriter:接收一个TextWriter对象,用TextWriter输出Text的内容! 分别设置其属性如下: 代码如下: namespace WorkflowConsoleApplication1 { class Program { sta

从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)

从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 网上的 AlwaysOn可以说是非常的多,也可以说是非常的千篇一律,而且很多都是搭建非常顺利的,没有坑的,难道搭建 AlwaysOn真的可以这麽顺利吗?????? 由于公司使用的是最新的Windows Server 2012 R2,网上用的都是Windows Server 2008 R2 ,2012 R2和2008 R2在故障转移集群界面菜单和AD 服务管理工具 已经有较大变化,有一些步骤跟Windows Server 20

Cocos2d-x3.0游戏实例之《别救我》第一篇——前言

我们能学到什么? 这是一个很简单的游戏,但是用到的东西比较多(对新手而言),起码,对于一个实例来说,它涉及的确实有点多. 笨木头花心贡献,啥?花心?不呢,是用心~ 转载请注明,原文地址:http://www.benmutou.com/blog/archives/797 文章来源:笨木头与游戏开发 通过这个游戏实例,可爱的你(小若:那不可爱的人呢?),可以学到以下知识点: 1. Cocos2d-x3.0物理引擎的简单使用 2. 读取Json文件作为怪物和物品配置 3. 利用Tiled地图实现可视化

零基础学cocos2dx 3.0(顺带学C++)第一篇 切换场景

不会去重复一些概念性的东西,具体的内容,我在代码中已经备注出来.先看目录,这个创建完项目目录的Classes文件夹下有4个文件,我把helloworld那两个文件直接改了名字,这里我叫MainScene .切记,在改为名字之后需要到appDelegate.pp里面把对应的helloworld改过来. 废话不多说,直接上代码 1,appDelegate.h #ifndef _APP_DELEGATE_H_ #define _APP_DELEGATE_H_ #include "cocos2d.h&q

C#4.0语法糖之第一篇:自动属性&隐式类型

今天给大家分享一下C#语法糖的简单的两个知识点吧. 自动属性:在 C# 4.0 和更高版本中,当属性的访问器中不需要其他逻辑时,自动实现的属性可使属性声明更加简洁. 客户端代码还可通过这些属性创建对象. get and set accessors." id="mt3">如下面的示例所示声明属性时,编译器将创建一个私有的匿名支持字段,该字段只能通过属性的 get 和 set 访问器进行访问. 我们C#4.0以前的传统方式的属性是用来封装字段的,这里我简单的对比一下这两种方

U-BOOT-2016.07移植 (第一篇) 初步分析

U-BOOT-2016.07移植 (第一篇) 初步分析 目录 U-BOOT-201607移植 第一篇 初步分析 目录 编译和移植环境 更新交叉编译工具 1 下载arm-linux-gcc 443 2 安装arm-linux-gcc 443 安装环境Ubuntu 910 下载u-boot-201607并解压 分析顶层Makefile 1 找出目标依赖关系 2 总结 初次编译u-boot 1 配置 2 编译 分析u-boot启动流程 1 分析startS 2 分析crt0S 3 总结 1. 编译和移

宇哥带你飞之Android多线程与异步任务--第一篇

本人工作已经一年多了,具体点说已经一年多3个月了,实习的早,过早的受到了社会的蹂躏.今年6月多份毕业了,然后就到了一个比较大的公司,具体名字就不说了,就是妹子超级超级多....在学校学的是游戏,cx之类的,但是鬼使神差的毕业后跟着同学就干上了应用,多亏了我的第一个老板--李金波,超级感谢~ 好了,废话不多说了,接下来就开启Android多线程与异步任务的学习吧,由于内容有点多,分几篇博客来和大家扯淡~ 学习Android当然就避免不了学习java,java中也有多线程还有线程之间的同步问题等等~

Android开源框架Afinal第一篇——揭开圣女的面纱

Android开源框架Afinal第一篇——揭开圣女的面纱 分类: Android开源框架哪点事2013-09-02 14:25 260人阅读 评论(0) 收藏 举报 Afinal 这是Afinal在github的地址:https://github.com/yangfuhai/afinal Afinal这个框架主要分4块: 1.FinalDB模块:android中的orm框架,一行代码就可以进行增删改查.支持一对多,多对一等查询. 2.FinalActivity模块:android中的ioc框架