【发布时间】:2011-07-30 18:08:44
【问题描述】:
我在 android 中开发了一个应用程序,它从存储在 Web 服务器上的数据库中获取一些数据,并根据捕获的数据绘制 GUI。问题是当我使用 (WAMP) 在 localhost 上运行应用程序时,它会在 2 中创建 GUI秒,但是当我将它连接到网络服务器时,几乎需要 7 到 10 分钟。我很惊讶这背后的可能原因是什么。 我没有在我的代码中使用任何 ASync 类。我使用 httpclient.execute 东西连接到 Web 服务器和 JSON pasring。希望你能理解。请告诉我响应时间减少的原因可能是什么。
【问题讨论】:
-
因此,如果您没有在代码中使用 AsyncTask,我认为如果确实需要 7-10 分钟,您会收到一条 ANR 消息。您引用的数据有效负载大小是否相同?什么尺寸?我们这里说的是 1k、1mb、1gb 文件吗?
-
大小以 KB 为单位,例如 5 到 10KB,因为我只是从数据库中获取字符串。
-
您确定您看到的是网络延迟吗?我的意思是数据库是全新安装的吗?您可以从本地主机对网络服务器执行 wget 之类的操作,以测量它是您的网络服务器端还是客户端速度非常慢?这似乎不太可能,除非你有一些模拟器模拟设置,比如每秒 1 位。
-
当我使用 WAMP 时,它从 localhost 获取数据的速度非常快,但是在 phpnet.us 和 000webhost.com 等网络服务器上,它的运行速度非常慢。你能告诉我一些可以测量响应的软件吗安卓网站上的时间?
-
我只会使用 wget 或网络浏览器来查看是否可以访问远程服务器并从中获得足够的响应。可能是这些机器之间有很多延迟,或者它们真的超负荷了。或者您可以用您选择的语言编写一个简单的程序,该程序实际上以您设备的方式发出 http 请求。