摘要:一、find 命令 find 命令的常用形式可以简化为 path:find 命令查找的目录路径,其中 ./ 表示当前目录,/ 表示系统根目录 expression:可以分为 -options:指定 find 命令的常用选项 -print:find 命令将匹配的文件输出到标准输出 -exec:find 阅读全文
posted @ 2018-07-04 17:04 Just_for_Myself 阅读 (1238) 评论 (0) 编辑
该文被密码保护。
posted @ 2018-07-03 20:35 Just_for_Myself 阅读 (4) 评论 (0) 编辑
该文被密码保护。
posted @ 2018-06-26 20:04 Just_for_Myself 阅读 (16) 评论 (0) 编辑
该文被密码保护。
posted @ 2018-06-23 16:47 Just_for_Myself 阅读 (8) 评论 (0) 编辑
摘要:1. 垃圾回收机制 a. 引用计数法,每个对象都含有一个引用计数器,当有应用连接到对象时,引用计数+1;当引用离开作用域被置为 null 时,引用计数-1。缺点是,当对象之间存在循环引用时,可能会出现“对象应该被回收,但引用计数不为0”的情况。 b. 标记-清扫法,从堆栈和静态存储区出发,遍历所有的 阅读全文
posted @ 2018-06-13 15:11 Just_for_Myself 阅读 (450) 评论 (0) 编辑
摘要:这节讲解基于 Netty 快速实现一个聊天小程序。 一、服务端 1. SimpleChatServerHandler(处理器类) 该类主要实现了接收来自客户端的消息并转发给其他客户端。 2. SimpleChatServerInitializer(配置 Channel 类) 该类添加分隔符协议处理类 阅读全文
posted @ 2018-05-16 13:30 Just_for_Myself 阅读 (1332) 评论 (0) 编辑
摘要:我们需要区分不同帧的首尾,通常需要在结尾设定特定分隔符或者在首部添加长度字段,分别称为分隔符协议和基于长度的协议,本节讲解 Netty 如何解码这些协议。 一、分隔符协议 Netty 附带的解码器可以很容易的提取一些序列分隔: 下面显示了使用 “\r\n”分隔符的处理: 下面为 LineBaseFr 阅读全文
posted @ 2018-05-15 14:37 Just_for_Myself 阅读 (1312) 评论 (0) 编辑
摘要:检测空闲连接和超时是为了及时释放资源。常见的方法是发送消息来测试一个不活跃的连接,通常称为“心跳”。 Netty 提供了几个 ChannelHandler 来实现此目的,如下: 下面是 IdleStateHandler 的一个简单使用: 阅读全文
posted @ 2018-05-14 19:48 Just_for_Myself 阅读 (1945) 评论 (0) 编辑
摘要:HTTP/HTTPS 是最常见的一种协议,这节主要是看一下 Netty 提供的 ChannelHaandler。 一、HTTP Decoder,Encoder 和 Codec HTTP 是请求-响应模式,客户端发送一个 HTTP 请求,服务就响应此请求。 HttpRequest 包格式如下: Htt 阅读全文
posted @ 2018-05-14 19:18 Just_for_Myself 阅读 (3470) 评论 (0) 编辑
摘要:为了支持 SSL/TLS,Java 提供了 javax.net.ssl API 的类 SslContext 和 SslEngine 使它相对简单的实现解密和加密。Netty 利用该 API 实现了 ChannelHandler 的子类 SslHandler。下图为 Sslhandler 的数据流图: 阅读全文
posted @ 2018-05-14 10:45 Just_for_Myself 阅读 (1417) 评论 (0) 编辑