会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
stevenczp
博客园
首页
新随笔
联系
管理
订阅
上一页
1
2
3
4
5
6
7
···
13
下一页
2017年9月10日
用Wireshark分析Socket连接建立的过程
摘要: 0. 安装Wireshark,但是默认情况下,Wireshark无法捕获127.0.0.1的报文 解决方案:安装npcap,替换默认的winpacp,重新启动Wireshark,就可以看到一个名字中含有Loopback的接口,针对它来抓包就行了 1. 用telnet向未被监听的9090端口发送连接请
阅读全文
posted @ 2017-09-10 18:16 qeDVuHG
阅读(7434)
评论(0)
推荐(0)
2017年9月9日
Java IO 学习(四)BIO/NIO
摘要: 本文会尝试介绍Java中BIO与NIO的范例与原理 使用的模型非常简单:服务器--客户端模型,服务器会将客户端发送的字符串原样发回来。也就是所谓的echo server。 BIO 也就是所谓的Socket通信,直接上代码了 逻辑不算复杂,先创建一个ServerSocket对象,然后调用accept方
阅读全文
posted @ 2017-09-09 18:29 qeDVuHG
阅读(529)
评论(0)
推荐(0)
2017年9月8日
Java IO 学习(三)缓冲IO / 直接IO / 内存映射
摘要: 缓冲IO 在介绍缓冲IO之前需要先了解一下常用的机械硬盘的原理与特点 一个机械硬盘中装有多个盘片 每个盘片上有多个同心圆(磁道) 每个同心圆又由多个弧(扇区)组成,每个弧上都记录了等量的数据(比方说512byte) 如果发起一个随机读写请求,磁头需要先找到对应的磁道,然后等待对应的扇区旋转到磁头正下
阅读全文
posted @ 2017-09-08 19:32 qeDVuHG
阅读(3455)
评论(0)
推荐(0)
2017年9月7日
Java IO 学习(二)select/poll/epoll
摘要: 如上文所说,select/poll/epoll本质上都是同步阻塞的,但是由于实现了IO多路复用,在处理聊天室这种需要处理大量长连接但是每个连接上数据事件较少的场景时,相比最原始的为每个连接新开一个线程的服务模式要高效许多。 但是我们也经常听到一个说法:select效率低下,在工程实践中从不使用sel
阅读全文
posted @ 2017-09-07 21:23 qeDVuHG
阅读(2698)
评论(0)
推荐(1)
2017年9月5日
Java IO 学习(一)同步/异步/阻塞/非阻塞
摘要: 关于IO,同步/异步/阻塞/非阻塞,这几个关键词是经常听到的,譬如: “Java oio是阻塞的,nio是非阻塞的” “NodeJS的IO是异步的” 但是这些东西听多了就容易迷糊,比方说同步是否就是阻塞,异步是否就是非阻塞呢? 先给出结论: 1. 异步/同步与阻塞/非阻塞之间没有必然的联系 2. 同
阅读全文
posted @ 2017-09-05 15:49 qeDVuHG
阅读(2405)
评论(0)
推荐(1)
2017年9月4日
Java IO 学习(零)概述
摘要: 参考文献 Doug Lea的 <Scalable IO in Java> Java NIO trick and trap IO - 同步,异步,阻塞,非阻塞 (亡羊补牢篇) 网络编程释疑之:同步,异步,阻塞,非阻塞
阅读全文
posted @ 2017-09-04 17:05 qeDVuHG
阅读(257)
评论(0)
推荐(0)
2017年8月15日
Java类加载机制
摘要: 1. 双亲委派模型 JVM内置了三个ClassLoader Bootstrap ClassLoader:负责加载%JAVA_HOME%/lib目录中的class(比方说rt.jar里的class),这个ClassLoader是JVM底层实现的,我们无法直接操作 Extension ClassLoad
阅读全文
posted @ 2017-08-15 21:02 qeDVuHG
阅读(289)
评论(0)
推荐(0)
2017年8月9日
Guice 4.1教程
摘要: Guice是Google开发的一个开源轻量级的依赖注入框架,运行速度快,使用简单。 项目地址:https://github.com/google/guice/ 最新的版本是4.1,本文基于此版本。 0. 什么是依赖注入? 依赖注入(Dependency Injection)是一种思想。 在一般的编程
阅读全文
posted @ 2017-08-09 18:20 qeDVuHG
阅读(1491)
评论(0)
推荐(0)
2017年8月4日
Guava源码学习(五)EventBus
摘要: 基于版本:Guava 22.0 Wiki:EventBus 0. EventBus简介 提供了发布-订阅模型,可以方便的在EventBus上注册订阅者,发布者可以简单的将事件传递给EventBus,EventBus会自动将事件传递给相关联的订阅者。 支持同步/异步模式。 只能用于线程间通信。 1.
阅读全文
posted @ 2017-08-04 11:52 qeDVuHG
阅读(1292)
评论(0)
推荐(0)
2017年8月3日
Guava源码学习(四)新集合类型
摘要: 基于版本:Guava 22.0 Wiki:New collection types 0. 简介 Guava提供了很多好用的集合工具,比如Multiset和BiMap,本文介绍了这些新集合类型的使用方式与实现原理。 1. Multiset a. 简介 一般的Set会对相同元素去重,而Multiset则
阅读全文
posted @ 2017-08-03 09:54 qeDVuHG
阅读(1105)
评论(2)
推荐(0)
上一页
1
2
3
4
5
6
7
···
13
下一页
公告