netty
hyun001
这个作者很懒,什么都没留下…
展开
-
netty实现websocket例子
实现功能:基于Netty的NIO通信框架,提供高性能的异步通信能力;提供消息的编解码框架,可以实现POJO的序列化和反序列化;提供基于IP地址的白名单接入认证机制;链路的有效性校验机制;链路的断连重连机制。代码实现相关vo:消息的类型定义/** * @author yun * 类说明:消息的类型定义 */public enum MessageType { SERVICE_REQ((byte) 0),/*业务请求消息*/ SERVICE_RESP((byte) 1)原创 2020-10-18 17:50:35 · 293 阅读 · 1 评论 -
使用netty实现websocket通信demo
客户端启动类:/** 这是WebSocket客户端的示例。 要运行此示例,需要兼容的WebSocket服务器。 因此,可以通过运行WebSocketServer来启动WebSocket服务器, */public final class WebSocketClient { static final String URL = System.getProperty("url", "ws://127.0.0.1:8080/websocket")原创 2020-10-18 17:02:50 · 453 阅读 · 0 评论 -
短轮询、comet、websocket与spring整合代码例子
短轮询 function showTime(){ $.get("showTime",function (data) { console.log(data); $("#serverTime").html(data); }) } setInterval(showTime, 1000);原创 2020-10-17 16:00:55 · 308 阅读 · 0 评论 -
netty之udp单播demo
提问端/** * @author yun * 类说明:发送端 */public class UdpQuestionSide { public final static String QUESTION = "告诉我一句古诗"; public void run(int port) throws Exception{ EventLoopGroup group = new NioEventLoopGroup(); try {原创 2020-10-11 16:31:44 · 210 阅读 · 0 评论 -
netty之使用MessagePack序列化及使用LengthFieldPrepender处理粘包和半包
客户端/** * 作者:yun * 创建日期:2018/08/26 * 类说明: */public class ClientMsgPackEcho { private final String host; public ClientMsgPackEcho(String host) { this.host = host; } public void start() throws InterruptedException { Ev原创 2020-10-11 13:51:11 · 228 阅读 · 0 评论 -
netty之使用protobuf序列化例子
protobuf文件生成从https://github.com/protocolbuffers/protobuf/releases下载protoc-3.13.0-win64.zip解压得到protoc.exe在同一目录下创建test.proto,内容如下:syntax = "proto2";option java_package = "com.netty.protobuf";option java_outer_classname = "PersonProto"; message Person原创 2020-10-11 13:29:00 · 242 阅读 · 0 评论 -
netty写一个http服务器
一、客户端客户端启动类/** * @author yun * 类说明: */public class HttpClient { public void connect(String host, int port) throws Exception { EventLoopGroup workerGroup = new NioEventLoopGroup(); try { Bootstrap b = new Bootstrap();原创 2020-10-08 18:21:53 · 149 阅读 · 0 评论 -
netty解决粘包和半包
一、使用系统分隔符客户端/** * 作者:yun * 创建日期:2018/08/26 * 类说明: */public class LineBaseEchoClient { private final String host; public LineBaseEchoClient(String host) { this.host = host; } public void start() throws InterruptedException原创 2020-10-08 17:42:54 · 87 阅读 · 0 评论 -
netty简单例子
EchoClient客户端/** * 作者:yun * 创建日期:2018/08/26 * 类说明:netty的客户端 */public class EchoClient { private final int port; private final String host; public EchoClient(int port, String host) { this.port = port; this.host = host;原创 2020-10-06 22:51:13 · 126 阅读 · 0 评论 -
nio原生例子
常量类//服务器端口号 public static int DEFAULT_PORT = 12345; public static String DEFAULT_SERVER_IP = "127.0.0.1"; //返回给客户端的应答 public static String response(String msg){ return "Hello,"+msg+",Now is "+new java.util.Date( Sy原创 2020-10-06 16:29:10 · 101 阅读 · 0 评论 -
aio编程例子
AioClient 客户端主程序import static cn.enjoyedu.ch01.Ch01Const.DEFAULT_PORT;import static cn.enjoyedu.ch01.Ch01Const.DEFAULT_SERVER_IP;/** * @author yun * 类说明:aio的客户端主程序 */public class AioClient { //IO通信处理器 private static AioClientHandler clien原创 2020-10-04 18:54:57 · 246 阅读 · 0 评论 -
bio编程
BioServerpublic class BioServer { //服务器端必须 private static ServerSocket server; //线程池,处理每个客户端的请求 private static ExecutorService executorService = Executors.newFixedThreadPool(5); private static void start() throws IOExcepti原创 2020-10-04 17:59:11 · 80 阅读 · 0 评论