Apache
文章平均质量分 59
cyforever_cool
这个作者很懒,什么都没留下…
展开
-
Apache Web服务器综合日志格式
Http://httpd.apache.org/doc/2.2/logs.html#combined客户端IP地址:使用代理则是代理ip客户标识:不可靠,通常不会记录。认证用户名:无需认证则没有请求接收时间:日期,时间,时区请求内容:方法,资源,请求参数,协议。状态码:HTTP状态码返回对象的大小:字节为单位提交方(Referrer):连接到web页面或资源的uri或url。用户代理:客户原创 2013-11-19 21:36:01 · 1034 阅读 · 0 评论 -
Tomcat配置文件——server.xml(4)
Realm元素Realm元素代表安全防护的范围,列出了授权指定的访问Context及角色的用户。GlobalNamingResources元素GlobalNamingResources可以让管理员指定应用于整个Server的JNDI映射关系,否则,这些映射关系就必须出现在各个Web应用程序的web.xml文件中。GlobalNamingResources没有任何原创 2013-11-27 09:32:21 · 793 阅读 · 0 评论 -
Tomcat配置文件——server.xml(3)
Engine元素Engine元素代表从其Service元素的一个Connector接受请求,将其交付处理,并将结果返回给Connector的软件。Host元素Host元素代表一个主机或者虚拟主机。Virtual hosing:在一般情况下,只有在架设虚拟主机时才需要修改Host元素。如果想在tomcat中使用虚拟主机,只需设定主机的DNS或数据。在server.原创 2013-11-26 15:05:49 · 1048 阅读 · 0 评论 -
Tomcat配置文件——server.xml(2)
Server元素server元素是指整个tomcat服务器,在server.xml文件中只能有一个。port是监听关闭的端口号,只能监听localhost上的地址,这样就无法从网络的其他地方停止服务器了。Service元素其代表包含一个Engine的一组Connector,每个Connector都会在已知的端口和协议上接收所有的输入请求,然后给Engine处理。一个se原创 2013-11-26 10:20:20 · 862 阅读 · 0 评论 -
Tomcat6.0源码学习--启动框架
1.摘要对于独立运行的应用程序来说,都有一个入口,以便启动应用程序。Java应用程序的入口是类的main方法,在这里你可以初始化应用的上下文环境,然后创建应用组件并提供服务。对于简单的应用程序,可以直接将启动代码放在main方法中,但是,对于复杂的,或者可扩展的应用来说,这样做是不负责任的,也是不优雅的。那么,怎么做才是负责任的,优雅的?下面我们看看Tomcat是如何启动的,分析一下它的启动框转载 2013-11-25 21:09:55 · 661 阅读 · 0 评论 -
Tomcat6.0源码学习--接受并传递请求
1.接受请求Tomcat启动时,首先启动Container,然后启动Connector。而在Connector启动时,会启动协议处理器和映射监听器。协议处理器用来处理具体的协议的,对于http/1.1,其处理器为Http11Protocol,而AJP则为AjpProtocol。当然在协议处理器启动时,会启动监听线程来监听指定端口,从而接受请求。对于http/1.1协议的处理器Http11P转载 2013-11-25 21:08:08 · 719 阅读 · 0 评论 -
Tomcat6.0源码学习--架构概述
Tomcat6是最新版本的web容器,其支持最新版本的servlet2.5和jsp2.1。而且Tomcat6架构也是经过重新设计优化过的,所以我们有必要分析一下它的架构过程。显然,这是一个通过阅读Tomcat的源代码及相关文档,演绎架构的过程。或许有人会说,这不是放马后炮吗?!!但我觉得这是自我进步的一个必经步骤,先模仿之,然后才能超越之,毕竟我本凡人。Tomcat的架构总的来说是分层次的、可转载 2013-11-25 21:00:10 · 623 阅读 · 0 评论 -
Tomcat配置文件——server.xml(1)
tomcat是以面向对象的方式运作的,在执行期间,它会基于配置文件的设定动态的组建起对象结构。server.xml文件中的每个主要元素都会创建软件“对象”、排序及进程管道中设置的这些元素嵌套方法,让用户能执行过滤,分组等工作。server.xml文件中的元素清单:原创 2013-11-25 21:25:17 · 597 阅读 · 0 评论 -
Tomcat类加载机制
Tomcat中的类加载策略和JDK中的委托模型略有不同。Tomcat Server在启动的时候将构造一个ClassLoader树,以保证模块的类库是私有的,ClassLoader结构如下: Bootstrap | System | Com转载 2013-11-25 21:15:21 · 647 阅读 · 0 评论 -
Tomcat6.0源码学习--Connector架构
概述Tomcat虽然具有传统Web服务器(如Apache)的功能(处理Html页面,css文件等静态资源的能力),但更多的,Tomcat以Servlet容器著称(处理Jsp和Servlet等动态资源的应用服务器)。由Tomcat的总体架构可知(参见:Tomcat6.x架构概述),Servlet容器由2个主要组件构成:Connector(连接器)和Container(容器)。Connector负转载 2013-11-25 21:06:34 · 818 阅读 · 0 评论 -
Tomcat的性能调校
测量web负载的工具:Apache Benchmark(ab),Siege,Apache Jakarta的JMeter。其中,JMeter是最有特色的,也是比较好用的,但是其缺点是不能像ab和siege所做的那样,每秒请求并完成很多次HTTP请求。如果不是为了设法找出tomcat能每秒响应多少次请求,就可以用JMeter。新的基准调校软件包:Faban。Tomcat提供了三种不同的服务器设计实现方原创 2013-11-23 10:46:13 · 1229 阅读 · 0 评论 -
tomcat运行时JVM中的参数配置
JVM参数的含义 参数名称含义默认值 -Xms初始堆大小物理内存的1/64(默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制.-Xmx最大堆大小物理内存的1/4(默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会减少堆直到转载 2013-11-21 16:36:30 · 1672 阅读 · 0 评论 -
一台服务器如何同时运行多个tomcat
一般情况下一台服务器运行一个tomcat容器,但是这不是必须的,如果有需要可以运行多个tomcat容器,如某些web应用程序正在测试,可能导致tomcat的崩溃,那么这个web应用程序就不应该和其他正常运行的web应用程序放在一个tomcat容器中,负责可能导致其他的web服务崩溃,这是可以在一台服务器上运行多个tomcat。这个主要是在tomcat的server.xml文件中进行配置,首先要了解原创 2013-11-21 15:59:56 · 2174 阅读 · 0 评论 -
怎样实现tomcat做服务器在windows下开机自动运行
免安装版本的tomcat,要建立环境变量 要有JAVA_HOME变量就是你是JDK安装目录要有JRE_HOME变量 就是你的JRE安装目录新建变量:CATALINA_HOME=你的TOMCAT的目录 在PATH变量最后加上: ;%CATALINA_HOME%\bin 运行 CMD 在 CMD 下运行 service.bat install 然后运行 service.msc 找到转载 2013-11-13 09:25:10 · 835 阅读 · 0 评论 -
tomcat中的管理领域,角色和用户
主要在tomcat的conf/server.xml文件和web应用程序中的web-inf/web.xml文件中的配置tomcat含有可插入式的领域架构,并具备几种有用的领域实现:UserDatabaseRealm,JDBCRealm,JNDIRealm和JAASRealm。要指定用哪种,则需在server.xml文件中用标签插入,calssName属性设定使用领域。UserDataba原创 2013-11-21 20:33:46 · 2045 阅读 · 0 评论 -
tomcat中端口的TCP连接传递
tomcat服务器运行时一般端口号都为80,且需要JVM必须以root用户运行。但是,如果除JVM进程之外的东西可以将所有端口80的TCP连接传递给高于1024端口号的端口,那么JVM就可以不必以root用户运行。这点在linux系统中权限尤其重要,如果没有root权限,可以让tomcat运行在8080上,然后有合适权限的其他用户可以把80端口TCP连接传递给8080端口。这用到了linux中原创 2013-11-21 16:17:22 · 5950 阅读 · 2 评论 -
Tomcat配置文件——server.xml(5)
Manager元素其实现HTTP会话管理,tomcat6.0中提供5种:StandardManager:如无配置则是默认的会话管理器。这是在tomcat正运行时在内存中处理会话的非集群实现。PersistentManager:实现把空闲会话对象(超过设定的时间)交换到磁盘上,在必须节省内存而且会话中存储对象很大时很有用。DeltaManager:在配置tomcat以执行集群运算时,原创 2013-11-27 10:37:34 · 806 阅读 · 0 评论