SOS关于JAVA实际应用中的瓶颈及性能问题,求助各位富翁【100分】~ ( 积分: 100 )

  • 主题发起人 主题发起人 南北高架
  • 开始时间 开始时间

南北高架

Unregistered / Unconfirmed
GUEST, unregistred user!
小弟最近在用Java/Jsp做一个BS结构的类似于考试的系统,大概有150个左右的连接端,原来的处理方法是考试前每个连接端从服务器下载试卷,保存到本地的一个VECTOR中去,以后每做完一题保存一题,这样性能受到很大影响,表现如下:
1,考试前考生同时下载试卷的时候,因为都是读取同一个数据表,所以速度相当慢!
2,答题过程中,现在的方式是每做一题保存一题(直接保存到数据库),因连接端多,对数据库写入太频繁,时常出现保存不了的问题,不稳定
特求助各位富翁,以得解决之道!
运行环境:
windows 2000
jboss-3.2.0_tomcat-4.1.24
sqlserver2000
客户端通过JSP连接
 
小弟最近在用Java/Jsp做一个BS结构的类似于考试的系统,大概有150个左右的连接端,原来的处理方法是考试前每个连接端从服务器下载试卷,保存到本地的一个VECTOR中去,以后每做完一题保存一题,这样性能受到很大影响,表现如下:
1,考试前考生同时下载试卷的时候,因为都是读取同一个数据表,所以速度相当慢!
2,答题过程中,现在的方式是每做一题保存一题(直接保存到数据库),因连接端多,对数据库写入太频繁,时常出现保存不了的问题,不稳定
特求助各位富翁,以得解决之道!
运行环境:
windows 2000
jboss-3.2.0_tomcat-4.1.24
sqlserver2000
客户端通过JSP连接
 
没有人知道吗:(
 
最基础的一点,使用连接池。
 
已经使用了连接池:(
 
顶到有人回答。。。。
 
使用缓存器。
有现成的可以用,你可以到网上去找找。
在这先说一下基本原理:
在取数据的时候先到缓存中去取(你可以用hashmap实现缓存)。
如果缓存中没有再到数据库中去取。
在从数据库中取出来后先添加到缓存中。
这里缓存有个大小设定。
每次添加到缓存的时候先看看缓存是否到了指定的最大容量。
如果到了则对其进行清理(使用最久未使用等算法)。
差不多就这样了,你自己再研究研究吧。
 
答完后再保存
 
后退
顶部