摘要:
TCP为什么需要握手? 阅读全文
摘要:
将网络层提供的主机到主机的服务延申到主机上的进程到进程之间的服务。 多路复用: 多个进程对应一个网络服务(一根网线),多个进程同时使用网络服务。 多路分解: 一个网络服务把消息分发给不同的应用进程。 应用进程、套接字、传输层(TCP)关系 阅读全文
摘要:
我们一般创建的线程都是普通非守护线程,守护线程是为普通线程服务的。这个说法比较抽象。 具体一个很大的区别是: JVM中所有的线程都是守护线程的时候,JVM就可以退出了--JVM不会等待守护线程是否运行结束 如果还有一个或以上的非守护线程则不会退出 非守护线程例子 public static void 阅读全文
摘要:
一、实现Runnable接口 public class RunnableDemo implements Runnable { public void run() { try { Thread.sleep(100); } catch (InterruptedException e) { e.print 阅读全文
摘要:
之前的博文介绍了tomcat有两大核心组件,connector和container,connector负责接受外部请求,container负责处理请求,本文从源码的角度介绍container的整体架构。 一、容器分类 tomcat容器为四个: Engine:代表容器引擎,管理多个虚拟站点,一个Ser 阅读全文
摘要:
在上一篇博文中,主要分析了tomcat的整体架构,通过上一篇的分析可以知道,tomcat主要有两部分组成,分别为连接器(Connector)和容器(Container)。本文介绍连接器(Connector)。 一、Connector的主要功能 连接器主要用于对外交流,它负责接收外部的请求,然后把请求 阅读全文
摘要:
一、整体说明 tomcat需要完成两件事情: 接受外部HTTP请求 加载servlet,并且把请求传给Servlet进行处理。 整体可以抽象为如下: 二、整体代码架构 在tomcat的代码中抽象了以下三个类: Server类,代表tomcat实例 Connector类,代表HTTP监听器(上图中的H 阅读全文