W
winmax
Unregistered / Unconfirmed
GUEST, unregistred user!
各位有经验的大侠:
现在我有一个网络版的多用户系统(C/S结构,delphi+sqlserver2000,网络是通过VPN来连接的,大概有100个左右的客户端)遇到下面问题:
先看delphi程序原形:
adoconnection1.begintrans;
with adoquery1 do
begin
close;
sql.clear;
sql.add('insert into table1 valuesa1,:a2....)');
parameters[0].values:=..;
parameters[1].values:=..;
.
.
execsql;
adoconnection1.committrans;
end;
当有多个客户端同时进行以上操作时(这里是指同一时间),就会出现有很多个客户端出现要待很久很久的情况,怎样解决这一难题呢,因为每个客户端都在不同的地方,所以很容易出现以上情况.要知道,如果一个客户端通过VPN要5秒才能完成从begintrans到committrans的事务的话,那现在如果100个客户端同时进行这个操作,那最后那个客户端不是要等待100*5=500秒的时间吗??
有谁有过这方面的经验呢??可以不吝惜告诉我吗??很急啊.........
现在我有一个网络版的多用户系统(C/S结构,delphi+sqlserver2000,网络是通过VPN来连接的,大概有100个左右的客户端)遇到下面问题:
先看delphi程序原形:
adoconnection1.begintrans;
with adoquery1 do
begin
close;
sql.clear;
sql.add('insert into table1 valuesa1,:a2....)');
parameters[0].values:=..;
parameters[1].values:=..;
.
.
execsql;
adoconnection1.committrans;
end;
当有多个客户端同时进行以上操作时(这里是指同一时间),就会出现有很多个客户端出现要待很久很久的情况,怎样解决这一难题呢,因为每个客户端都在不同的地方,所以很容易出现以上情况.要知道,如果一个客户端通过VPN要5秒才能完成从begintrans到committrans的事务的话,那现在如果100个客户端同时进行这个操作,那最后那个客户端不是要等待100*5=500秒的时间吗??
有谁有过这方面的经验呢??可以不吝惜告诉我吗??很急啊.........