关于asp.net:远程访问网站与本地访问网站时,MV.NET的调用速度要慢得多

MV.NET calls much slower when website accessed remotely vs locally

我有一个asp.net网络表单页面,该页面通过mv.net调用pick / d3。
我已经通过在mv.net调用周围加上定时代码来记录服务器端的性能,例如:
logTimeElapsed()
getDataFromPick() 'gets 5 rows of test data
logTimeElapsed()

当我从托管iis服务器调用此页面时,我得到了快速的响应时间,例如:
newAC elapsed: 2.9297 total: 2.9297 Dim Acct As mvAccount = New mvAccount("...")
row 1 elapsed: 20.5078 total: 23.4375 Acct.FileOpen("...").ReadV(strID, 17)
row 2 elapsed: 9.7657 total: 33.2032 same as above
row 3 elapsed: 11.7187 total: 44.9219 same as above
row 4 elapsed: 11.7188 total: 56.6407 same as above
row 5 elapsed: 9.7656 total: 66.4063 same as above
Logout elapsed: 1.9531 total: 68.3594 Acct.Logout()

但是,当我从网络或网络上的另一个位置调用同一页面时,我得到的响应时间大约要长7倍:

new acct elapsed: 0 total: 0 Dim Acct As mvAccount = New mvAccount("...")
row 1 elapsed: 156.25 total: 156.25 Acct.FileOpen("...").ReadV(strID, 17)
row 2 elapsed: 78.125 total: 234.375 same as above
row 3 elapsed: 78.125 total: 312.5 same as above
row 4 elapsed: 78.125 total: 390.625 same as above
row 5 elapsed: 78.125 total: 468.75 same as above
Logout elapsed: 0 total: 468.75 Acct.Logout()

从上面的结果看起来像:

本地访问时:

mv.net需要花费几毫秒的时间来创建和注销帐户,并且每个FileOpen调用都非常快。

远程访问时:

mv.net花费0的时间来创建和注销帐户(是否正在使用共享帐户?),但是每个FileOpen调用都很慢。

如何使远程演奏与本地演奏保持一致?是否需要对mv.net或iis设置进行更改?
在本地与远程调用iis时,是否存在与用户权限不同的事情?

感谢任何帮助


我认为您的帐户资料已配置为可以快速终止。因此,当您在本地进行测试时,会击中它几次,而且看起来很快。然后您准备使用远程连接,在此期间,与D3的连接将终止。然后,您进行连接,并且它必须再次登录到D3,这会导致性能下降。

我的建议是将帐户配置文件设置为在注销时不终止。因此,届时所有命中它的连接都将使用相同的持久会话。您的本地连接将终止,然后当远程连接进入时,与D3的登录会话仍将处于活动状态,并且您不会感到新登录的麻烦。如果不是,请告诉我,我们将逐步解决。 :)


我在今年早些时候的上一份工作中遇到了同样的问题。在那里,IIS与BlueFinity会话和许可证管理器位于单独的服务器上。此外,Pick系统是D3。我们观察到的是,托管会话管理器和许可证管理器的计算机具有最佳的响应时间,而其他任何服务器的响应时间都比原来长2倍。将会话和许可证管理器移至IIS服务器为该服务器提高了速度。将它们移动到另一台服务器可以提高该服务器的速度。确实很奇怪,因为所有请求在处理之前都是通过Internet,WAF进入IIS的。

BlueFinity团队在我们的测试应用程序上观察到了该行为,并尝试重新创建但未能成功。他们的测试的主要区别:

1)我们使用了D3,而他们使用的是jBASE
2)我们使用mv.NET 4.4,而他们使用的是4.5
3)我们使用SSH,并且他们使用标准telnet

我知道这并不能真正回答您的问题,但是我没有足够的声誉来发表评论。尽管我不再在那家公司工作,但有趣的是,这个问题并不是他们的书架独有的,更多是与BlueFinity可能在表面下产生的问题有关。不幸的是,找到原因似乎并不在他们的优先事项清单上。