摘要: 网络编程 -- RPC实现原理 -- 目录 啦啦啦 V1——RPC -- 本地方法调用:不通过网络 入门 1. RPCObjectProxy rpcObjectProxy = new RPCObjectProxy(new LocalRPCClient()); : 绑定目标对象 2. IUserSer 阅读全文
posted @ 2017-06-24 22:20 limeOracle 阅读(367) 评论(0) 推荐(0) 编辑
摘要: 网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——Netty -- new LengthFieldPrepender(2) : 设置数据包 2 字节的特征码 new LengthFieldBasedFrameDecoder(65535, 0, 2, 0, 2) : 65535 :数据包长度 阅读全文
posted @ 2017-06-24 21:45 limeOracle 阅读(465) 评论(0) 推荐(0) 编辑
摘要: 网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——Netty -- pipeline.addLast(io.netty.handler.codec.MessageToMessageCodec<INBOUND_IN, OUTBOUND_IN>) 覆写编码解码方法。 pipeline相当于拦截 阅读全文
posted @ 2017-06-24 21:15 limeOracle 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——Netty -- 使用序列化和反序列化在网络上传输对象:需要实现 java.io.Serializable 接口 只能传输( ByteBuf, FileRegion )两种类型,因此必须将对象在发送之前进行序列化,放进ByteBuf中,客户 阅读全文
posted @ 2017-06-24 19:28 limeOracle 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 网络编程 -- RPC实现原理 -- 目录 啦啦啦 V1——Netty入门应用 Class : NIOServerBootStrap Class : CustomServerChannelInitializer Class : CustomServerChannelHandlerAdapter Cl 阅读全文
posted @ 2017-06-24 17:46 limeOracle 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——增加WriteQueue队列,存放selectionKey。addWriteEventToQueue()添加selectionKey并唤醒阻塞的selector。等selector唤醒之后再注册OP_WRITE事件。 ( selection 阅读全文
posted @ 2017-06-24 17:00 limeOracle 阅读(501) 评论(0) 推荐(0) 编辑
摘要: 网络编程 -- RPC实现原理 -- 目录 啦啦啦 V1——设置标识变量selectionKey.attach(true);只处理一次(会一直循环遍历selectionKeys,占用CPU资源)。 (由于key没有清除,依旧在selectionKeys中存在,遍历时依旧会检测到对应事件,除非sock 阅读全文
posted @ 2017-06-24 16:07 limeOracle 阅读(368) 评论(0) 推荐(0) 编辑
摘要: -- 啦啦啦 -- 网络编程 -- RPC实现原理 -- NIO单线程 网络编程 -- RPC实现原理 -- NIO多线程 -- 迭代版本V1 网络编程 -- RPC实现原理 -- NIO多线程 -- 迭代版本V2 网络编程 -- RPC实现原理 -- Netty -- 迭代版本V1 -- 入门应用 阅读全文
posted @ 2017-06-24 15:27 limeOracle 阅读(521) 评论(0) 推荐(0) 编辑
摘要: 网络编程 -- RPC实现原理 -- 目录 啦啦啦 Class : Service Class : Client Console : Server Console : Client 啦啦啦 阅读全文
posted @ 2017-06-24 15:26 limeOracle 阅读(537) 评论(0) 推荐(0) 编辑