假设我想在客户端使用Google GWT,在服务器端使用Google AppEngine Python。此外,我希望能够使用对服务器的RPC调用以及执行基于COMET的交换。
就现有框架而言,我有哪些选择?
发布于 2009-12-15 11:50:20
我在谷歌上搜索"gwt python":http://code.google.com/p/python-gwt-rpc/ --它似乎不受支持,因为App Engine现在支持Java。
通过谷歌搜索"gwt comet":http://code.google.com/p/rocket-gwt --它应该在您的客户端工作,使挂起到达服务器,这可以用Python语言编写。
但我不得不说,如果只用Java编写服务器端,这将会容易得多。GWT和Java是为彼此而生的,它们属于同一类,除非您对用Java编写服务器有强烈的反感,否则您应该认真考虑一下。
您可以将一些解决方案组合在一起,使GWT和Python协同工作,但在即将发布的GWT版本中,这很容易打破,这意味着从长远来看,您需要做更多的工作。
只要用Java编写服务器即可。
发布于 2010-12-29 19:40:13
一年后,GAE中可用的新Channel API允许这种持久连接,以避免在Java和Python中进行轮询。
“Channel在您的应用程序和谷歌服务器之间创建持久连接,允许您的应用程序在不使用轮询的情况下实时向JavaScript客户端发送消息。这对于设计为立即向用户更新新信息的应用程序或将用户输入立即广播给其他用户的应用程序很有用。某些示例包括协作应用程序、多玩家游戏和聊天室。通常,在无法预测或编写更新脚本的情况下,使用Channel API比轮询更好。例如,在人类用户之间或从非系统生成的事件中继信息时。”
发布于 2009-12-21 23:42:17
App Engine目前不支持comet,因为它不支持挂起-GETs(例如,长时间运行的请求)。如果你想做comet,你将不得不使用外部服务,或者等待App Engine中的Comet支持。
https://stackoverflow.com/questions/1904893
复制相似问题