Apache大牛进来看看

Apache大牛进来看看

小弟不才,有几个问题想问一下各位大牛,希望能帮小弟一把:

服务器是1U的,具体配置如下:
AMD Opteron 2.0G
ECC DDR 1G内存
250GB 硬盘

现在要建一个服务器,打算用Apache,但不是Web服务器。数据库用mysql。我的思路是:
用C写一个Apache模块mod_xxx:
实现功能如下:登录,注册

服务器只有这两个功能,然后,客户端登录之后就与服务器断开了。
登录的时候,mod_xxx会连接mysql数据库,查询用户基本信息表。然后返回信息给客户端。mod_xxx中为了提高性能,会使用数据库连接池。

我现在的问题是:可能这个服务器有10万人在线,平均一个用户在线半个小时吧,这样的服务器能承受得了吗?需要买升级服务器吗?
注意:业务逻辑是用C实现的,也就是那个mod_xxx~~~
你的 “服务器有10万人在线,平均一个用户在线半个小时吧” ,那这一个半小时中是 client 和 server 是 keepalive 的,还是只是需要时才访问?

实际上,你就是计算下你的服务器要承受的并发连接的最大数,再测试下 apache 和你的 mod_xxx 平均服务一个并发时的内存占用和 I/O 的需求
(最好你的 mod_xxx 是线程安全的,这样你可以用 worker 而不是 prefork )

你的服务器负载,是要你自己计算的,别人只能教你怎么计算,但没法代替你

注意: I/O 不光是磁盘,还有网卡的,而且,也别忘了计算CPU 的负载
这半个小时中,当然不是keepalive的。 client登录之后,除非重新登录才再与server交互。

其实这应该是个p2p网络,client登录之后,就不与服务器通讯了。mod_xxx也是线程安全的,我给它起的名字是mod_p2p~~~呵呵

也就是说用apache做p2p服务器的~

谢谢你的回答,我是菜鸟,请问如何计算服务器负载呢?给个思路就行了~谢谢了~
CPU , 内存, I/O (磁盤,網卡)

基本上,你就是把你的機器看成一個箱子,把你的應用看成向箱子裝蘋果,
一個箱子能裝多少蘋果,是由每個蘋果的大小的決定的(設箱子大小不變的情況下)

既然不是 keepalive ,那你就考慮並發的極限情況就好了,當做你的最大訪問數,
你的機器配置,應該是可以滿足你的這個極限情況所需的資源的(CPU, memory, i/o)