在线560人
首页
主题表
培训咨询
标签
精华
查搜
注册
登陆
用户
自动登陆
密码
新用户注册
忘记密码?
首页
»
论坛
»
Java多线程 集群 并行模式
上一主题
终端类型全是手机,是靠在卡里写入程序,发送短信到网关,网关转发到我公司的服务器实现的,服务器就是socket程序,它简单处理后就发到别的服务器,调用其他服务器的web Service等待返回获取数据,..
返回本主题
返回主题列表
下一主题
在看banq大师的 《java实用系统开发指南》思想和方法都很好,自己动手实验时候卡壳了 1-3有个调用socketHelper的程序 ,socketHelper说是用来获得Socket读写帮助 ..
Go
总共有
3
回复 /
1
页
前往下页:
hulty
悄悄话
发表文章: 3
注册时间: 2007年07月11日 15:08
在这种情况下如何节约内存使用?
2008年03月06日 16:32
标签列表
jms
(26)
高性能
(77)
近来在做一个模块,用的是一个如下的大概流程:
涉及的主要类:
Task 任务类--自定义
Container 存储的容器类--自定义
外部程序调用我做的模块接口传给我一个String字符串;我将这个字符串解析、封装成一个任务Task,然后将这个任务Task加入Container容器中。后台会启动多个线程去容器Container中搜索任务,然后将任务拿出来处理掉。
现在在实际应用中出现这样一个问题,即外部调用程序给我的任务很多很急,然后所有的任务Task都往容器Container中扔。后台从容器中检出任务并处理掉的线程来不及很快的处理完容器Container中已有的任务,结果导致Container中的东西越来越多,最后出现 OutOfMemory的问题。
各位大侠,如何处理这个问题啊,应该在什么地方加入什么机制来解决这个问题,希望大家多给我出几个主意。
wlmouse
悄悄话
发表文章: 117
注册时间: 2006年11月09日 15:58
re:在这种情况下如何节约内存使用?
2008年04月05日 18:16
我觉得这应该就是个队列。你应该合理设置队列大小并在队列满的时候返回一个提示,告诉用户现在系统忙,让用户稍后提交。
banq
悄悄话
发表文章: 9482
注册时间: 2002年08月03日 17:08
回复:在这种情况下如何节约内存使用?
2008年04月07日 10:16
需要扩充处理性能:将放入和拿出处理分两个服务器来实现。使用JMS这样带
集群
的处理架构。
newthinker
悄悄话
发表文章: 26
注册时间: 2007年10月10日 10:49
回复:在这种情况下如何节约内存使用?
2008年11月05日 17:38
我觉得这样处理比较简单:
1,Task最好设计的很短小,在很短时间内处理完毕。
2,Task要能被持久化,Container一旦发现融入了太多Task,便把超出队列长度的剩余Task持久化。即便应用重启,Container也可以加载持久化上下文,并从中取出Task(回鲜过程)。
3,处理Task的线程(Work线程)可使用Concurrent包线程池管理。
这个主题有
3
回复 /
1
页
Go
上一主题
返回本主题
返回主题列表
返回页首
下一主题
热点TAG:
AOP
cache
缓存
DDD
EJB
集群
设计模式
Hibernate
IOC
JiveJdon
OO
RBAC
Seam
Spring
Struts
正在读取,请等待...
Wowzio
grab this
·
technology
blog
查询本论坛内
近一天
近三天
近一周
近一月
近三月
近半年
近一年
所有
回复超过
的热门帖子
标题
内容
发贴前查询
标签列表
勿重复发表问题
解惑之道在
J道
,打造中国最具影响力的的企业软件社区
OpenSource
JIVEJDON
v3.0
Powered by
JdonFramework
Code © 2002-08
jdon.com
anti spam