第一节 netty概述

netty作为java异步并发的框架可以说在很多中间件和框架中都有用到

借用官网首页描述

Netty是一个异步事件驱动的网络应用程序框架 用于快速开发可维护的高性能协议服务器和客户端。

netty结构图

netty几个如下特点

  • 从设计上

适用于多种传输类型,统一API 可以使用阻塞和非阻塞模式 基于灵活且可扩展的事件驱动模型,可以清晰地分离关注点 高度可定制的线程模型 - 单线程,一个或多个线程池

  • 使用方便
  • 性能高

吞吐量更高,延迟更低 减少资源消耗 最小化不必要的内存复制(支持堆外内存零拷贝)


如果开发使用可以直接引入依赖使用

<!-- https://mvnrepository.com/artifact/io.netty/netty-all -->
<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-all</artifactId>
    <version>4.1.30.Final</version>
</dependency>

作为学习,可以直接下载源码学习。netty项目源码中也提供了例子。

  • 配置可调试的工程 netty4 用户手册 我们选择从github上直接拉去当前版本作为基础工程
git clone git@github.com:netty/netty.git

至此基本就可以开始探索了

官网

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏十月梦想

CentOS 添加环境变量

环境变量具体用途不过多介绍,和window平台下作用一样,不知道环境变量做什么的想必也没有看下去的必要!

17320
来自专栏pangguoming

CentOS怎样查看系统信息

一、查看系统版本和核心版本 1 登陆CentOS,启动终端。 ? 2 登陆root帐户,输入 cat  /etc/redhat-relea...

35840
来自专栏杨建荣的学习笔记

vi的补充学习(r4笔记第25天)

今天突然发现vi虽然用了些日子了,但是常用的一些命令之外,还是有些命令比较生疏,简单总结了一下,然后自己在vi里面编辑了一把,效果还不错。 对于大家比较熟悉且常...

339100
来自专栏Java工程师日常干货

玩转Redis集群(下)Redis集群操作实践Redis实现Session共享Java操作Redis与Spring整合

从上面的操作,你可以看到,当存储某一个数据的时候,会分配一个slot,而这个slot从属于某一个Master,也就是说你需要明白,数据是分布的存储在Redis集...

9710
来自专栏张伟博客

SVN的备份及恢复

11840
来自专栏菩提树下的杨过

VMware Fusion 中如何复制centos/linux虚拟机

今天想在mac本上,弄几个centos的虚拟机,尝试搭建hadoop的全分布环境。一台台虚拟机安装过去太麻烦了,想直接将现有的centos虚拟机复制几份完事,但...

30170
来自专栏linux驱动个人学习

Git的gc功能

Git的底层并没有采用 CVS、SVN 底层所采用的那套增量式文件系统,而是采用一套自行维护的存储文件系统。当文件变动发生提交时,该文件系统存储的不是文件的差异...

35350
来自专栏散尽浮华

Centos中yum方式安装java

查看CentOS自带JDK是否已安装。 ◆输入:yum list installed |grep java。 若有自带安装的JDK,如何卸载CentOS系统自带...

27480
来自专栏向治洪

ngnix服务器搭建

 1.  到nginx官网上下载相应的安装包,http://nginx.org/en/download.html;下载进行解压,将解压后的文件放到自己心仪的目...

25890
来自专栏我有一个梦想

Python 项目实践三(Web应用程序) 第三篇

接着上节的继续学习,现在要显示所有主题的页面 有了高效的网页创建方法,就能专注于另外两个网页了:显示全部主题的网页以及显示特定主题中条目的网页。所有主题页面显示...

20380

扫码关注云+社区

领取腾讯云代金券