- 浏览: 2610331 次
- 性别:
- 来自: 小胖儿的大城
文章分类
最新评论
-
ni4wangba0:
ni4wangba0 写道亲测,算法有问题。对不起,其实是我自 ...
谈谈"求线段交点"的几种算法(js实现,完整版) -
ni4wangba0:
亲测,算法有问题。
谈谈"求线段交点"的几种算法(js实现,完整版) -
kers007:
苹果不让Webapp 在appstore 里发布,我不知道对 ...
苹果真的要在 AppStore 里封杀 WebApp 吗? -
striveandlive:
fins = js大牛
[原创]GT-Template, 一个超轻量级的js模板工具. -
AlwaysYang:
基础扎实的才能行走天下。
关于body的"大小"在ie和ff下的一些基础知识
我们的大数据量查询是数据库分页的,
但是导出和打印功能是基于全部数据的.
系统投入使用后,对于导出和打印功能的使用远远要高于我们的预期.
而我们的系统的硬件设备是有限的 不能再升级了.
抓取内存大对象的时候,常常发现数百个5M以上的collection大对象
我们的这个系统不大,就是一个提供一些信息管理的,页面也不多(不到1000个 其中能有6 7百的页面是查询),但是并发访问量比较大,同时在线能有5000人,而并发的查询操作至少也有500了,其中大数据量(10万以上)的太多了.这个问题怎么办啊
哪位有好的解决办法 (不生成vo 和 vo的collection也许可以,但是这样改动太大了)
而且关键是 系统已经上线了, 不太可能重新开发所有的dao层 :'(
4G内存的机器(当然java只用了2g) websphere 6.0的机器
1.
对于生成xls文件,我有一些经验。我用的POI。我发现,对于同样是将2万行的数据写入一个文件,放在一个sheet里和两个sheet里,内存占用能相差一倍,后者少。经过我的试验,一般一个sheet里1万行(一行有10几列)比较合适,多的就分sheet保存,可以有效的降低内存占用,约1--n倍。虽然不是终极的解决方案,也是一个可行的方案,不妨试试。
Lucas Lee说的有道理。我以前做HR产品,也有过类似经历。当从花名册导出XLS时,有时表格CELL超过100万,极易内存溢出。
改进途径:
1.修改Java Plugin 内存参数,效果不大;
2.当要导出的数据单元格超过10万时,输出不是一个而是多个XLS文件,也就是一拆多(以10万单元格为一单位),可有效避免大对象。
对极占用资源(如内存)的任务,应考虑“生产者-消费者模型+内存池”模型。数据由生产者(查询过程)从服务器端查询到内存池,消费者处理完数据从内存池移除旧数据...循环往复直到处理完毕。
类似的方法我们用过 我们是直接将 response.getOutputStream传入dao
在dao里生成 printwriter 然后直接 out.print
这个方法应该更好 避免了生成和修改文件
如果是直接使用response,这是不好的办法.可能因为io阻塞,导致对象不能及时释放。
Wrapper一个Response,写到自己实现的ByteArrayOuputStream
这样生成的ByteArrayOuputStream会不会也是大对象呢??
想法不错 不过每个用户所需的数据可能不同 共享有些不太实际吧
collection是不能共享的,但是collection里面的元素应该是可以共享的。
比如用户A打印的报表上有一个合同,用户B打印的报表上也有这个合同,这个合同对象就可以共享了,每个collection里面只要有这个合同的引用就行了,节约内存40%以上。
类似的方法我们用过 我们是直接将 response.getOutputStream传入dao
在dao里生成 printwriter 然后直接 out.print
这个方法应该更好 避免了生成和修改文件
如果是直接使用response,这是不好的办法.可能因为io阻塞,导致对象不能及时释放。
Wrapper一个Response,写到自己实现的ByteArrayOuputStream
想法不错 不过每个用户所需的数据可能不同 共享有些不太实际吧
用数据挖掘技术进行一定量的数据整理。
每台打印机不可能打5M左右的东西的。。。
放心吧总有能轧出来的性能的。
刚刚想点上一页
点了新手贴。。。
十二万分的抱歉。。。
权重太大了。。。
作程:定时器,延时器,多事务,哪个不能用?非要用户自己解决么?
我说的不太准确 其实是两个瓶颈 一个是 collection对象 一个是jxl生成的xls大对象
郁闷中 我打算研究一下excel的生成原理 自己做一个合并xls文件的程序
把多个文件 合并成一个有多个sheet页的xls文件 (用jxl poi做这类操作还是会生成很大很大的对象)
1.
对于生成xls文件,我有一些经验。
我用的POI。我发现,对于同样是将2万行的数据写入一个文件,放在一个sheet里和两个sheet里,内存占用能相差一倍,后者少。经过我的试验,一般一个sheet里1万行(一行有10几列)比较合适,多的就分sheet保存,可以有效的降低内存占用,约1--n倍。
虽然不是终极的解决方案,也是一个可行的方案,不妨试试。
2.
csv是简单文本格式,内存占用量必定比xls少很多倍,但是他基本上无法表达格式。实在不行就用csv好了。
3.
还有一个曲线救国的方法,就是用html格式,技巧是,将html文件保存成xls后缀文件(假装为xls),excel是可以自动识别为html并打开,也可以保存格式。唯一的不同是,用户需要“真实”的xls格式的话,需要用Excel打开后另存为xls格式。其实用户不就是打印么,那么应该没有区别。
1 3 策略我们现在的系统都用到了
问题就是老系统 我主贴中提到的是一个老系统 郁闷啊
不过还是谢谢大家提供的方案
其实仔细看看,可以说,楼上各位的方案基本上已经涵盖了 所有的 xls的解决方法
我可以把这个帖子作为一个 方法的汇总帖了 呵呵
谢谢各位!!!
如果我们老大允许我们大刀阔斧的改造代码 一切就都OK了
现在也许问题已经不是出在方法和技巧上 而是人的问题了
以前系统设计的不够好 ,让现在的人为过去埋单,似乎也是天经地义的.毕竟我也从前辈那学到过太多的东西
呵呵
再次谢谢大家
类似的方法我们用过 我们是直接将 response.getOutputStream传入dao
在dao里生成 printwriter 然后直接 out.print
这个方法应该更好 避免了生成和修改文件
我说的不太准确 其实是两个瓶颈 一个是 collection对象 一个是jxl生成的xls大对象
郁闷中 我打算研究一下excel的生成原理 自己做一个合并xls文件的程序
把多个文件 合并成一个有多个sheet页的xls文件 (用jxl poi做这类操作还是会生成很大很大的对象)
1.
对于生成xls文件,我有一些经验。
我用的POI。我发现,对于同样是将2万行的数据写入一个文件,放在一个sheet里和两个sheet里,内存占用能相差一倍,后者少。经过我的试验,一般一个sheet里1万行(一行有10几列)比较合适,多的就分sheet保存,可以有效的降低内存占用,约1--n倍。
虽然不是终极的解决方案,也是一个可行的方案,不妨试试。
2.
csv是简单文本格式,内存占用量必定比xls少很多倍,但是他基本上无法表达格式。实在不行就用csv好了。
3.
还有一个曲线救国的方法,就是用html格式,技巧是,将html文件保存成xls后缀文件(假装为xls),excel是可以自动识别为html并打开,也可以保存格式。唯一的不同是,用户需要“真实”的xls格式的话,需要用Excel打开后另存为xls格式。其实用户不就是打印么,那么应该没有区别。
我说的不太准确 其实是两个瓶颈 一个是 collection对象 一个是jxl生成的xls大对象
郁闷中 我打算研究一下excel的生成原理 自己做一个合并xls文件的程序
把多个文件 合并成一个有多个sheet页的xls文件 (用jxl poi做这类操作还是会生成很大很大的对象)
但是导出和打印功能是基于全部数据的.
系统投入使用后,对于导出和打印功能的使用远远要高于我们的预期.
而我们的系统的硬件设备是有限的 不能再升级了.
抓取内存大对象的时候,常常发现数百个5M以上的collection大对象
我们的这个系统不大,就是一个提供一些信息管理的,页面也不多(不到1000个 其中能有6 7百的页面是查询),但是并发访问量比较大,同时在线能有5000人,而并发的查询操作至少也有500了,其中大数据量(10万以上)的太多了.这个问题怎么办啊
哪位有好的解决办法 (不生成vo 和 vo的collection也许可以,但是这样改动太大了)
而且关键是 系统已经上线了, 不太可能重新开发所有的dao层 :'(
4G内存的机器(当然java只用了2g) websphere 6.0的机器
评论
42 楼
zerozone
2007-05-01
Lucas Lee 写道
1.
对于生成xls文件,我有一些经验。我用的POI。我发现,对于同样是将2万行的数据写入一个文件,放在一个sheet里和两个sheet里,内存占用能相差一倍,后者少。经过我的试验,一般一个sheet里1万行(一行有10几列)比较合适,多的就分sheet保存,可以有效的降低内存占用,约1--n倍。虽然不是终极的解决方案,也是一个可行的方案,不妨试试。
Lucas Lee说的有道理。我以前做HR产品,也有过类似经历。当从花名册导出XLS时,有时表格CELL超过100万,极易内存溢出。
改进途径:
1.修改Java Plugin 内存参数,效果不大;
2.当要导出的数据单元格超过10万时,输出不是一个而是多个XLS文件,也就是一拆多(以10万单元格为一单位),可有效避免大对象。
对极占用资源(如内存)的任务,应考虑“生产者-消费者模型+内存池”模型。数据由生产者(查询过程)从服务器端查询到内存池,消费者处理完数据从内存池移除旧数据...循环往复直到处理完毕。
41 楼
nihongye
2007-04-30
可以算...,并发数量是500,每个大小是1m的话,那是500 * 1m = 500m。而如果io阻塞,每个请求都得不到释放。每个请求的临时对象是5m,那就,垃圾回收又不停在浪费cpu,继续导致。。我说的好象很象真的一样。试试才知道咯...
40 楼
fins
2007-04-29
nihongye 写道
fins 写道
programmer 写道
解决你的 excel问题,可以考虑生成csv。先在服务器生成一个临时文件来存放csv问题,然后查询数据,取数据放入stringBuffer 当此stringBuffer的数据大到一定程度时候就往文件里输出,然后清空StringBuffer 这样重复处理,直到查询出来的数据都写人文件。这样因该可以避免java的outofmemory。
类似的方法我们用过 我们是直接将 response.getOutputStream传入dao
在dao里生成 printwriter 然后直接 out.print
这个方法应该更好 避免了生成和修改文件
如果是直接使用response,这是不好的办法.可能因为io阻塞,导致对象不能及时释放。
Wrapper一个Response,写到自己实现的ByteArrayOuputStream
这样生成的ByteArrayOuputStream会不会也是大对象呢??
39 楼
umbrella
2007-04-29
根据楼上的,是否可以这样做
每次打印都存在coolection内,重复的不加,不重复的加上,coolection对象有很多个,分组,分段,比如某个COOLECTION存第1-10000个对象,另一个存10001-20000的对象,根据打印哪些数据去从哪个COOLECTION内取数据。
每次打印都存在coolection内,重复的不加,不重复的加上,coolection对象有很多个,分组,分段,比如某个COOLECTION存第1-10000个对象,另一个存10001-20000的对象,根据打印哪些数据去从哪个COOLECTION内取数据。
38 楼
lane_cn
2007-04-28
xly_971223 写道
lane_cn 写道
可以分析一下能不能在多个会话中共享一些对象,也许一个collection里面的元素和另一个collection的元素都是同一个,没必要建立一个新的,既浪费内存,又降低了效率。
想法不错 不过每个用户所需的数据可能不同 共享有些不太实际吧
collection是不能共享的,但是collection里面的元素应该是可以共享的。
比如用户A打印的报表上有一个合同,用户B打印的报表上也有这个合同,这个合同对象就可以共享了,每个collection里面只要有这个合同的引用就行了,节约内存40%以上。
37 楼
nihongye
2007-04-28
fins 写道
programmer 写道
解决你的 excel问题,可以考虑生成csv。先在服务器生成一个临时文件来存放csv问题,然后查询数据,取数据放入stringBuffer 当此stringBuffer的数据大到一定程度时候就往文件里输出,然后清空StringBuffer 这样重复处理,直到查询出来的数据都写人文件。这样因该可以避免java的outofmemory。
类似的方法我们用过 我们是直接将 response.getOutputStream传入dao
在dao里生成 printwriter 然后直接 out.print
这个方法应该更好 避免了生成和修改文件
如果是直接使用response,这是不好的办法.可能因为io阻塞,导致对象不能及时释放。
Wrapper一个Response,写到自己实现的ByteArrayOuputStream
36 楼
nihongye
2007-04-28
del
35 楼
xly_971223
2007-04-27
lane_cn 写道
可以分析一下能不能在多个会话中共享一些对象,也许一个collection里面的元素和另一个collection的元素都是同一个,没必要建立一个新的,既浪费内存,又降低了效率。
想法不错 不过每个用户所需的数据可能不同 共享有些不太实际吧
34 楼
lane_cn
2007-04-27
可以分析一下能不能在多个会话中共享一些对象,也许一个collection里面的元素和另一个collection的元素都是同一个,没必要建立一个新的,既浪费内存,又降低了效率。
33 楼
抛出异常的爱
2007-04-27
fins 写道
我们的大数据量查询是数据库分页的,
但是导出和打印功能是基于全部数据的.
系统投入使用后,对于导出和打印功能的使用远远要高于我们的预期.
而我们的系统的硬件设备是有限的 不能再升级了.
抓取内存大对象的时候,常常发现数百个5M以上的collection大对象
我们的这个系统不大,就是一个提供一些信息管理的,页面也不多(不到1000个 其中能有6 7百的页面是查询),但是并发访问量比较大,同时在线能有5000人,而并发的查询操作至少也有500了,其中大数据量(10万以上)的太多了.这个问题怎么办啊
哪位有好的解决办法 (不生成vo 和 vo的collection也许可以,但是这样改动太大了)
而且关键是 系统已经上线了, 不太可能重新开发所有的dao层 :'(
4G内存的机器(当然java只用了2g) websphere 6.0的机器
但是导出和打印功能是基于全部数据的.
系统投入使用后,对于导出和打印功能的使用远远要高于我们的预期.
而我们的系统的硬件设备是有限的 不能再升级了.
抓取内存大对象的时候,常常发现数百个5M以上的collection大对象
我们的这个系统不大,就是一个提供一些信息管理的,页面也不多(不到1000个 其中能有6 7百的页面是查询),但是并发访问量比较大,同时在线能有5000人,而并发的查询操作至少也有500了,其中大数据量(10万以上)的太多了.这个问题怎么办啊
哪位有好的解决办法 (不生成vo 和 vo的collection也许可以,但是这样改动太大了)
而且关键是 系统已经上线了, 不太可能重新开发所有的dao层 :'(
4G内存的机器(当然java只用了2g) websphere 6.0的机器
用数据挖掘技术进行一定量的数据整理。
每台打印机不可能打5M左右的东西的。。。
放心吧总有能轧出来的性能的。
刚刚想点上一页
点了新手贴。。。
十二万分的抱歉。。。
权重太大了。。。
32 楼
抛出异常的爱
2007-04-27
maoone2003 写道
如果无法提升硬件配置可以在导出或打印时控制每次打印或导出的行数,这个很容易做到的,我们以前是导出数据只要超过10W行就宕机,后来索性就只让每次导出1W行,如果客户觉得操作不便让他们内部协调提升硬件配置,要不好像没有别的解决办法啊.....
作程:定时器,延时器,多事务,哪个不能用?非要用户自己解决么?
31 楼
pufan
2007-04-27
真是奇怪,不就是并发造成大对象过多引起out of memory error吗,最直观的方法就是控制并发数量了。
给你段代码:
你只需根据内存大小改变limit值即可。
给你段代码:
final int limit=10; final ThreadPoolExecutor threadPool = new ThreadPoolExecutor(limit, limit, 1 * 60, TimeUnit.SECONDS, new LinkedBlockingQueue()); public void outputExcel(HttpServletResponse rs,HttpServletRequest rq) { threadPool.execute(new Runnable() { public void run() { 读取数据库; 生成xsl; 输出到response; } }); }
你只需根据内存大小改变limit值即可。
30 楼
maoone2003
2007-04-27
如果无法提升硬件配置可以在导出或打印时控制每次打印或导出的行数,这个很容易做到的,我们以前是导出数据只要超过10W行就宕机,后来索性就只让每次导出1W行,如果客户觉得操作不便让他们内部协调提升硬件配置,要不好像没有别的解决办法啊.....
29 楼
fins
2007-04-27
Lucas Lee 写道
fins 写道
我说的不太准确 其实是两个瓶颈 一个是 collection对象 一个是jxl生成的xls大对象
郁闷中 我打算研究一下excel的生成原理 自己做一个合并xls文件的程序
把多个文件 合并成一个有多个sheet页的xls文件 (用jxl poi做这类操作还是会生成很大很大的对象)
1.
对于生成xls文件,我有一些经验。
我用的POI。我发现,对于同样是将2万行的数据写入一个文件,放在一个sheet里和两个sheet里,内存占用能相差一倍,后者少。经过我的试验,一般一个sheet里1万行(一行有10几列)比较合适,多的就分sheet保存,可以有效的降低内存占用,约1--n倍。
虽然不是终极的解决方案,也是一个可行的方案,不妨试试。
2.
csv是简单文本格式,内存占用量必定比xls少很多倍,但是他基本上无法表达格式。实在不行就用csv好了。
3.
还有一个曲线救国的方法,就是用html格式,技巧是,将html文件保存成xls后缀文件(假装为xls),excel是可以自动识别为html并打开,也可以保存格式。唯一的不同是,用户需要“真实”的xls格式的话,需要用Excel打开后另存为xls格式。其实用户不就是打印么,那么应该没有区别。
1 3 策略我们现在的系统都用到了
问题就是老系统 我主贴中提到的是一个老系统 郁闷啊
不过还是谢谢大家提供的方案
其实仔细看看,可以说,楼上各位的方案基本上已经涵盖了 所有的 xls的解决方法
我可以把这个帖子作为一个 方法的汇总帖了 呵呵
谢谢各位!!!
如果我们老大允许我们大刀阔斧的改造代码 一切就都OK了
现在也许问题已经不是出在方法和技巧上 而是人的问题了
以前系统设计的不够好 ,让现在的人为过去埋单,似乎也是天经地义的.毕竟我也从前辈那学到过太多的东西
呵呵
再次谢谢大家
28 楼
fins
2007-04-27
programmer 写道
解决你的 excel问题,可以考虑生成csv。先在服务器生成一个临时文件来存放csv问题,然后查询数据,取数据放入stringBuffer 当此stringBuffer的数据大到一定程度时候就往文件里输出,然后清空StringBuffer 这样重复处理,直到查询出来的数据都写人文件。这样因该可以避免java的outofmemory。
类似的方法我们用过 我们是直接将 response.getOutputStream传入dao
在dao里生成 printwriter 然后直接 out.print
这个方法应该更好 避免了生成和修改文件
27 楼
LucasLee
2007-04-27
fins 写道
我说的不太准确 其实是两个瓶颈 一个是 collection对象 一个是jxl生成的xls大对象
郁闷中 我打算研究一下excel的生成原理 自己做一个合并xls文件的程序
把多个文件 合并成一个有多个sheet页的xls文件 (用jxl poi做这类操作还是会生成很大很大的对象)
1.
对于生成xls文件,我有一些经验。
我用的POI。我发现,对于同样是将2万行的数据写入一个文件,放在一个sheet里和两个sheet里,内存占用能相差一倍,后者少。经过我的试验,一般一个sheet里1万行(一行有10几列)比较合适,多的就分sheet保存,可以有效的降低内存占用,约1--n倍。
虽然不是终极的解决方案,也是一个可行的方案,不妨试试。
2.
csv是简单文本格式,内存占用量必定比xls少很多倍,但是他基本上无法表达格式。实在不行就用csv好了。
3.
还有一个曲线救国的方法,就是用html格式,技巧是,将html文件保存成xls后缀文件(假装为xls),excel是可以自动识别为html并打开,也可以保存格式。唯一的不同是,用户需要“真实”的xls格式的话,需要用Excel打开后另存为xls格式。其实用户不就是打印么,那么应该没有区别。
26 楼
programmer
2007-04-27
解决你的 excel问题,可以考虑生成csv。先在服务器生成一个临时文件来存放csv问题,然后查询数据,取数据放入stringBuffer 当此stringBuffer的数据大到一定程度时候就往文件里输出,然后清空StringBuffer 这样重复处理,直到查询出来的数据都写人文件。这样因该可以避免java的outofmemory。
25 楼
fins
2007-04-26
sorphi 写道
fins,写完之后才发现你也提到了xls的写入才是瓶颈。
而且我刚才想了一下,我的方法中callback导致第2/3三条和第1条是冲突的。
既然方法被驳回了,那也说得过去。那就集中解决xls的生成问题吧
刚才google了一下csv -> xls的东西,虽然没找到什么有效的java代码,但是发现一个有趣的事情,有网站专门提供在线的转换。继而想到,何不单独提供一个应用来干这个事情呢?
不过用java来做这种转换,仍然摆脱不了内存占用较大的问题,看poi的API。jxl的我不清楚,照你说的,跟poi的差不多。
既然客户比较“变态”(查询这么贼多数据),那么何不让这种转换拿到client端来做呢?哈哈
继续google,activex+csv+xls
http://www.softinterface.com/Convert-Excel-ActiveX/Convert-Excel-ActiveX.htm
而且我刚才想了一下,我的方法中callback导致第2/3三条和第1条是冲突的。
既然方法被驳回了,那也说得过去。那就集中解决xls的生成问题吧
刚才google了一下csv -> xls的东西,虽然没找到什么有效的java代码,但是发现一个有趣的事情,有网站专门提供在线的转换。继而想到,何不单独提供一个应用来干这个事情呢?
不过用java来做这种转换,仍然摆脱不了内存占用较大的问题,看poi的API。jxl的我不清楚,照你说的,跟poi的差不多。
既然客户比较“变态”(查询这么贼多数据),那么何不让这种转换拿到client端来做呢?哈哈
继续google,activex+csv+xls
http://www.softinterface.com/Convert-Excel-ActiveX/Convert-Excel-ActiveX.htm
我说的不太准确 其实是两个瓶颈 一个是 collection对象 一个是jxl生成的xls大对象
郁闷中 我打算研究一下excel的生成原理 自己做一个合并xls文件的程序
把多个文件 合并成一个有多个sheet页的xls文件 (用jxl poi做这类操作还是会生成很大很大的对象)
24 楼
nihongye
2007-04-26
考虑生成跟下载分成两个步骤。 另外既然内存占用那么多,jvm的内存调优也要考虑
23 楼
sorphi
2007-04-26
fins,写完之后才发现你也提到了xls的写入才是瓶颈。
而且我刚才想了一下,我的方法中callback导致第2/3三条和第1条是冲突的。
既然方法被驳回了,那也说得过去。那就集中解决xls的生成问题吧
刚才google了一下csv -> xls的东西,虽然没找到什么有效的java代码,但是发现一个有趣的事情,有网站专门提供在线的转换。继而想到,何不单独提供一个应用来干这个事情呢?
不过用java来做这种转换,仍然摆脱不了内存占用较大的问题,看poi的API。jxl的我不清楚,照你说的,跟poi的差不多。
既然客户比较“变态”(查询这么贼多数据),那么何不让这种转换拿到client端来做呢?哈哈
继续google,activex+csv+xls
http://www.softinterface.com/Convert-Excel-ActiveX/Convert-Excel-ActiveX.htm
而且我刚才想了一下,我的方法中callback导致第2/3三条和第1条是冲突的。
既然方法被驳回了,那也说得过去。那就集中解决xls的生成问题吧
刚才google了一下csv -> xls的东西,虽然没找到什么有效的java代码,但是发现一个有趣的事情,有网站专门提供在线的转换。继而想到,何不单独提供一个应用来干这个事情呢?
不过用java来做这种转换,仍然摆脱不了内存占用较大的问题,看poi的API。jxl的我不清楚,照你说的,跟poi的差不多。
既然客户比较“变态”(查询这么贼多数据),那么何不让这种转换拿到client端来做呢?哈哈
继续google,activex+csv+xls
http://www.softinterface.com/Convert-Excel-ActiveX/Convert-Excel-ActiveX.htm
发表评论
-
一个商业公司如果要支持一个开源项目的话,它需要做哪些工作啊?
2009-12-07 16:55 4953一个商业公司如果要支持一个开源项目的话,它需要做哪些工作呢? ... -
如何让jxl (jexcelapi) 支持更多的数据
2009-01-08 23:52 4517jxl (jexcelapi) 一直是我比较喜欢的 java版 ... -
在java中"模拟" XMLHttpRequest
2008-11-03 12:17 13095这里所说的"模拟" 是指 : 在java中 ... -
利用google docs进行"轻量级过程管理".
2008-08-28 13:21 0利用google docs进行" ... -
[请教]jxl生成xls时,支持"合并"或"磁盘缓存"吗(导出大数据量时)
2008-07-28 09:37 6940jxl 由于其小巧 易用的特点, 逐渐已经取代了 POI-ex ... -
不错的国产开源免费的php框架: FleaPHP
2008-07-28 01:58 8518之前用他开发过一个小的网站 开发过程非常轻松愉快 体验也很好 ... -
GT-FrontController, 一个简陋的MVC控制器的设计思路
2008-07-06 23:53 2730在给GT-Grid做前后台结合的例子时, 为了"快速 ... -
h2database 普及系列一: 简介
2008-05-06 19:10 22118这不是一个新东西,但是 ... -
JSF 与 "我的伟大发明" ---- 关于B/S UI开发的胡言乱语
2008-04-10 14:25 14467这篇帖子后面的回复和 ... -
初看JSF后的胡言乱语
2008-04-10 09:31 4583最近看了一点jsf ---- 只 ... -
Help,如何在J2EE环境下使用Sqlite以及如何将sqlite打入war包
2008-03-27 09:46 3785需求是这样的 希望j2ee应用(基于应用 而不是整个服务器) ... -
请记住: i AM SoLiD. (关于View的事件触发顺序)
2007-11-16 04:11 2629View 提供了若干事件. 在渲染 布局 展现 相关事件的触 ... -
Android SDK下, 如何在程序中输出日志 以及如何查看日志.
2007-11-15 22:38 9846Android SDK下, 如何在程序中输出日志 以及如何查看 ... -
小胖加入Android Fans的 大军了 呵呵
2007-11-15 13:30 3136决定开始研究 Android 了. 以前研究过 j2me 对 ... -
老帖: findbugs简介
2007-11-02 10:09 3567这个时候说 findbugs ??? ... -
世上没有B/S系统,只有B系统和S系统.
2007-09-12 13:45 34346先说些与标题貌似无关的话. 随着prototype DWR ... -
[求助]有没有哪个缓存组件支持 基于访问频率的清理策略
2007-08-29 18:30 2404目前缓存清理策略几乎都是基于 存活期 和 活跃期 还有缓存队列 ... -
[发布2007-08-06]Ajax向导组件 WebWizard Component Beta1
2007-08-06 15:55 4995/****************************** ... -
寻求一个eclipse下更好的snippet插件(或代码模板管理插件 或代码生成器)
2007-07-26 11:12 4258eclipse自带一个snippet插件,但是功能有限. 只支 ... -
让Struts 1焕发青春----小议对Struts的改造.
2007-06-25 15:27 7598目前流行的新型的MVC框架 几乎都在"增强单元测试能 ...
相关推荐
这是因为PermGen空间主要用于存储类元数据,如果该空间设置过小,可能会导致频繁的垃圾回收甚至内存溢出。 - 更深入地分析内存使用情况,识别出内存泄漏的具体位置并进行修复。 - 使用工具如VisualVM或JConsole等...
这可能意味着数据读取效率低下,频繁地从磁盘加载数据,从而对系统性能造成影响。为了改善这种情况,我们调整了SGA参数以提高缓冲区的利用率,从而使系统运行更加顺畅。 然而,问题并未就此结束。在一天后,数据库...
在IT行业中,数据库性能优化是至关重要的,尤其是对于高并发、大数据量的网站而言。本文主要探讨了一个由MySQL中的慢SQL查询导致整个网站宕机的问题及其解决方案。 首先,慢SQL查询通常不会直接导致网站宕机,但...
服务器宕机是一种常见的IT灾难,它可能会导致业务中断、数据丢失和经济损失。因此,拥有一个完善的服务器故障应急预案对于企业的正常运营至关重要。本文将讨论服务器宕机的原因、备份和冗余措施、应急预案的实施等...
在IT行业中,"永不宕机的服务器"是一个重要的概念,尤其对于那些依赖高可用性和连续服务的企业来说至关重要。"宕机"是指服务器因为各种原因停止服务,无法响应客户端请求,这对业务连续性和用户体验可能造成严重影响...
本文将深入探讨宕机检测工具的工作原理、功能特性以及如何运用这些工具来提升系统稳定性。 首先,宕机检测工具的核心功能是对多台服务器、多IP地址以及多个业务端口进行健康检查。这种检查通常包括以下几个方面: ...
如发生在 mysql 软件可承受力够但是服务器硬件,或者...宕机 又或者 MYSQL 参数配置过大或者参数配置不合理导致服务器崩溃 ,出现宕机的可能多种多样,本文档主要体现的是宕机后可能出现的问题和后遗症较大的情况是什么
- **问题描述**:某些表数据量大且频繁进行插入、更新操作,影响系统性能。 - **解决方案**: - 对数据表进行分表设计,合理分布数据,减少单个表的数据量。 6. **TCP请求堵塞**: - **问题描述**:过多的请求...
tomcat宕机重启脚本,比较简单的一种设置
### IT知识要点:宕机对企业的影响与IBM POWER7的应对策略 #### 1. 宕机对企业的影响 - **业务中断**:宕机会导致企业工作流程的中断,直接影响业务连续性和客户服务,造成收入损失。 - **经济损失**:包括直接的...
然而,当GitLab服务器遭遇宕机时,可能会导致开发者无法正常进行代码的提交和下载,这对任何依赖GitLab进行日常开发工作的团队来说都是一个重大的挑战。本文将详细解释如何在GitLab服务器宕机后恢复代码仓库,确保...
宕机可以是短暂的,也可以持续较长时间,严重时甚至可能导致数据丢失或服务完全不可用。 #### 二、宕机的不同称谓 在日常交流中,宕机还常被称为“当机”、“死机”,尽管这些称呼不够规范,但它们已经成为了人们...
【银行系统的高并发架构】是针对金融机构如何处理大规模并发交易的一种设计策略,特别是在像双十一这样的高峰期,银行系统需要应对极大的交易量冲击。以下是对这部分内容的详细解释: 1. **业务情况**: - 第三方...
### MySQL 主备机宕机自动切换详解 #### 一、MySQL主备复制机制简介 MySQL复制(Replication)是MySQL数据库系统中一个重要的特性,它允许数据从一台MySQL服务器(称为Master)复制到另一台或多台MySQL服务器...
本文档记录了一次 CentOS 7 服务器因断电导致宕机的修复过程。该服务器的修复过程中遇到了许多问题,包括 fstab 文件的缺失、分区表的损坏、root 分区的损坏等问题。通过对这些问题的解决,最终成功地修复了服务器。...
该宕机事件发生在测试环境中的一台装有ORACLE数据库的AIX小机上,导致数据库宕机。我们将从故障原因分析、故障解决过程、故障后分析和故障总结四个方面对该事件进行详细的分析和讨论。 一、故障原因分析 该宕机...
由于项目需要,编写基于zookeeper集群监测服务器宕机情况,并发邮件通知代码;实现很简单,编写了客户端和服务端,基于maven实现,代码方面修改zookeeper ip地址,需要部署的服务器名和邮件信息即可实现。直接打包...
更重要的是,nginx还提供了宕机自动切换的能力,这确保了在某后端服务器发生故障时,能够快速切换到健康节点继续提供服务,从而保障了服务的连续性和稳定性。 在nginx中进行负载均衡配置,一般会利用到默认安装的...
服务器健康状态,查看服务器是否负载高,内存不够,意外断电等宕机情况。 系统状态 主从同步是否正常,数据备份是否正常。 告知协助判断人员的内容 一线工程师确认ADS服务器健康是否正常。 判断的时间要求 设备...