我很困惑两者中的哪一个:XMPP或Channel API(Google App Engine)更适合以下要求:"应用程序的用户(身份验证:Google帐户)应该能够与其他用户聊天"
与其他 XMPP 客户端聊天不是要求的一部分。
如果应用程序将有数百或数千个用户(使用聊天功能),通道 API 的配额是否可以处理它?
仅靠 AJAX 可以满足要求吗?
XMPP API用于将消息从Google App Engine发送到任何XMPP客户端 - 例如Gmail中的Google Chat客户端。
渠道 API 用于将消息从 Google App Engine 实例发送到用户的浏览器。 这是一个"推送"消息。
只要你付钱,是的,但要计算成本。
您可以使用 AJAX 将消息从浏览器发送到 App 引擎,但您需要渠道 API 才能将消息从 App Engine 发送回您的浏览器。
以下是我所知道的每个优点和缺点的非常简短的列表:
XMPP
- 开放、成熟、知名且有据可查。
- 专为聊天而设计,但足够灵活,可以做其他事情。
- 使用 XML(某些人的优点,另一些人的缺点)。
- 以延迟相对较高而臭名昭著。
- 多种语言的客户端(包括JavaScript)。
通道接口
- 应用引擎专有
- 更少的延迟
- 不是为聊天而"制造"的。 在此之上,您可能需要设计一些东西。
我会做出决定的决定因素是延迟对您来说有多少问题。 我强烈建议进行一些基准测试,以确定延迟对您的应用程序有多糟糕,并从那里做出决定。