JMCui - 博客园
摘要: 一、概念原理 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。—— 百度百科 之前一直有一个误区,老听人说 Docker 是一个容器,应用程序打包阅读全文
posted @ 2018-07-15 16:31 JMCui 阅读(67) 评论(0) 编辑
摘要: 一、概述和原理 Netty 的单元测试,主要是对业务逻辑的 ChannelHandler 做测试(毕竟对 Bootstrap、EventLoop 这些做测试着实没有多大意义),模拟一次入站数据或者出站数据,查看数据流经 ChannelHandler 变成什么样了,以此达到测试的目的。 Netty 的阅读全文
posted @ 2018-07-13 18:08 JMCui 阅读(149) 评论(0) 编辑
摘要: 一、概念 先来整体的介绍一下这篇博文要介绍的几个概念(Channel、ChannelHandler、ChannelPipeline、ChannelHandlerContext、ChannelPromise): Channel:Netty 中传入或传出数据的载体;ChannelHandler:Nett阅读全文
posted @ 2018-07-08 18:37 JMCui 阅读(218) 评论(1) 编辑
摘要: 一、概述和原理 网络数据传输的基本单位总是字节,Netty 提供了 ByteBuf 作为它的字节容器,既解决了 JDK API 的局限性,又为网络应用程序提供了更好的 API,ByteBuf 的优点: 1、可以被用户自定义的缓冲区类型扩展2、通过内置的复合缓冲区类型实现了透明的零拷贝3、容量可以按需阅读全文
posted @ 2018-06-29 09:53 JMCui 阅读(225) 评论(0) 编辑
摘要: 一、前言 测试妹子反馈了一个bug,说后台报了个服务器异常——保存一个数量比较大的值时,比如 9999,一直在转圈圈,直到最后报了一个服务器异常。我接过了这个bug,经过仔细查看代码后发现,代码卡在了一个批量插入的SQL语句上,就是比如前端保存 9999 的时候,后端的业务逻辑要进行 9999 次的阅读全文
posted @ 2018-06-27 20:16 JMCui 阅读(1053) 评论(8) 编辑
摘要: 一、前言 上一篇文章我们提到 Netty 的核心组件是 Channel、回调、Future、ChannelHandler、EventLoop,这篇文章主要是对 Channel (Netty传入和传出数据的载体)做一些详细的讲解,以及介绍下 Netty 内置的传输类型。 二、传输的核心 传输 API 阅读全文
posted @ 2018-06-13 11:31 JMCui 阅读(374) 评论(1) 编辑
摘要: 一、计算机网络分类 局域网(Local Area Network,LAN)是在一个局部的地理范围内(如一个企业、一个学校或一个网吧),一般是方圆几千米以内,将各种计算机、服务器、外部设备等互相连接起来组成的计算机通信网。 城域网(Metropolitan Area Network,MAN)一般来说是阅读全文
posted @ 2018-06-09 22:43 JMCui 阅读(128) 评论(0) 编辑
摘要: 一、概念 早期的 Java API 只支持由本地系统套接字库提供所谓的阻塞函数来支持网络编程。由于是阻塞 I/O ,要管理多个并发客户端,需要为每个新的客户端Socket 创建一个 Thread 。这将导致一系列的问题,第一,在任何时候都可能有大量的线程处于休眠状态(不可能每时每刻都有对应的并发数)阅读全文
posted @ 2018-06-08 20:54 JMCui 阅读(348) 评论(0) 编辑
摘要: 一、概念 Java 语言从其诞生开始,就和网络紧密联系在一起。在 1995 年的 Sun World 大会上,当时占浏览器市场份额绝对领先的网景公司宣布在浏览器中支持Java,从而引起一系列的公司产品对Java的支持,使得Java很快成为一种流行的语言。 Java 提供的网络功能的相关类主要有三个,阅读全文
posted @ 2018-06-05 20:28 JMCui 阅读(83) 评论(0) 编辑
摘要: 一、概念 在Java中,文件的输入和输出是通过流(Stream)来实现的。一个流,必有源端和目的端,它们可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是 Internet 上的某个 URL。对于流而言,我们不用关心数据是如何传输的,只需要向源端输入数据,从目的端获取数据即可。 流按照处理数据阅读全文
posted @ 2018-06-03 15:37 JMCui 阅读(260) 评论(0) 编辑