代码之家  ›  专栏  ›  技术社区  ›  Mawg says reinstate Monica

实时位置跟踪-windows程序还是基于浏览器?

  •  2
  • Mawg says reinstate Monica  · 技术社区  · 14 年前

    我想实时追踪几百人,也许几千人。

    “威尔……”足够真实的“时间”。假设我想画一个建筑的平面图,每1到5秒绘制一个图。

    (我可能只想在点击按钮时显示某些“种类”的人;我将需要数据挖掘等,但让我们继续使用最坏的情况)。

    我对PHP已经很熟悉了,尽管不是这样的东西。我个人会更喜欢用Delphi编写的windows应用程序,但现在的趋势似乎是一切都基于浏览器。

    所以,问题是,我猜浏览器是否能够处理这个问题,是否有令人信服的理由支持基于windows或基于浏览器的解决方案。

    5 回复  |  直到 14 年前
        1
  •  3
  •   fmark    14 年前

    您的大部分工作可能会在支持空间的关系数据库中完成。例如,PostGIS可以选择边界框内的数据点或更复杂的空间谓词(STïu Contains、STïu crosss、STïu Intersects、STïu touch…)以及常见的SQL连接和WHERE条件。空间选择应该使用空间索引来加快速度。

    如果是这样的话,你的应用程序将主要是一个表示层。在这种情况下,使用对你来说最简单的方法。基于浏览器的优点是默认情况下它是跨平台的客户机服务器,但这对您来说可能无关紧要。

    至于渲染速度,这实际上取决于您计划如何渲染地图。有 speed tests 可用于谷歌地图。然而,我怀疑如果你计划在谷歌地图类型的界面 几千

        2
  •  1
  •   Amber    14 年前

        3
  •  1
  •   user160694 user160694    14 年前

    首先你应该了解你的应用程序的目标是什么(以及它的大小,有多少并发客户机?),然后决定是胖客户机还是瘦客户机/web客户机最适合它。然后您应该检查哪种应用程序能够管理您预测的负载。你能用你掌握的技术或者在你的时间范围内每秒钟显示几千个数据点吗?多线程是否有助于利用当前的多核处理器来实现目标?哪种技术可以让你利用它?

        4
  •  1
  •   Mark Robinson    14 年前

    也许看起来有点老掉牙,但如果你决定去浏览器为基础,你可以预先渲染点的图像,只是显示图像?

        5
  •  1
  •   mjn anonym    14 年前

    看看HTML5 WebSockets ,它们是服务器/浏览器数据交换的新标准:

    WebSockets是一种提供 通信信道,通过单个 传输控制协议(TCP) 网络浏览器和网络服务器。

    服务器可以在新数据可用时将其推送到客户机,从而消除了客户机拉取请求的开销。

    维基百科页面列出 available server-side implementations ,包括PHP版本(但不包括Delphi)。

    WebSockets没有绑定到JavaScript websockets.org page says

    可用于支持不同的集合 Flex、JavaFX、Microsoft Silverlight、, 规范只定义了对 JavaScript,仅限于 客户端类型和支持二进制 外部产品。

    消息数据可以在 JSON 格式,它由JavaScript支持,也可用于Delphi(如SuperObject或lkJSON等开源实现)。


    Ajax ExtPascal . 外帕斯卡 是的对象Pascal(Delphi,FreePascal/Lazarus)包装器/绑定 Ext JS ,一个完整的GUI Ajax框架,并为所有主要的web浏览器提供透明的支持:IE 6+、Firefox 1.5+、Safari 3+、Opera 9+和Chrome 2+在任何客户端平台(PC、智能手机、iPhone、PDA等)上。在线演示应用程序: FishFacts , more .

    Reverse Ajax / Comet )“报价” HTTP server push