gpt4 book ai didi

Delphi (DataSnap) 慢

转载 作者:行者123 更新时间:2023-12-03 15:58:27 31 4
gpt4 key购买 nike

我最近开始使用 Delphi 中的 DataSnap 来生成 RESTful Web 服务。在遵循 Marco Cantu 本人和互联网上其他几个人的指导后,我成功地使整个“链条”正常工作。

但是有一个速度的小问题;客户端现在可以向服务器发送一个流(连同它的大小)(由于这里的错误 DataSnap XE2 and TStream method parameters ,它被读取到发送的大小),并且服务器将其重新组装成一个文件并将其保存在磁盘上.

但是对于 3.66MiB 的文件,这需要 50 秒以上!

应该是这样吗?在我的服务器上:

try
F := TFileStream.Create('written.dat', fmCreate);
F.Position := 0;
F.CopyFrom(Data, DataSize);
finally
F.Free;

在客户端:

var
Server: TServerMethods1Client;
DBStream: TFileStream;
begin
Server := TServerMethods1Client.Create(SQLConnection1.DBXConnection);
try
DBStream := TFileStream.Create('DataSnapServer.exe', fmOpenRead);
DBStream.Position := 0;
Showmessage(IntToStr(Server.SendData(DBStream, DBStream.Size)));
finally
Server.Free;

感谢任何帮助!

干杯,阿德里安

最佳答案

在服务器端,尝试调整 TDSHTTPWebDispatcher 组件上的 BufferKBSize 属性。在客户端的 TsqlConnection 组件上可以找到相同的属性。

关于Delphi (DataSnap) 慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12351657/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com