摘要: 开发应用程序与应用程序之间的通信,程序之前通信 需要定义协议,比如http协议。 首先我们定义一个协议类 Head类 自定义的编码器 按照message注释的协议顺序 写入。token和token生成时间定长50 不足空补 解码器 解码器 在解码的同时需要做拆包和粘包处理 1.循环读到包分割符起始位 阅读全文
posted @ 2018-06-09 13:05 意犹未尽 阅读(10730) 评论(0) 推荐(5)
摘要: 在tcp编程底层都有拆包和粘包的机制 拆包 当发送数据量过大时数据量会分多次发送 以前面helloWord代码为例 打印 可以发现这里拆分成了2次发送 粘包 当发送数据量过小时会组合成一次发送 可以发现有时多条发送的数据会组合成一条发送 解决方案 netty提供了解码器来解决拆包和粘包的问题 Lin 阅读全文
posted @ 2018-06-06 22:30 意犹未尽 阅读(487) 评论(0) 推荐(0)
摘要: netty重新定义了byteBuf 而没使用jdk byteBuffer netty byteBuf与jdk byteBuffer的区别 (1)jdk buffer长度固定 byteBuf超过最大索引 将会扩容。(最大值默认值是Integer.MAXVALUE) (4)读取和写入的索引分开了(rea 阅读全文
posted @ 2018-06-06 21:52 意犹未尽 阅读(718) 评论(0) 推荐(0)
摘要: 什么是nettty netty是基于javaNio模型的网络编程框架。很多框架底层也是用netty实现的 比如dubbo 与NIO的区别 1.简化了API的使用。基于事件驱动。只需要在对应的事件写相应的业务就行了。 2.上层封装多种协议的实现 webSoket,http。同时修复了NIO的bug(内 阅读全文
posted @ 2018-06-05 19:51 意犹未尽 阅读(425) 评论(0) 推荐(0)
摘要: 运行这段代码会抛出 的异常, 查看Arrays.as源码 new ArrayList是创建的内部的ArrayList 而不是java.util.Arrays包下的ArrayList 查找发现 内部的ArrayList并没有add方法 点击父类查看 父类实现的 add remove等修改集合元素的方法 阅读全文
posted @ 2018-05-28 19:29 意犹未尽 阅读(371) 评论(0) 推荐(0)
摘要: 项目中突然报空指针异常 排查发现三元运算符空指针异常,表面上看不出来有什么问题,编译器编译的时候会保证:2边数据类型一致如: 会编译不通过。因为String 和int不是一个类型 这一切的原因都是编译器自动拆箱造成的。如下情况 价格是否为null判断就好了 阅读全文
posted @ 2018-05-25 20:55 意犹未尽 阅读(312) 评论(0) 推荐(0)
摘要: 什么是IO 什么是 I/O?当程序需要从网络(如 TCP 套接字)读取数据,或向网络写入数据时,会触发 ​I/O 操作。 ​输入:从网络接收数据到应用程序的缓冲区(如 recv() 函数)。​输出:从应用程序的缓冲区发送数据到网络(如 send() 函数)。​为什么 I/O 是性能瓶颈? ​等待时间 阅读全文
posted @ 2018-05-09 21:16 意犹未尽 阅读(507) 评论(0) 推荐(0)
摘要: ReentrantLock源码 https://www.cnblogs.com/LQBlog/p/15206866.html 简单demo 在多线程操作时。保证一块共享资源的原子性。第一想到的就是用synchronized关键字 在jdk5提供一个更灵活更强大的 ReentrantLock 使用re 阅读全文
posted @ 2018-05-03 21:28 意犹未尽 阅读(407) 评论(0) 推荐(0)
摘要: 限制并发资源的并发访问数量。 samephore.acquire(); 获取许可 samephore.release(); 释放一个许可。 模拟银行10个办理任务的窗口。 samephore.acquire() 如果有10个任务获取许可并没有释放 其他人等待 某一个获取许可正在执行的任务 释放许可才 阅读全文
posted @ 2018-05-03 12:46 意犹未尽 阅读(183) 评论(0) 推荐(0)
摘要: 应用场景 财务成本核算。可能会有多个耗时的步骤。如果顺序执行是非常慢的。再相互数据获取数据不依赖的情况下可以使用Future并行执行 自己实现future异步加载 调用getData 方法如果没有setData 则state是false 则释放锁 加入到等待队列 当你get方法线程加载完数据再set 阅读全文
posted @ 2018-05-02 23:45 意犹未尽 阅读(997) 评论(0) 推荐(1)
点击右上角即可分享
微信分享提示