Jetty的核心类
Server
ThreadPool(有两个实现),见这里http://lixjluck.iteye.com/blog/1129558
SelectChannelConnector
SelectorManager
SelectSet
SelectChannelEndPoint
HttpConnection(HttpInput, HttpOutput, HttpGenerator)
Handler
Server启动过程
SelectChannelConnector初始化过程
open方法做了什么事情?
public void open() throws IOException
{
synchronized(this)
{
if (_acceptChannel == null)
{
// Create a new server socket
_acceptChannel = ServerSocketChannel.open();
// Set to blocking mode
_acceptChannel.configureBlocking(true);
// Bind the server socket to the local host and port
_acceptChannel.socket().setReuseAddress(getReuseAddress());
InetSocketAddress addr = getHost()==null?new InetSocketAddress(getPort()):new InetSocketAddress(getHost(),getPort());
_acceptChannel.socket().bind(addr,getAcceptQueueSize());
_localPort=_acceptChannel.socket().getLocalPort();
if (_localPort<=0)
throw new IOException("Server channel not bound");
}
}
}
主要是启动web服务的监听端口,且配置成blocking模式。
Acceptor
acceptorThread的作用:
- Acceptor类 位于AbstractConnector.Acceptor
- 实际调用到SelectSet.doSelect
- Select and dispatch tasks found from changes and the selector
acceptor线程数量配置,见 http://lixjluck.iteye.com/blog/1129479 #acceptors
- 大小: 68 KB
- 大小: 52.9 KB
- 大小: 55 KB
分享到:
相关推荐
### Jetty核心架构详解 #### 一、容器启动 Jetty作为一个高性能的Web服务器和Java Servlet容器,在启动过程中涉及到了多个关键步骤和技术细节。这部分主要介绍Jetty的启动流程。 ##### 1.1 容器启动 - **Jetty...
二、Jetty核心概念 1. **Servlet**:深入理解Servlet接口和生命周期,以及如何在Jetty中注册和部署Servlet。 2. **ContextHandler**:解释ContextHandler的作用,它是Jetty中处理特定URL前缀的组件。 3. **...
一、i-jetty核心概念 1. **Servlet容器**:i-jetty作为一个Servlet容器,它的主要职责是管理和运行Servlet。Servlet是Java平台上的Web应用组件,用于处理客户端的请求并返回响应。 2. **HTTP服务器**:i-jetty不仅...
- **2.3.3 start.jar深入探讨**: `start.jar`是一个包含Jetty核心组件的JAR文件,用于启动Jetty服务。 **2.4 我们可以学到什么** 通过学习Jetty,不仅可以了解其基本的安装和配置方法,还能深入了解Jetty的工作...
1. **Jetty核心库(jetty-6.1.26.jar)**:这是Jetty服务器的核心组件,包含了处理HTTP请求、响应、连接管理、会话管理等功能。版本6.1.26是一个较旧但稳定的版本,适合对稳定性和兼容性有要求的项目。 2. **Jetty ...
1. **Jetty核心组件**: `lib`目录下的jar文件包括了Jetty的主要模块,如Jetty HTTP服务器、WebSocket服务器、Continuation支持、JMX管理工具等。例如,`jetty-server.jar`提供了基础的HTTP服务器功能,`jetty-...
5. **库文件**:包含Jetty依赖的各种JAR文件,如Servlet API、Jetty核心组件以及其他相关库。 6. **许可证文件**:关于Jetty软件的版权和许可信息。 压缩包中的子文件"7937705a7c5c68414d68d4a09979d40e.rar"可能是...
这个版本的Jetty IO组件主要负责处理网络I/O操作,是Jetty核心的一部分。 【描述】提到的"jgmp.zip"是一个与Google测量协议相关的Java库,它可能用于收集、处理和报告应用程序的使用数据,帮助开发者了解他们的应用...
Jetty-all.jar是一个集合了众多Jetty组件...各个子文件如jetty-server、jetty-io和jetty-webapp等分别负责Jetty的核心功能、网络I/O和Web应用支持。通过理解和使用这些组件,开发者可以构建高性能的Web服务和应用程序。
总的来说,Jetty 6.1.26虽然相对较老,但它体现了Jetty服务器的核心设计理念和优势,如轻量级、高性能和灵活性。尽管现代开发可能更倾向于使用更新的版本,但对于了解Jetty的历史和原理,以及在某些场景下部署旧项目...
首先,让我们了解Jetty的核心组件和它们对应的jar包: 1. **jetty-server.jar**:这是Jetty服务器的基础,包含了处理HTTP连接和请求的类。它提供了Server、Connector和Handler等关键接口和实现。 2. **jetty-...
1. **Jetty服务器核心**:包含了运行Jetty服务器所需的基本组件。 2. **Servlet容器**:支持Servlet 3.1规范,可以处理HTTP请求并分发到对应的Servlet。 3. **配置文件**:如`start.ini`或`jetty.xml`,用于配置...
在Jetty 8中,Servlet容器是其核心功能之一,它负责管理和调度Servlet实例。Servlet是一种Java API,用于生成动态Web内容。在Jetty中,Servlet容器负责解析HTTP请求,将请求路由到对应的Servlet,并将Servlet的响应...
这里我们主要讨论三个核心的Jetty组件:jetty.jar、jetty-sslengine.jar和jetty-util.jar。 首先,jetty.jar是Jetty服务器的核心库,包含了运行一个基本Web服务器所需的所有组件。它提供了Servlet容器的功能,能够...
1. **Servlet-API.jar**:这是Servlet规范的实现,提供了Servlet、Filter和Listener等核心接口,使得开发者可以编写处理HTTP请求的代码。Servlet API是Java Web应用程序的基础,与Jetty容器协同工作,使得应用能够...
Jetty的核心优势在于其易用性、可扩展性和易嵌入性。 易用性是Jetty设计的关键。它支持通过XML配置或API来定制设置,使得开发者可以根据需求灵活调整。默认配置已经能够满足大多数日常使用场景,极大地简化了部署和...
总的来说,Jetty 6.1.6的lib目录包含了运行和管理Web服务器所需的所有核心组件和依赖,使得开发者能够快速搭建和运行Java Web应用程序。虽然这个版本相对较旧,但其基本原理和架构对于学习现代Web服务器的工作方式仍...
- **构架概述**:解释Jetty的核心组件,如Connector(连接器)、Handler(处理器)和Server。 - **Connector**:负责网络通信,如HTTP和HTTPS连接的建立。 - **Handler**:处理不同的HTTP请求,如Request Handler...
在本文中,我们将深入探讨Jetty的核心特性、工作原理以及如何使用这个版本。 一、Jetty简介 Jetty由Mortbay Consulting开发,最初是为了提供一个简单、快速且易于集成的Web服务器和Servlet容器。与Apache Tomcat等...
理解并掌握Jetty的这些核心特性对于开发和维护基于Java的Web应用至关重要,特别是那些需要高效、轻量级服务器解决方案的场景。通过熟练运用Jetty,开发者可以构建出高性能、可扩展且易于维护的Web应用程序。