2011-08-26 126 views
1

我打算构建一个大型应用程序。它将具有基于浏览器的界面以及移动应用程序界面(iOS,Android,黑莓)。用于移动和Web应用程序的服务器

我希望能够将数据从服务器推送到这些接口上,并且会有大量数据从移动应用程序发送回服务器。所以我的问题是我想要构建什么样的服务器。

我是一名PHP开发人员,虽然我可以用Java编写并涉猎其他人。学习一门新语言我很好。作为一名PHP开发人员,我的想法是我可以构建一个PHP应用程序并使用它的API来为其他接口供电。

但是会有大量数据移动,我不认为PHP真的是最好的基础。所以我正在探索替代品。有关从哪里开始的任何想法?

+1

无论你最终做什么,如果像你说的那样,将会有大量数据易手,请记住在发送/接收到移动设备时使用gzip或其他压缩协议。当不在wifi上时,5kb和50kb之间的差异是荒谬的,并且压缩它的额外CPU周期不是。只是一个想法。 – yep

回答

0

常见的做法是分离出不同的服务器之间的后端功能。

  • 服务器1:满足你的静态内容
  • 服务器2:服务于您的动态生成的内容(基于查询的事情,需要IO比如DB交互
  • 服务器3:实时专用实时基础设施推送功能

服务器1 & 2很可能是同一台服务器,但现在我建议有一个专用的实时服务器。服务器之间的通信通常与某种message queue ALT的做hough web服务调用也是一种选择。

我感兴趣的领域是实时推送,所以这里有更多的信息。如果你想坚持使用PHP,那就是phpwebsocket项目。如果你想看Java,那么[WaterSpout}(http://www.spoutserver.com/),jwebsocketJetty已经存在了一段时间,并且是(或者是我最后一次检查的)Twitter使用的流媒体API。

在我正在维护的此Realtime technologies guide上,您的解决方案的实时组件有更多选项。

相关问题