SocketConnection在Internet(非LAN)的应用/实验结果如何?(对于有建设性的讨论,额外加上300又何妨?)(300分)

  • 主题发起人 主题发起人 房客
  • 开始时间 开始时间

房客

Unregistered / Unconfirmed
GUEST, unregistred user!
如:
负荷
同时连接数(如十万如何??10个APPSERVER)
错误率
现在欢迎大家讨论
1。用服务器的IP
2。CDS。packerecords属性
3。通过适当配置中介服务器数量来平衡负载
4。
 
SocketConnection什么意思 不动 说明白垫吧
 
SocketConnection什么意思 不动 说明白垫吧

这个还用说么?
关注
 
每个服务器的连接上限主要看每个连接的数据流量,以及每个连接占据服务器程序的
处理能力。
例如客户端的查询中带BLOB的,以INTERNET的传输速度必然需要一定时间传输数据,
这时如果连接数过多,必然导致客户端长时间无法结束查询。
对于INTERNET的系统,采用负载平衡是必须的,不用讨论。
对于每个服务器也最好采用多CPU方式,毕竟多线程技术只是模拟多CPU而已,在CPU运行
效率处于饱和时(很容易达到),根本不起作用。
直接用IP地址,也并无不可,SOCKETCONNECTION支持。但要考虑到INTERNET的IP可不是
LAN中想怎么弄都行,申请固定IP是必然的。
还有就是容错机制,一定要作好,这不仅指服务器端,也包括客户端。现在INTERNET的断线
不象以前那么频繁,但也远不如LAN中理想。
 
不错
那我简单说点我的实际经验
我在EDU架了APPSERVER,ODBC连到LAN内SQL(安全性考虑)
在INTERNET(拨号用户)访问
延迟还是很明显的
可以理解为OICQ的上线阶段
目前只是用SHOWMODAL的办法使主窗体暂时不显
因为延迟的时候窗体停止PAINT
另外解决办法可能是延迟时窗体最小化
(也可以类似OICQ的做法:APPBAR+任务栏)
测试摸仪了大量的同时访问
发现CDS的同时访问时间随用户连接数的增加而明显简慢
而使用QUERY(BDE)的速度慢得理论上可以接受
欢迎讨论 测试深入中...
 
如果。。请继续
 
最近我应公司要求,用SOCKETCONNECTION作了一个类似SOCKET文件传输的东西,
确实感到首次连接的痛苦,看来加状态显示是唯一的选择了,不过这种痛苦好象仅仅是
集中在第一次与服务器连接时,以后每次连接的速度还是比较理想的,
而且发现用SOCKETECONNECTION做SOCKET的工作,并没有我象开始担心的系统消耗过大,
还是可以忍受的,不过也许跟要求不高有关,公司仅仅要求30线同时,文件大小1M左右,
我用一个CPU接发,一个CPU进行文件处理还是满顺当的,以后要是还要提高要求,再说吧
,一步到位又不给我涨工资。
 
首先,服务器配置要高,最好数据服务器与应用服务器物理分离。
不要告诉我你将APPSERVER放在一般的pc机上!
多线程是必要的,无论server还是client。
socketconnection是需要IP地址。 
packerecords设置是必须的!这样才能体现三层的优越。最好是采取公文包形式!尽量
减轻网络负担。
 
SocketConnection在Internet(非LAN)的应用时,必须进行端口的分配和监控才能提高效率。
 
在这里我提醒一下:有谁关注过SocketServer的稳定性? 从本质上说,SocketConntection
实际上是一个代理服务,通过它来转发客户端的应用请求,它的效率多大程度上影响性能
表现呢? 我曾经粗略浏览过SocketServer的实现,发现它实现的很精巧,但对于客户的以
外断开连接的情况,服务器无法检测,造成连接没法释放的问题,这在李维的书中也提到。
这在大量连接,尤其是wan上,会产生什么结果?愿听各位的高见!
 
强烈关注
 
既然是转发,还是自己实现比较好啊,房老前辈。
这个东西不知道能否穿过代理之类的东西。
 
>>同时连接数(如十万如何??10个APPSERVER)
感觉支撑不了这么多.
>>3。通过适当配置中介服务器数量来平衡负载
要看你的系统要求而论吧,好象OICQ就没有采用负载平衡.
想知道你的APPSERVER都和数据库在同一个LAN吗?
大家有兴趣讨论一下APPSERVER分布在Internet上的情况吗?
对于有建设性的讨论,我也加上300又何妨?[:)]
 
>SocketConntection实际上是一个代理服务
没错 有些局限性还要自己去扩充 所以那么多人在学COM
但DCOM能做出DELPHI和BCB的MIDAS只有看BORLAND有没有反映了
 
这个问题,搁了这么久,又提到前面来了。
这个问题还是挺有实际价值的,除了我的上述观点外,我再说两个东西供大家探讨。
1、负载平衡,李维的书里谈过负载平衡的问题,现在也有专门做负载平衡的商用软件,
不过,这些都是把负载平衡作到中间层,可不可以考虑除此以外,在客户端也作点
工作,比如10台APPSERVER,分配网址为UPLOAD(0-9).DDDD.com.cn,客户端用某些
概率分布算法来,选取最优APPSERVER,这些算法最简单的估计是随机函数模拟随机
分布。
2、另外,就是远程调用的回调,好象有人提过如何中断长时间的远程调用,实际应用中
应该会遇到这样的情况,比如一个RPC调用通过INTERNET获得某个BLOB字段(比如
图片)中的内容,可能这张图片很大(200K),在LAN中肯定不会有滞后,但INTERNET
的速度,传输时间肯定不短,这时候就应该给出中断选择,这就涉及到一个回调的问题
,而且这种回调比单机肯定复杂的多,因为它必须同时发消息给其他网络节点。不知道
大家有没有什么好意见,有没有人成功实现过。
 
后退
顶部