社区
Web开发应用服务器
帖子详情
tomcat 3 用户数目较大时出错问题!
houzy
2003-06-26 11:10:09
使用 tomcat 3 作为服务器,在使用用户达到50左右时,服务器cpu占用达到100%,造成用户不能登陆!
请问 tomcat 3 在用户数目上,或者说性能上,是否有这方面的限制或者局限性,
我觉得不应该是程序自身问题,或者请指教如何配置tomcat 的配置,以提高性能?
或者 将 tomcat 3 和 apache ,联合使用,是否能使性能提高,并解决此问题!
...全文
62
3
打赏
收藏
tomcat 3 用户数目较大时出错问题!
使用 tomcat 3 作为服务器,在使用用户达到50左右时,服务器cpu占用达到100%,造成用户不能登陆! 请问 tomcat 3 在用户数目上,或者说性能上,是否有这方面的限制或者局限性, 我觉得不应该是程序自身问题,或者请指教如何配置tomcat 的配置,以提高性能? 或者 将 tomcat 3 和 apache ,联合使用,是否能使性能提高,并解决此问题!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yshen
2003-07-02
打赏
举报
回复
1.所需的软件包
j2sdk-1_4_1_02-linux-i586.bin(jdk1.4.1)
Apache2.0.40 (Red Hat Linux8.0自带)
jakarta-tomcat-4.1.24.tar.gz(tomcat4.1.24)
jakarta-tomcat-connectors-4.1.24-src.tar.gz(connectors4.1.24)
2.安装所需要软件
(1) 首先将除apache以外的三个文件拷贝到/usr/local目录
./j2sdk-1_4_1_02-linux-i586.bin
##将jdk解到local下生成对应的目录
(2) tar zxpf jakarta-tomcat-4.1.24.tar.gz
##将tomcat解到local下生成对应的目录
(3) tar zxpf jakarta-tomcat-connectors-4.1.24-src.tar.gz
##将connectors解到local下生成对应的目录
3.设置环境变量
vi /etc/profile ## 编辑 /etc/profile
在文件结尾加入: ##注意其中的jakarta-tomcat,jdk要设成本机器相对应的目录视版本而定
PATH="$PATH:/usr/local/jakarta-tomcat/bin:/usr/local/jdk/bin:/usr/local/jdk/jre/bin"
JAVA_HOME=/usr/local/jdk
export JAVA_HOME
JRE_HOME=/usr/local/jdk/jre
export JRE_HOME
TOMCAT_HOME=/usr/local/jakarta-tomcat
export TOMCAT_HOME
CLASSPATH=/usr/local/jdk/lib:/usr/local/jdk/jre/lib
export CLASSPATH
4.编译生成mod_webapp.so
cd /usr/local/jakarta-tomcat-connectors-4.1.24-src/webapp
## 进入指定的目录
./support/buildconf.sh
## 生成编译配置文件
./configure --with-apxs
## 生成Makefile编译文件
(插曲:若此时提示找不到apxs,则证明你的Apache在安装的时候,未安装Apache附加的开发包,请下载安装该开发包,则会解决该问题,这个包在RedHat8安装盘的第三张里面,文件名是:httpd-devel-2.0.40-8.i386.rpm)
make
## 编译生成mod_webapp.so,生成的mod_webapp.so文件在apache-2.0目录中
把apache-2.0目录中的mod_webapp.so文件复制到目录/usr/lib/httpd/modules
并检查文件/usr/lib/httpd/modules/mod_webapp.so的属性,应与其它Modules文件属性一致,如果不相同,则使用chmod chgrp chown来修改
5.独立环境的测试
(1) 测试Java的运行状况,如下命令:
java -version
javac -version
看到版本号则表示JDK安装成功
(2) 测试Apache的运行状况,如下命令:
/etc/rc.d/init.d/httpd restart ## 重新启动Apache Server
使用任意一浏览器,输入服务器地址后回车,应该可以看到Apache的默认主页
(3) 测试Jakarta-Tomcat的运行状况,如下命令:
进入tomcat安装目录下面的bin目录
./startup.sh ## 启动jakarta-tomcat-4.1.24服务
使用任意一浏览器,输入服务器地址和端口号8080后回车,应该可以看到jakarta-tomcat-4.1.24的默认主页
例如: http://localhost:8080
./shutdown.sh ## 关闭jakarta-tomcat-4.1.24服务
6.整合安装设置
(1) 修改/etc/httpd/conf/httpd.conf文件
在# Dynamic Shared Object (DSO) Support之后,添加如下内容
LoadModule webapp_module modules/mod_webapp.so
(2) 测试配置和Modules,执行以下命令
apachectl configtest
如果出现Syntax OK,则证明Module安装和配置成功了
(3) 修改/etc/httpd/conf/httpd.conf文件
在文件尾部添加如下内容
WebAppConnection warpConnection warp localhost:8008
WebAppDeploy examples warpConnection /examples/
#如果不希望以http://ip/xxx/这种方式访问你的内容可以修改tomcat中server.xml文件中的ROOT应用
然后再在apache的httpd.conf文件
WebAppConnection warpConnection warp localhost:8008
后面再加一行WebAppDeploy ROOT warpConnection /
(4) 再次测试配置,执行以下命令
apachectl configtest
如果出现Syntax OK,则证明安装成功
如果出现以下错误信息
Syntax error on line 1038 of /etc/httpd/conf/httpd.conf:
Invalid virtual host name
则修改httpd.conf文件,找到#ServerName所在的行,并在其下面加入如下内容即可
ServerName localhost:8008 # 制定服务器的名称和端口,注意端口是8008,而不是8080,因为8008端口是专门用来给mod_webapp封装的
(5) 检查$CATALINA_HOME/conf/server.xml文件中相关的配置,默认情况下的
相关的信息是被注释掉了,搜索8008,找到<Service name="Tomcat-Apache">那段,把前面的"<!--"和</Service>后面的"-->"都删掉,
这样Tomcat在启动的时候才会初始化
7.整合测试
重新启动所有服务
./shutdown.sh
./startup.sh
/etc/rc.d/init.d/httpd restart
在浏览器中输入如下地址
http://服务器IP/examples/jsp/index.html,如果能够显示正常的网页,则安装成功
在浏览器中输入如下地址
http://服务器IP/examples/jsp/jsptoserv/jsptoservlet.jsp如果能够显示正常的网页和时间,则jsp和Servlet安装成功
seasun2k
2003-06-30
打赏
举报
回复
tomcat实现了简单的web server,因此对http的请求性能较低,一般使用:Apache+tomcat
huqile
2003-06-30
打赏
举报
回复
关注,我正在为此问题苦恼。
超级有影响力霸气的Java面试题大全文档
超级有影响力的Java面试题大全文档 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部
问题
,而只是选择其中的一部分,暂
时
不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 2.继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3.封装: 封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。 4. 多态性: 多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名
问题
。 5、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 6、int 和 Integer 有什么区别 Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型 封装类 boolean Boolean char Character byte Byte short Short int Integer long Long float Float double Double 引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度
问题
,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据
时
所指定的缺省值。对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关。 7、String 和StringBuffer的区别 JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的
时
候你就可以使用StringBuffer。典型地,你可以使用 StringBuffers来动态构造字符数据。 8、运行
时
异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行
时
异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行
时
异常,但是并不要求必须声明抛出未被捕获的运行
时
异常。 9、说出Servlet的生命周期,并说出Servlet和CGI的区别。 Servlet被服务器实例化后,容器运行其init方法,请求到达
时
运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的
时
候调用其destroy方法。 与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。 10、说出ArrayList,Vector, LinkedList的存储性能和特性 ArrayList 和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector由于使用了synchronized方法(线程安全),通常性能上较ArrayList差,而LinkedList使用双向链表实现存储,按序号索引数据需要进行前向或后向遍历,但是插入数据
时
只需要记录本项的前后项即可,所以插入速度较快。 11、EJB是基于哪些技术实现的?并说出SessionBean和EntityBean的区别,StatefulBean和StatelessBean的区别。 EJB包括Ses
总结
tomcat
优化方法
总结
tomcat
优化方法 1
Tomcat
性能优化 在目前流行的互联网架构中,
Tomcat
在目前的网络编程中是举足轻重的,由于
Tomcat
的运行依赖于JVM,从虚拟机的角度把
Tomcat
的优化分为外部环境调优 JVM 和
Tomcat
自身调优两部分 1.1 JVM组成部分 类加载子系统:使用Java语言编写。java Source Code文件,通过javac编译成。class Byte Code文件。class loader类加载器将所需所有类加载到内存,必要
时
将类实例化成实例 运行
时
数据区:最消耗
windows查看
tomcat
连接数_
Tomcat
深入解析与性能优化
前言在 Java 应用中,常用的 Web 服务器一般由
tomcat
、weblogic、jetty、undertwo等。但从 Java 2019和2020 生态使用报告可以看到,
tomcat
的
用户
量对比明显
较大
,当然这也基于它开源和免费的特点。Java 2019 年生态圈使用报告2020 Java 生态系统报告从软件架构的发展角度来看,软件架构大致经历了如下几个阶段:从 Java Web 角度来说...
Tomcat
深入解析与性能优化
前言 在 Java 应用中,常用的 Web 服务器一般由
tomcat
、weblogic、jetty、undertwo等。但从 Java 2019和2020 生态使用报告可以看到,
tomcat
的
用户
量对比明显
较大
,当然这也基于它开源和免费的特点。 Java 2019 年生态圈使用报告 2020 Java 生态系统报告 从软件架构的发展角度来看,软件架构大致经历了如下几个阶段: 从 Java Web 角度来说,架构大致经历了: 从当前企业使用的架构角度来说,使用SSM架构项目比较多,SSH基本被淘汰
服务器上的
tomcat
偶尔响应变慢
关与
tomcat
方面,可以采用优化措施: 当线程过多机器资源消耗过大,不仅影响性能,严重还会宕机。例如线程达到150左右
时
服务端会抛出socket资源用尽的错误,你很难再往上加,响应的速度也变的异常的缓慢,你可以在
Tomcat
的服务器配置文件中优化一下配置,比如在 server.xml中修改,增加节点
数目
,可以有效的提高性能: minSpareThreads="30"
Web开发应用服务器
5,658
社区成员
20,169
社区内容
发帖
与我相关
我的任务
Web开发应用服务器
Web开发应用服务器相关讨论专区
复制链接
扫一扫
分享
社区描述
Web开发应用服务器相关讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章