reactor模式前序:传统IO的WEB服务器设计

先看一段经典的WEB JAVA服务器设计

 

JAVA代码为(伪代码)

 

 1 ServerSocket serverSocket = ...;
 2 serverSocket.bind(8899);
 3 
 4 while (true) {
 5     final Socket socket = serverSocket.accept(); // 阻塞
 6 
 7     new Thread(new Runnable() {
 8         public void run() {
 9             socket.getInputStream();
10             xxxxx
11         }
12     }).start();
13 
14 }

 

 

 

 

可以看到,传统IO编程方式,来一个请求链接,就创建一个线程,非常简单粗暴,缺点也是显而易见的

1.一台计算机的线程数是不可能无限制地增加的,到了一定程度,将会到达瓶颈

2.线程与线程之间的上下文切换是需要时间的

 

posted @ 2018-03-26 19:42  无名草110  阅读(193)  评论(0编辑  收藏  举报