海量数据的处理,请教高手。分不够可以加。

DirectRay 2010-01-05 06:07:34
依照惯例,描述一下应用场景。

有个系统,分为主站和一个网关程序。有一个应用,整体流程如下:

1 用户点击JSP上的按钮,主站根据所选信息通过socket组织命令下发给网关。

2 网关经过处理,得到数据,并进行合法性判断。

3 网关将经过处理的数据存入数据库,并通过之前的socket回复主站成功。

4 主站接到成功报文后,关闭socket连接。

5 主站根据所选条件,去数据库查询相关信息,这些信息就是刚才网关程序存入数据库的,也就是网关程序解析出来的数据。

6 主站将经过处理的信息展示在JSP上,通过Ajax刷新页面。

现在的问题是,由于数据量巨大,每天新增的数据约有4KW条记录,导致数据库无限膨胀。目前已经进行过分表处理。但是每天的记录还是很多。基本上是在4KW条记录里捞出几百条来,速度非常慢。现在的速度瓶颈卡在3-6之间,非常慢,主要是数据库操作慢。

我来归纳一下。1-4是一个流程,不可打破。5-6是一个流程,不可打破。也就是说,1-4之间的步骤基本不可改,5-6也一样。

主要的目的是,通过这一整套流程刷新JSP页面上的数据。数据必须存入数据库,但是呢,主站取的数据不一定要来自于数据库,可以有其他方式返回。只要能拿到就可以。换言之,5 6两步的操作方式是可以修改的。现在两套软件都是我们自主开发。

问题来了。

怎么改比较合适呢?
...全文
147 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
DirectRay 2010-01-10
  • 打赏
  • 举报
回复
死拉拉,我给你的话岂不成了倒分。虽然。。。但是。。。我冒险试试哈。
左大神在这 2010-01-09
  • 打赏
  • 举报
回复
我想问问,你到底是第3步存储数据慢,还是第5步获取数据慢,还有要明确你的性能目标是什么,现在测试的性能结果是什么?你第5步获取数据,太抽象,具体说说,是读取一条数据显示,还是批量查询出列表,有没有分页,有没有统计处理?还是只是简单拿一个简单表的数据出来显示??必须把业务具体分析清楚,才好选择方案。因为对性能问题的通用方案很多,给你说了也没有用,必须根据你的实际情况具体选择方案。你现在再把你这些问题详细描述下吧。
crazylaa 2010-01-09
  • 打赏
  • 举报
回复
oracle版的结了。。。哈哈,jf
win2503 2010-01-06
  • 打赏
  • 举报
回复
实时性要求不高的话
可以考虑下数据缓冲,可以避免数据库的瓶颈
军爷_010 2010-01-06
  • 打赏
  • 举报
回复
关注,好像是和网络还有关把
nosort 2010-01-06
  • 打赏
  • 举报
回复
我不怎么懂也乱说两句:
1、千万行数据以上,数据库肯定会慢:若删除表中的约束条件,可以提高插入的速度;
对大表查询时,避免关联查询及高耗查询,可提高查询性能;
2、将大表数据拆开,存储于不同的服务器中,似乎ms有软件解决方案。
LSQ6063 2010-01-05
  • 打赏
  • 举报
回复
帮忙友情顶一下!业务的需求很强势!

25,980

社区成员

发帖
与我相关
我的任务
社区描述
高性能WEB开发
社区管理员
  • 高性能WEB开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧