天行健,君子以自强不息。

Shenzen, China
  1. Spring Cloud分布式组件如何共享session

    转载 https://segmentfault.com/a/1190000014204992

    2018/08/17

  2. NIO 编程(五)ServerSocketChannel、SocketChannel

    ServerSocketChannel

    2018/01/18

  3. NIO 编程(五)Selector

    Selector 是Java NIO中能够检测一到多个NIO通道,并能够知晓通道是否为诸如读写事件做好准备的组件。这样,一个单独的线程可以管理多个channel,从而管理多个网络连接。

    2018/01/18

  4. NIO 编程(三)Channel - FileChannel

    Channel 接口只有两个函数,如下所示:

    2018/01/05

  5. NIO 编程(二)Buffer

    缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存。这块内存被包装成NIO Buffer对象,并提供了一组方法,用来方便的访问该块内存。 由于ByteBuffer是非线程安全的,所以多线程访问的时候也必须加锁。

    2018/01/04

  6. NIO 编程(一)Java NIO 概述

    Java NIO 由以下几个核心部分组成:

    2018/01/03

  7. 伪异步 I/O 编程

    为了解决同步阻塞 I/O 面临的一个链路需要一个线程处理的问题,后来有人对它的线程模型进行了优化,后端通过一个线程池来处理多个客户端的请求接入,形成客户端个数 M:线程池最大线程数 N 的比例关系,其中 M 可以远远大于 N。通过线程池可以灵活地调配线程资源,设置线程的最大值,防止由于海量并发接入导致线程耗尽。

    2018/01/02

  8. BIO 通信模型

    采用 BIO 通信模型的服务端,通常由一个独立的 Acceptor 线程负责监听客户端的连接,它接收到客户端连接请求之后为每个客户端创建一个新的线程进行链路处理,处理完成之后,通过输出流返回应答给客户端,线程销毁。这就是典型的一请求一应答通信模型。

    2017/12/29

  9. Javac 编译原理

    Java 语言有 Java 语言规范,Java 虚拟机有 Java 虚拟机规范,他们都有各自的语法解析规则,而且他们之间的解析规则是不同的,如何让 Java 语法规则适应 Java 虚拟机规则,这个任务由 Javac 编译器来完成。它的任务就是将 Java 语言规范转化为 Java 虚拟机语言规范,完成翻译工作。

    2017/10/25

  10. 通用程序设计-将局部变量的作用域最小化

    将局部变量的作用域最小化,可以增强代码的可读性和可维护性,并降低出错的可能性。

    2017/10/21