NIO和Netty
Java开发面试辅导-海龟老师
毕业于浙江大学软件工程硕士,在BAT一线大厂担任架构师工作,作为面试官有丰富的面试经验,以及项目架构经验
展开
-
基础知识概念(1):Socket 长连接和短连接的概念
1.短连接连接->传输数据->关闭连接 HTTP是无状态的,浏览器和服务器每进行一次HTTP操作,就建立一次连接,但任务结束后就中断连接。短连接是指SOCKET建立连接后 ,发送后或接收完数据后,就马上断开连接。2.长连接连接->传输数据->保持连接->传输数据->....->关闭连接 长连接指建立SOCKET连接后不管是否使用都保持连接,但安...原创 2018-03-22 20:33:56 · 737 阅读 · 0 评论 -
Netty学习(2): protobuf序列化框架学习
1. protobuf是什么 protobuf是google旗下的产品,用于序列化与反序列化数据结构,但是比xml更小、更快、更简单,而且能跨语言、跨平台。你可以把你的数据按你的要求结构化,然后可以转化成多种数据流,同时其他语言可以通过不同的流转化成自己熟悉的语言的数据格式。如C++语言开发者,定义了一个User数据结构,java开发者可以把此数据流轻易的转化成java环境下的数据结构。 ...原创 2018-04-14 16:03:23 · 462 阅读 · 0 评论 -
Netty学习(1):Channel的概念
1. ChannelChannel是Netty的核心概念之一,它是Netty网络通信的主体,由它负责同对端进行网络通信、注册和数据操作等功能。1.1 工作原理如上图所示:一旦用户端连接成功,将新建一个channel同该用户端进行绑定channel从EventLoopGroup获得一个EventLoop,并注册到该EventLoop,channel生命周期内都和该EventLoop在一起(注册时获得...原创 2018-04-17 16:53:04 · 1798 阅读 · 2 评论 -
Netty学习(3): 客户端和服务端的例子
服务端:package com.server; import io.netty.bootstrap.ServerBootstrap; import io.netty.channel.Channel; import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelInitializer; import io.netty....原创 2018-05-15 21:32:25 · 591 阅读 · 0 评论