请选择 进入手机版 | 继续访问电脑版

默认
打赏 发表评论 5
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
Netty的架构剖析及应用案例介绍(视频+PPT) [附件下载]
微信扫一扫关注!

演讲概要


本文从性能、可靠性、安全性、可扩展性这几个关键质量属性对Netty的架构进行剖析,使听众对Netty的架构设计有个直观和深入的了解。最后结合Netty在互联网行业的一个典型成功应用案例,来分享如何在实际工作中应用Netty。

演讲者简介


163702b6jii6df6wwkkoiw.jpg 李林锋

2007年毕业于东北大学,2008年进入华为公司从事高性能通信软件的设
计和开发工作,有6年NIO设计和开发经验,精通Netty、Mina等NIO框架。
Netty中国社区创始人,《Netty权威指南》作者。
联系方式:新浪微博 Nettying 微信:Nettying。

演讲提纲


本次演讲主要从以下方面进行组织。

1Netty介绍


Netty是一个异步、事件驱动的网络应用框架。 基于Netty,可以快速的开发和部署高性能、 高可用的网络服务端和客户端应用。

2Netty架构剖析


  • 性能模型:
    通信性能三要素,传输、协议、线程。展开就是IO模型:异步非阻塞I/O、数据协议:可定制的编解码框架、线程模型:Reactor线程模型。
    QQ20160712-0.png
  • 协议:
    支持可定制的序列化框架,包括支持:ProtoBuf、Java序列化、Xml、用户自定义序列化框架。
  • 可靠性:
    主要基于心跳检测、Reactor线程的保护、内存保护、流量整形这几个方面来实现。
  • 安全性:
    支持 SSL认证:SSL单向认证和SSL双向认证、IP黑白名单校验、接入认证。
  • 逻辑架构:
    QQ20160712-1.png


3Mina VS Netty


相同点:
  • 基于Reactor模式的NIO框架;
  • 基于链式的Handler编排机制;
  • 对JDK的NIO类库进行了封装,屏蔽底层细节。

不同点:
  • ByteBuffer的封装和功能不同;
  • I/O 线程模型不同;
  • 内置的编解码能力不同;
  • 内置的应用层协议不同;
  • 当前活跃度不同;
  • 功能的丰富度不同;
  • 未来的前景不同。

4Netty的应用案例介绍


互联网方面的应用:
QQ20160712-2.png
互联网架构演进是由垂直架构向分布式服务框架的演进。

阿里巴巴的Dubbo框架:
QQ20160712-3.png
Dubbo的RPC远程服务调用默认使用Netty+Dubbo协议实现: Dubbo RCP框架默认推荐使用Dubbo协议进行通信和数据传输,相比于老的 Hessian协议性能更高,且支持异步I/O通信。

Twitter:
Netty在Twitter得到了大量的应用: Finagle是Twitter协议无关的RPC框架,用于 实现大部分内部服务,如搜索,它的传输层建立在 Netty之上。TFE(Twitter前端)是专有的填鸭式反向代理, 它使用Netty为大部分面向公众的HTTP和 SPDY流量提供服务 。Cloudhopper每月使用Netty向遍布世界各地数以百计的运营商发送数十亿条短信息。

FaceBook:
Nifty是facebook公司开源的,基于netty的 thrift服务端和客户端实现。 Thrift是一个可伸缩的跨语言的服务开发框架, 利用Nifty可以快速开发基于Netty的thrift服务端和客户端程序。

雅虎:
Yahoo工程师Bobby Evans:Netty让Storm飞速运行。在小规模测试中(没有资源冲突),Netty比zeromq更快(40-100%) ;在大规模测试中,当把它限制在单线程上,我们每秒能够获得比zeromq多85%到111%的消息;Netty现在是Yahoo Storm集群的默认消息层框架。

大数据方面:
Apache Avro是Hadoop、Flume等的底层序列化和数据传输框架。 老版本的Avro基于HTTP协议提供服务,新版本默认基于Netty提供序列化和数据传输能力。

Netty行业应用总结:
  • 高并发:由于采用异步非阻塞模式,一个Netty 服务端可以同时处理成千上万的客户端;
  • 高性能:Netty的综合性能在各个NIO框架中最 高,它的单节点吞吐量非常高;
  • 安全性:支持HT TPS、SSL等,可以在传输层 进行安全控制;
  • 定制性:可以方便的实现业务逻辑的定制;
  • 可靠性:内存保护、流量整形等。

本次演讲视频



如果上方视频无法观看:您也可点此观看如还不能播放请使用Firefox浏览器!

演讲PPT下载


Netty的架构剖析及其生产应用案例介绍(52im.net).pdf (775.36 KB , 下载次数: 68 , 售价: 2 金币)

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

标签:Netty
上一篇:Android版高仿微信聊天界面源码 [附件下载]下一篇:手机QQ的海量用户移动化实践分享(视频+PPT) [附件下载]

本帖已收录至以下技术专辑

推荐方案
评论 5
好东西,李林峰的演讲可以看看
项目马上要用到Dubbo了,这玩意看起来真大啊
签名: 星期六,那又怎样,还是得上班
学习,谢谢分享
好东西,李林峰的演讲可以看看
谢谢分享~
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部