用户
 找回密码
 入住 CI 中国社区
搜索
楼主: kinas
收起左侧

[Web] 正在做个系统,希望大家给些建议

  [复制链接]
发表于 2008-4-11 15:29:43 | 显示全部楼层
初步判定是数据库的问题,优化你的数据库,配好数据库连接池,将多个数据库复制分发到多个服务器上,然后同步,然后web程序随机访问数据库,或者根据用户ID做一个hash函数,然后分配一定区间的用户访问其中一台服务器
发表于 2008-5-12 21:44:52 | 显示全部楼层
2万人 不一定就是2万并发  首先 优化服务器 尽量 数据库和web 服务分离  支持采用 nginx + fastcgi  方式 这样的方式 比apache  要快很多 php 开启apc 或者xcache 之类的 加速模块 系统内核的一些并发控制参数 也要修改一下进行优化  前端图片都 设置过期时间 避免 每次都下载 多用memcached 如果能保证 服务器的供电和稳定的话 要尽量少数据库查询 多memcached 查询  其实这样的应用如果跑一个数据库 记录应该不是很多 就几十万条 优化一下查询  你可以试着将所有记录都放在memcached 中试试 因为 你的数据不是很多 一次选课 2万人 一人选10门 才20万  开个2g 内存的memcached 能解决很多问题  不过 要保证数据库也有一份 否则一旦断电 就挂了 基本上就这样  至于什么分库啊 我觉得不用  如果有条件 主从库 就可以了 必要时候可以 一主三从  查询使用轮询的方式 都插入一个主库 从三个从库查询  基本上搞的定

[ 本帖最后由 zshtom 于 2008-5-12 21:48 编辑 ]

评分

参与人数 1威望 +1 收起 理由
Hex + 1 优秀解答

查看全部评分

发表于 2008-5-13 16:08:10 | 显示全部楼层
用内存表怎么样?
发表于 2008-5-21 01:37:23 | 显示全部楼层
救命啊....看不懂...
发表于 2008-5-25 00:45:56 | 显示全部楼层
如果不是硬件问题的话,就是代码写的太懒了,2w人的选课系统高峰期顶多有2,3千一起操作。数据库是什麽来头的?access?
选课系统三部曲,登陆,查询,选课,可能查询会耗点性能,登陆和选课是精确select和update,几乎没费啥劲。重新设计实现的话,考虑数据库设计要合理,建立好索引会事半功倍。数据库设计垃圾的话,程序再怎么优化,性能都不会很好,当然二者都做好了,还当掉的话,那是用普通低档的pc做的服务器么?!
发表于 2008-7-1 19:02:05 | 显示全部楼层
ajax能很好应对这种问题!
发表于 2008-9-9 13:39:51 | 显示全部楼层
看不懂啊... 神..............
发表于 2008-9-12 15:15:02 | 显示全部楼层
cache?……关注中……
发表于 2008-9-23 01:50:08 | 显示全部楼层
應該可以分年級分時間選課吧
像我們學校如果有兩萬人大概就分四個階段選課
各個年級的課應該不會衝突到
這樣一來就可以分擔很多
不過以我們學校的制度在預選上是以時間和志願為依據
所以通常只要時間一開放幾乎是全部能選的人都上去選了
发表于 2008-10-9 16:19:18 | 显示全部楼层
并发2W 这个基本上不可能的...


哈哈..

本版积分规则