BlazeRS 的哪些功能在当前的 Google App Engine 上不可用?
Posted
技术标签:
【中文标题】BlazeRS 的哪些功能在当前的 Google App Engine 上不可用?【英文标题】:What features of BlazeDS are not avaliable on CURRENT Google App Engine? 【发布时间】:2010-10-17 10:06:52 【问题描述】:所以here it is BlazeDS 将完全在 GAE 上运行
BlazeDS 版本:3.2.0.3978 状态: 兼容的解决方法 抛出的 EMFException flex.messaging.io.amf.AbstractAmfInput, 按照 Martin Zoldano 的解决方法 http://martinzoldano.blogspot.com/2009/04/appengine-adobe-blazeds-fix.html。 您将需要启用会话以 让 BlazeDS 工作。
但我想知道这是否意味着从服务器到客户端的消息,来自 BlaseDS 的服务器推送通知(我的意思是我们从 flex 客户端连接到服务器但不需要数据,服务器在需要时向我们发送数据),以及顺便说一句,有没有人知道在哪里可以获得有关这样做的教程(Flex + BlazeDS)?
Blaze v 3.2 的其他功能是否存在问题?
【问题讨论】:
【参考方案1】:我最近在谷歌平台上尝试了一个 flex-blazeds 应用程序,但它不起作用。我找到了fix blazeds 在 gae 上运行的指南,你应该试试。对于 blazeds 中的消息服务的基本教程,您应该查看这个 asotto.blogspot.com/,
【讨论】:
【参考方案2】:消息传递不起作用,除非你有幸让所有消费者/生产者在同一台机器上注册(当你有良好的流量时,这是极不可能的)。
如果您想了解原因,您需要阅读开发者指南中的集群部分。基本上整个发布/订阅图+消息队列都分布在集群上,机器使用 JGROUPS 进行通信。
显然,它在 GAE 上不起作用(Google 分配的机器彼此不认识,您可能会丢失消息)。
【讨论】:
【参考方案3】:在 BlazeDS 版本 4 的正式实施中,由于 GAE 集群机制,您会遇到重复的会话问题。
【讨论】:
以上是关于BlazeRS 的哪些功能在当前的 Google App Engine 上不可用?的主要内容,如果未能解决你的问题,请参考以下文章
Google Compute Engine 如何决定在自动扩缩时关闭哪些实例?