简介:Reactor 设计模式是一种事件驱动的设计模式,将一个或者多个客户端请求分发到不同的处理器上,来提升事件处理的效率。主要的应用场景就是java NIO当中用户处理网络请求。使用的是异步非阻塞IO 在接受Reactor 模式之前,需要先了解常见的几种IO网络模型。 1、BIO(阻塞IO模型) ...
分类:
其他好文 时间:
2019-10-25 16:13:02
阅读次数:
79
Scala 比 Java 更面向对象一点,是 Scala 的类不允许静态(static)成员。对此类使用场景,Scala 提供了 单例对象(object)。单例对象的定义看上去跟类定义很像,只不过 class 关键字被换成了 object 关键字。 在事例中单例对象名叫 ChecksumAccumu ...
分类:
其他好文 时间:
2019-10-24 21:24:36
阅读次数:
102
场景很简单,就是多个客户端通过udp,连接到服务器(其实是无连接的,就是服务器保存了客户端的ip信息)。然后通过udp协议先服务器发送消息,然后服务器在通过udp转发在各个客服端。 这个是不是 观察者模式 server代码 client 代码 ...
分类:
编程语言 时间:
2019-10-24 15:45:19
阅读次数:
86
不懂数据分析的 growth hacker 不是好运营。近日我想要统计我家产品 [xue.cn](https://xue.cn/) 用户的编程自学行为的频次,且在不给技术开发部门带来任何新需求的情况下自力更生。那么,我该如何定义并统计这个数据指标呢? ...
分类:
其他好文 时间:
2019-10-24 09:50:50
阅读次数:
78
有关异步编程框架的讨论 https://www.jianshu.com/p/c4e63927ead2 https://www.jianshu.com/p/c4e63927ead2 前言 从python的twisted,到之后Java的NIO,Netty,以及Nodejs带着底层libuv的横空出世, ...
分类:
其他好文 时间:
2019-10-24 09:37:17
阅读次数:
129
1、 int *a[10] :指向int类型的指针数组a[10] int (*a)[10]:指向有10个int类型数组的指针a int (*a)(int):函数指针,指向有一个参数并且返回类型均为int的函数 int(*a[10]) (int):函数指针的数组,指向有一个参数并且返回类型均为int的 ...
分类:
编程语言 时间:
2019-10-24 00:38:04
阅读次数:
104
错误处理: 2019-10-23 17:30:46.257 ERROR 8548 [nio-8080-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] i ...
分类:
编程语言 时间:
2019-10-23 18:28:17
阅读次数:
112
服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型。 (2)同步非阻塞IO(Non-blocking IO):默认创建的socket都是阻塞的,非阻塞IO要求socket被设置为NONBLOCK。注意这里所说的NIO并非J ...
分类:
其他好文 时间:
2019-10-23 12:03:43
阅读次数:
76
IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO。 一、BIO 在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socket来对服务端进行通信,默认情况下服务端需要对每个请求建立一堆线程等待 ...
分类:
其他好文 时间:
2019-10-23 11:30:56
阅读次数:
66
IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO。 一、BIO 在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socket来对服务端进行通信,默认情况下服务端需要对每个请求建立一堆线程等待 ...
分类:
编程语言 时间:
2019-10-23 11:17:19
阅读次数:
85