- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
这看起来太基础了,以至于人们会为它大喊大叫,在网络上搜索一无所获,但我已经在多个网络和计算机上对其进行了测试。我们遇到一个问题,我们使用 .local url 访问资源非常慢。如果我们使用直接 IP 地址,我们就不会看到这些延迟。
在我们精简的测试设置中,设备和计算机位于同一台交换机上,并且是交换机上唯一的设备。当我们不在这个非常有限的网络配置中时,也会发生同样的事情。 Mac OS X Lion 在命令行上我们得到了这些结果:
直接ip:
curl 10.101.62.42 0.01s user 0.00s system 18% cpu 0.059 total
用你好名字:
curl http://xrx0000aac0fefd.local 0.01s user 0.00s system 0% cpu 5.063 total
解决每个请求的时间始终略高于 5 秒。无论我们尝试连接到哪个设备,我们的 iPhone 应用程序似乎都在发生同样的情况,而且使用 Python 脚本时速度很慢。 Safari 似乎能够快速解析名称。
我们可以解析一次然后使用 IP 地址,但第一个请求仍然会慢得令人无法接受,我不认为 Bonjour 应该以这种方式工作。
我们不确定这种情况何时开始发生,但并非总是如此。
编辑:另一个数据点。在 Snow Leopard 上,它的解析速度并不慢:
$ time curl http://hp1320.local > /dev/null
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
101 2848 0 2848 0 0 15473 0 --:--:-- --:--:-- --:--:-- 36512
real 0m0.201s
user 0m0.005s
sys 0m0.009s
最佳答案
这在 iOS 5 和 Lion 10.7.2 中得到解决。这是一个巨大的解脱。不幸的是,4.3 应用程序用户会遇到这种缓慢的行为。猜猜这是升级的另一个原因。
关于ios - Bonjour 中的缓慢名称解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7115519/
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a software
我想开发一个可以运行的 Android 应用程序 黑莓剧本。应用程序需要找到其他 本地网络上运行相同应用程序的设备。 我正在考虑实现 Bonjour/Zeroconf/jmDNS 用于查找设备的协议(
通过DNS-SD发现服务后,该主机的地址将如何准确解析,并且花费的时间/开销会大大增加吗? 另外,如果我使用的是JmDNS或Bonjour,则有serviceFound和serviceResolved
我的问题是关于“本地网络上文件服务器服务的自动发现”。 我想实现一个基本上是文件服务器的服务并将其发布在本地网络上。连接到本地网络的客户端 PC 应该自动找到该服务并映射(挂载)网络驱动器,无需用户干
有没有一种简单的方法可以扫描给定网络的Bonjour/Zeroconf服务? 我有一组计算机(Linux,Windows,Apple),并且想自动生成Intranet中所有可用的具有Zeroconf功
谁能解释一下从 iPhone OS 3.0 开始,bonjour 如何通过蓝牙工作? 文档称,即使 Wi-fi 关闭且蓝牙打开,应用程序中使用的 Bonjour API 也能正常工作。它还表示,蓝牙
我正在开发一个 iPhone 应用程序,它允许用户使用 Bonjour 协议(protocol)连接到其他 iPhone。其中一个用户托管服务器并发布他的 bonjour 服务,而其他客户端用户发现他
Bonjour 提供“DNSSSD.browse(serviceType,callBackObject)”方法来浏览特定类型的服务。如果找到给定类型的服务,Bonjour 将调用“callBackOb
Bonjour 是否允许一台 iOS 设备同时向多台 iOS 设备发送数据或图像? I am able to detect number of iOS devices over a wifi netw
就目前情况而言,这个问题不太适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、民意调查或扩展讨论。如果您觉得这个问题可以改进并可能重新开放,vis
我正在尝试在 Swift3 中实现 Bonjour NetServiceBrowser,以便在我的网络上发现主机。 当我使用以下命令在终端中手动搜索时,我会找到主机。 dns-sd -B 但是,当我尝
这看起来太基础了,以至于人们会为它大喊大叫,在网络上搜索一无所获,但我已经在多个网络和计算机上对其进行了测试。我们遇到一个问题,我们使用 .local url 访问资源非常慢。如果我们使用直接 IP
我注意到 Pasteboard 是一款适用于 iOS 的剪贴板应用程序,它可以在后台运行 Bonjour 服务。我不知道他们是如何实现的,所以我在互联网上搜索,然后发现它在后台播放无声文件。但现在不是
我知道 iOS 的 Bonjour 实现(NSNetService、NSNetServiceBrowser)在本地网络上开箱即用。 文档说可以设置 Bonjour DNS 服务器以允许通过 Inter
我想写一个可以搜索Bonjour的C程序网络上启用的设备。 基本上我们有一个网络摄像机,它支持 Bonjour 协议(protocol)。我想用 C 编写 API,可以搜索这些启用了 Bonjour
使用jmdns 3.4.1,我可以看到局域网中机器发布的服务,我也可以创建一个服务并注册它,这样我就可以在我的机器上看到它。但是,当我在局域网的另一台机器上新建服务时,在我的机器上是看不到的。我在另一
我正在编写一个可以在电脑和手机上运行的软件。 该服务使用 HTTP API 进行通信,并将使用 Zeroconf 通过本地网络发布。 最初我使用 _http._tcp. 发布了我的服务作为服务类型,但
我想知道是否可以在 iPhone OS 3.0 或更高版本中直接通过蓝牙使用 bonjour,而不使用 GameKit。谁能提供一些例子吗? 最佳答案 只需宣布服务即可,就像 tc. has said
问题说明了一切。 有人可以告诉我这是否可能以及如何实现吗? 我已经有了我想要 bonjour 名称的设备的 IP 地址和 MAC 地址... 最佳答案 假设您正在查找 .local 域中的计算机,并且
我正在尝试调试 Bonjour 网络例程,每次运行它时,Mac 的防火墙都会询问“您希望应用程序 ProjectName 接受传入的网络连接吗?” 我单击“允许”,为其提供管理员名称和密码,然后该应用
我是一名优秀的程序员,十分优秀!