Git Product home page Git Product logo

netty4-samples's Introduction

《Netty4核心原理与手写RPC框架实战》

在互联网分布式系统的推动下,Netty是作为一个能够支撑高性能高并发的底层网络通信框架而存在。Netty底层是基于Java NIO来实现的,对NIO进行了非常多的优化,因此深受广大开发者尤其是一线大厂开发者的青睐。

作为一个Java开发人员,如果没有研究过Netty,那么你对Java语言的使用和理解仅仅停留在表面,会点SSH,写几个MVC,访问数据库和缓存,这些只是初级Java程序员干的事。如果你要进阶,想了解Java服务器的深层高阶知识,Netty是一个必须要跨越的门槛。学会了Netty,你可以实现自己的HTTP服务器、FTP服务器、UDP服务器、RPC服务器、WebSocket服务器、Redis的Proxy服务器、MySQL的Proxy服务器等。

★如果你想知道Nginx是怎么写出来的,

★如果你想知道Tomcat和Jetty是如何实现的,

★如果你也想实现一个简单的Redis服务器,

......

那都应该好好研究一下Netty,它们高性能的原理都是类似的。

因为Netty5.x版本已被官方弃用,本书内容基于Netty 4版本来分析其核心原理,培养高级程序员自己造轮子的能力。全书不仅讲述理论知识,并且围绕能够落地的实战场景,开创手写源码的学习方式,使读者学习源码更加高效。本书主要特色是首次提供了基于Netty手写RPC框架,基于Netty手写消息推送系统等实战案例。

关于我

为什么说我来自文艺界?

  我自幼爱好书法和美术,长了一双能书会画的手,而且手指又长又白,因此以前的艺名叫“玉手藝人”。中学期间,曾获市级书法竞赛一等奖,校园美术竞赛一等奖,校园征文比赛二等奖。担任过学生会宣传部长,负责校园黑板报、校园刊物的编辑、排版、设计。   2008年参加工作后,做过家具建模、平面设计等工作,亲自设计了咕泡学院的Logo。做讲师之后,给自己起了一个跟姓氏谐音的英文名字“Tom”,江湖人称“编程界写字写得最好的、书法界编程最牛的文艺汤”。

我的技术生涯

  我的IT技术生涯应该算是从2009年开始的,在此之前做过UI设计,做过前端网页,到2009年才真正开始参与Java后台开发。在这里要感谢所有帮助过我入门编程的同事和老师。从2010年至2014年担任过项目组长、项目经理、架构师、技术总监,对很多的开源框架建立了自己的独特见解。我会习惯性地用形象思维来理解抽象世界。譬如:看到二进制0和1,我会想到《周易》中的两仪——阴和阳;看到颜色值用RGB表示,我会想到美术理论中的太阳光折射三原色;下班回家看到炒菜流程,我会想到模板方法模式;坐公交车看到学生卡、老人卡、爱心卡,我会想到策略模式;等等。大家看到的这本书,很多地方都融入了这种形象思维。

为什么写书?

  自2019年《Spring 5核心原理与30个类手写实战》出版以来,深受广大读者喜爱,有些学员将此书作为学习的参考教材。为继续满足大家对技术的追求,借此机会将本人多年对Netty的研究笔记整理成书奉献给各位“汤粉”。 在此,特别感谢责任编辑董英、李秀英及电子社的团队成员的付出,尤其在疫情期间,即使是远程办公也同样坚守岗位审稿至深夜。

技术交流

image

推荐《Spring5核心原理与30个类手写实战》,4个月销量破万,连续占据畅销榜。

推荐《设计模式就该这样学》已全面开启预售!!!

netty4-samples's People

Contributors

gupaoedu-tom avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.