Sql server docker容器连接到SQL Server时的网络延迟

Sql server docker容器连接到SQL Server时的网络延迟,sql-server,docker,dbatools,Sql Server,Docker,Dbatools,我有一个python flask应用程序在docker容器中运行。我正在使用Test DbaNetworkLatency测试我的应用程序和SQL Server(在本地运行)之间的网络延迟。我发现从docker容器运行时,网络延迟非常慢,但在Mac主机上运行时,网络延迟非常快。docker容器基于ubuntu,我在上面安装了powershell测试DbaNetworkLatency正在从powershell运行。我还在本地Mac OS上安装了powershell 我在当地的调查结果是: Execu

我有一个python flask应用程序在docker容器中运行。我正在使用
Test DbaNetworkLatency
测试我的应用程序和SQL Server(在本地运行)之间的网络延迟。我发现从docker容器运行时,网络延迟非常慢,但在Mac主机上运行时,网络延迟非常快。docker容器基于
ubuntu
,我在上面安装了
powershell
<代码>测试DbaNetworkLatency正在从powershell运行。我还在本地Mac OS上安装了
powershell

我在当地的调查结果是:

ExecutionCount     : 1
Total              : 220.91 ms
Average            : 220.91 ms
ExecuteOnlyTotal   : 154.21 ms
ExecuteOnlyAverage : 154.21 ms
NetworkOnlyTotal   : 66.69 ms
但是docker容器的结果是:

ExecutionCount     : 1
Total              : 1.23 s
Average            : 1.23 s
ExecuteOnlyTotal   : 282.52 ms
ExecuteOnlyAverage : 282.52 ms
NetworkOnlyTotal   : 946.88 ms
您可以看到,从docker运行时存在很大的网络延迟。docker有什么问题吗

如果我从container和local ping实例,没有太大的不同。但当从容器和本地发送sql查询时,我确实看到了性能的不同。这就是为什么我需要
Test DbaNetworkLatency
来测试网络延迟


经过一些测试后,我发现如果我将命令
testdbanetworklatency
放入
pwsh-命令“testdbanetworklatency…”
中,速度会非常慢。但如果我运行
pwsh
切换到powershell命令,那么它的运行速度与本地命令一样快。但是,如何定义dockerfile以让容器初始化
powershell
让我指定
powershell
脚本作为入口点?

这可能是linux powershell的问题,因为它已经存在。若要将powershell排除为可疑对象,请尝试从主机和容器ping服务器,看看是否有任何显著差异?pint host没有任何区别。但是我发送给sql server的查询给了我不同的性能,这就是为什么我想使用
Test DbaNetworkLatency
来测试网络延迟。此链接
重大性能问题
仅表明初始化速度慢。我的命令在power shell初始化后运行。这是否回答了您的问题?