有人可以解释GCM和Google Pub / Sub之间的区别

时间:2016-06-09 18:21:19

标签: android google-cloud-messaging google-cloud-pubsub

Google确实在这里回答了这个问题

https://cloud.google.com/pubsub/faq

但是我还不清楚每种情况会用到哪种情况?

pub子有什么东西可以做GCM不能做的事情吗?

3 个答案:

答案 0 :(得分:12)

Google Cloud Pub / Sub和GCM之间的主要区别在于扩展点。 GCM旨在按照终端用户设备(如电话)的顺序扩展到许多个人发布者和订阅者。另一方面,Cloud Pub / Sub旨在从较少的发布者和订阅者扩展到非常大的吞吐量。

这两者实际上可以一起使用。想象一下,例如,您正在构建股票市场通知应用程序,当某些股票达到特定价格时,用户会收到通知。您设置了一个服务,从各种来源提取股票价格,处理它们,然后通过Cloud Pub / Sub发布股票价格。您有一个单独的服务订阅Cloud Pub / Sub并获得这些股票价格。然后,它确定哪些用户对应用程序感兴趣,并使用GCM向感兴趣的人发送通知。

Cloud Pub / Sub允许您从不同的来源和向用户发送更新的服务中分离您的提取。您的服务将是Cloud Pub / Sub的发布者和订阅者,他们之间会有大量数据。通知个人用户的吞吐量将会小得多,而且您拥有更多订阅者,因此GCM将是适用于该部分的系统。

答案 1 :(得分:1)

Google Pub / Sub是一种企业服务总线,当您的企业拥有许多系统时,您可以使用它,但这些系统与我们的数据库分开,企业服务总线可以通过消息与这些系统进行通信。 GCM(现在是Firebase云消息传递(FCM))是一个通知服务器,当您可以通过设备与其他设备进行通信或发送信息时,可以使用FCM。

答案 2 :(得分:1)

Google Pub / Sub相当于用于邮件管理的传统SOA Enterprise Service Bus,而GCM / Firebase更适用于通知服务(例如,向移动设备发送通知)。 Google Pub / Sub的主要目的是用于服务器到服务器的消息,但也可以用于GCM用于的通知服务,有点像一套超级GCM。