Xamarin.forms Azure web api在手机上调用速度较慢,但在android emulator上运行良好

Xamarin.forms Azure web api在手机上调用速度较慢,但在android emulator上运行良好,xamarin.forms,azure-sql-database,refit,Xamarin.forms,Azure Sql Database,Refit,我试图在Xamarin Forms应用程序中使用Refit调用我的web api,它在模拟器中似乎运行良好(2-5秒),但在真正的android手机上崩溃的次数最多,或者在极少数情况下需要很长时间才能返回。我正在Azure上使用一个基本的5DTU SQL数据库。这可能是原因吗 我试着用这个设备打了2个电话,上面图表中的峰值就是这个结果。第一个查询需要一点时间,一旦它返回(这次我设法得到了答复),我会打第二个电话,在一次查询之后也会返回 延迟我需要使用索引吗 我正在Azure上使用一个基本的5

我试图在Xamarin Forms应用程序中使用Refit调用我的web api,它在模拟器中似乎运行良好(2-5秒),但在真正的android手机上崩溃的次数最多,或者在极少数情况下需要很长时间才能返回。我正在Azure上使用一个基本的5DTU SQL数据库。这可能是原因吗

我试着用这个设备打了2个电话,上面图表中的峰值就是这个结果。第一个查询需要一点时间,一旦它返回(这次我设法得到了答复),我会打第二个电话,在一次查询之后也会返回 延迟我需要使用索引吗

我正在Azure上使用一个基本的5DTU SQL数据库。这可能是原因吗

是-完全有可能通过更改数据库层来解决您的问题;图表显示您的查询达到了5DTU的很多限制。如果您的查询很复杂或数据集很大,则S层数据库的性能可能会更好。(试试S0或S1,看看性能是否更好。)

我需要使用索引吗

根据正在运行的查询类型,索引可能会对数据库的性能产生有益的影响。(您肯定应该研究是否可以通过这种方式优化性能。)您可能对Azure SQL数据库的一些功能感兴趣,这些功能可以帮助您检查(并改进)查询性能-&

我正在Azure上使用一个基本的5DTU SQL数据库。这可能是原因吗

是-完全有可能通过更改数据库层来解决您的问题;图表显示您的查询达到了5DTU的很多限制。如果您的查询很复杂或数据集很大,则S层数据库的性能可能会更好。(试试S0或S1,看看性能是否更好。)

我需要使用索引吗


根据正在运行的查询类型,索引可能会对数据库的性能产生有益的影响。(您肯定应该研究是否可以通过这种方式优化性能。)您可能对Azure SQL数据库的一些功能感兴趣,这些功能可以帮助您检查(并改进)查询性能-&

你能分享你数据库的负载吗?您的手机吞吐量是否足以处理您试图查询的数据?我不知道移动网络会给数据库连接带来什么延迟。你能分享一下数据库的负载吗?您的手机吞吐量是否足以处理您试图查询的数据?我不熟悉移动网络可能引入到数据库连接的延迟。感谢Dan的回复,我首先使用EF代码,不确定这是否是原因,但这仍然不能解释为什么它在Android Visual Studio emulator上表现良好。这可能是某种身份验证问题。在尝试为移动应用程序公开Web API时,我是否需要更改任何设置?您的问题可能是,您的测试可能会启动一个本地测试数据库,该数据库可能远远超过5dtu。您确定要针对同一个数据库进行测试吗?谢谢您的回复,Dan,我先使用EF代码,不确定这是否是原因,但这仍然不能解释为什么它在Android Visual Studio emulator上表现良好。这可能是某种身份验证问题。在尝试为移动应用程序公开Web API时,我是否需要更改任何设置?您的问题可能是,您的测试可能会启动一个本地测试数据库,该数据库可能远远超过5dtu。您确定要针对同一个数据库进行测试吗?