JAVA网站访问速度过慢(在线等) 不知道为什么网站速度变的很慢,过去同样一个网站打开速度5秒就好了,但是现在要1分多钟。并且在本地测试的时候还是很快的,一放到服务器上就变慢了。有哪位高手大大能告诉我怎么做么?在线等!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 jsp网页 在本地先预编译 速度应该能快 第一次运行的时候,要把jsp反应成servlet类放在容器里,所以会慢第一次以后就直接访问内存了,会变快 服务器和本地环境有什么区别?用的同一个数据库么?服务器不加载你的app的时候速度怎么样? 不太可能。。你想啊。你刚放上去 就会有那么多人去访问吗。如果是访问量的问题。查查 代码是不是有哪些不必要的数据库连接。如果一个页面上有好几次 数据访问。或者ajax 等一直掉用。这很有可能。还有一种就是 你的外网ip 访问速度现在变慢了 看看 服务器和数据库服务器cpu及内存使用 我晕,打开网页慢不要带上 java 哦。这样会引起人家的误解的。而且,你的描述很诡异,本地本机测试,还会比正式机的快? 看样子你们公司发布用的正式环境的配置还不如你开发的机器?汗???做个模拟和压力测试吧。看看是不是有什么加载的东西,会被人家机器上的什么杀毒软件还是防火墙屏蔽,加载不上去。 我也遇到这个问题。刚刚做的一的网站。放到服务器,慢死了,基本打不开。有很多原因的,可能是写语句的时候有自连接现象。或者访问的人数过多。或者服务器那边出问题。你可以考虑把jsp转换成静态html页面。用户访问不经过数据库,直接访问静态页面。页面的ajax请求尽量少些。 谢谢大家 的建议! 我说下我这里的情况吧我使用的是SSH框架开发的在线订餐网站用的是TOMCAT+SQL2005前期在放到服务器上的时候还是很快的,可是经过一段时间的宣传 日点击率上了4000+的时候 访问速度就变慢了!而且在访问一个后台登陆页面 没有任何的数据库连接的时候也很慢! 可以是网络问题,我们以前也出现过,是DNS的问题,你查查 由一个问题我要说明一下,我在打开首页的时候要请求10此以上的数据库来放到session中 而且不使用连接池,每次都创建新的connection,这本身也是一个极度浪费效率的过程 又一个把访问过慢归结到 java 的人。去看看做的飞快的java网站吧。 必须的承认java互联网项目强势不在这里,是需要大量辅助工作才能提高速度1 前提有个好硬件2 全站html静态化 (非伪静态)3 整合apache+tomcat 或者iis+tomcat 之类的 当然其他java web容器也能整合4 负载均衡 apache5 squid 加速 我感觉应该是创建数据库连接Connection的时候浪费了太多时间.不过还不知道应该怎么弄.我弄过一个项目,数据库在本机的时候创建Connection的时间为100MS,但是当使用我局域网上其他机器的数据库的时候创建Connection的时间就变成了9S,这里就变相的加长了访问时间了.不知道这种情况怎么解决,是否使用连接池管理数据库连接. 确定是服务器问题,还是数据的问题,还是程序的问题怎样测试服务器呢?把查询的数据库关掉。测试程序 或者上传几个html,访问以下看看速度测试数据库,把sql语句写成存储过程,查看时间遇到这种问题八成是数据库或者说sql语句没有优化 同意。关键还是要先确定到底是哪个部分出现的速度缓慢。可以分成几个部分。1、客户端与服务器的网络情况用ping或者就像楼上说的,写个就写个简单的jsp或者html看看快不快。如果这都慢,很可能是线路问题,或者服务器设置有问题。2、服务器上连接数据库这里需要区分,究竟是获得连接getConnection慢,还是执行SQL的速度慢。如果是连接缓慢则需要检查服务器与数据库服务器网络连接情况,如果是SQL执行慢,需要进行SQL调优。3、页面本身问题,页面使用了大量的Ajax框架之类,不过看楼主的情况不像是这个问题。 看一下tomcat的各项参数,内存使用,session数量等。看一下数据库的参数。更简单的方法:你自己在另外一台机器上起个服务,连到同一个数据库上,如果访问这个很慢,说明是数据库是瓶颈,否者说明瓶颈在服务器。 这种情况,绝大部分可能是程序里面访问数据库的地方比较多,查询的sql性能也不好,用户多了以后,造成数据库大量的并发查询。每个connection会占用很久才能查询完释放掉,释放的速度小于新增并发操作的速度,就会造成连接已用完的情况 查询sql...感觉还是数据库的问题检查下你的sql,优化下 hibernate不优化 查询会很慢访问量很大 最好做个服务器负载均衡不能只靠一个服务器干活 基本上37楼说的是对的。网站访问其实和项目关系不大 主要还是要提高服务器网页的浏览上如果页面上的FLSH JS过多开启肯定很缓慢用TOMCAT+APACHE吧动静态页面分开来处理 可以想象肯定快的多而且不用修改项目 另外你可以吧项目的CLASS文件丢进去 源码不要放在服务器上 这样就节省一点在分配好内存 这很重要 速度就快多了其他的硬件 项目代码节约我就不说了 那就太多了! 先要用排除法吧。到底是数据库慢还是jsp慢。 我的sqlervice CPU使用在50%以上基本,甚至 70-80%以上 求一段java关于I/O流的示例代码。 古老jar包的问题,struts-core-2.1.6中文乱码问题 google App engine Java 中文文档~~ 我从网上扒下来的~~ 献给大家 求一个中文正则表达式! HTTP Status 404 - /hhh/first.jsp 求100分 RBManager0.7 在JSP页面循环获取Float字段的数据, 怎样去除整数末尾的.0呢? 小弟做的网站部署到uxit服务器上有什么要注意的么?改如何操作呢? 怎么才能取得记录集的记录条数???? tomcat配置 web服务调用服务 Json Jackson是否支持中文?
第一次以后就直接访问内存了,会变快
用的同一个数据库么?服务器不加载你的app的时候速度怎么样?
你想啊。你刚放上去 就会有那么多人去访问吗。
如果是访问量的问题。查查 代码是不是有哪些不必要的数据库连接。
如果一个页面上有好几次 数据访问。或者ajax 等一直掉用。这很有可能。还有一种就是 你的外网ip 访问速度现在变慢了
有很多原因的,可能是写语句的时候有自连接现象。或者访问的人数过多。或者服务器那边出问题。
你可以考虑把jsp转换成静态html页面。用户访问不经过数据库,直接访问静态页面。页面的ajax请求尽量少些。
我说下我这里的情况吧
我使用的是SSH框架开发的在线订餐网站用的是TOMCAT+SQL2005
前期在放到服务器上的时候还是很快的,可是经过一段时间的宣传 日点击率上了4000+的时候 访问速度就变慢了!而且在访问一个后台登陆页面 没有任何的数据库连接的时候也很慢!
2 全站html静态化 (非伪静态)
3 整合apache+tomcat 或者iis+tomcat 之类的 当然其他java web容器也能整合
4 负载均衡 apache
5 squid 加速
不过还不知道应该怎么弄.我弄过一个项目,数据库在本机的时候创建Connection的时间为100MS,但是当使用我局域网上其他机器的数据库的时候创建Connection的时间就变成了9S,这里就变相的加长了访问时间了.
不知道这种情况怎么解决,是否使用连接池管理数据库连接.
怎样测试服务器呢?把查询的数据库关掉。
测试程序 或者上传几个html,访问以下看看速度
测试数据库,把sql语句写成存储过程,查看时间遇到这种问题八成是数据库或者说sql语句没有优化
同意。
关键还是要先确定到底是哪个部分出现的速度缓慢。可以分成几个部分。
1、客户端与服务器的网络情况
用ping或者就像楼上说的,写个就写个简单的jsp或者html看看快不快。如果这都慢,很可能是线路问题,或者服务器设置有问题。
2、服务器上连接数据库
这里需要区分,究竟是获得连接getConnection慢,还是执行SQL的速度慢。如果是连接缓慢则需要检查服务器与数据库服务器网络连接情况,如果是SQL执行慢,需要进行SQL调优。
3、页面本身问题,页面使用了大量的Ajax框架之类,不过看楼主的情况不像是这个问题。
看一下数据库的参数。更简单的方法:
你自己在另外一台机器上起个服务,连到同一个数据库上,如果访问这个很慢,说明是数据库是瓶颈,否者说明瓶颈在服务器。
检查下你的sql,优化下
访问量很大 最好做个服务器负载均衡
不能只靠一个服务器干活
网站访问其实和项目关系不大 主要还是要提高服务器
网页的浏览上如果页面上的FLSH JS过多开启肯定很缓慢
用TOMCAT+APACHE吧动静态页面分开来处理 可以想象肯定快的多
而且不用修改项目
另外你可以吧项目的CLASS文件丢进去 源码不要放在服务器上 这样就节省一点
在分配好内存 这很重要 速度就快多了
其他的硬件 项目代码节约我就不说了 那就太多了!