Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Network programming FCM是否适用于实时游戏后端?_Network Programming_Firebase_Backend_Firebase Cloud Messaging - Fatal编程技术网

Network programming FCM是否适用于实时游戏后端?

Network programming FCM是否适用于实时游戏后端?,network-programming,firebase,backend,firebase-cloud-messaging,Network Programming,Firebase,Backend,Firebase Cloud Messaging,由于谷歌最近对Firebase进行了重大更改,他们发布了一项名为FCM的服务。我想知道,这是否可以作为两个玩家之间实时游戏的后端,替代TCP或UDP之类的协议?例如,由游戏服务器控制的多人游戏,其他玩家的位置每秒更新多次。我看到它可以传输每个数据包4kb的数据,而且由于它是由谷歌托管的,我认为连接时间肯定会很快;然而,谷歌并没有将其作为游戏后端进行宣传,而是一个适合IM等应用程序的消息传递系统 基本上,我要问的是,与TCP和UDP等协议相比,FCM在以下方面的比较结果如何: 可靠性 速度 它可

由于谷歌最近对Firebase进行了重大更改,他们发布了一项名为FCM的服务。我想知道,这是否可以作为两个玩家之间实时游戏的后端,替代TCP或UDP之类的协议?例如,由游戏服务器控制的多人游戏,其他玩家的位置每秒更新多次。我看到它可以传输每个数据包4kb的数据,而且由于它是由谷歌托管的,我认为连接时间肯定会很快;然而,谷歌并没有将其作为游戏后端进行宣传,而是一个适合IM等应用程序的消息传递系统

基本上,我要问的是,与TCP和UDP等协议相比,FCM在以下方面的比较结果如何:

  • 可靠性
  • 速度
  • 它可以处理的流量
  • 数据是像TCP那样的顺序,还是像UDP那样的“随机”顺序

从长远来看,它是否能够支持服务器中游戏之间的持续通信?

这是一个可变的问题。如果您正在创建一个基于高反应的游戏(FPS,高反应性动作游戏),那么使用Firebase可能不是一个好的解决方案

这并不意味着你不能使用Firebase。您可以将积分、统计数据、经验、HP/MP同步卸载到Firebase,以便在玩家之间进行同步

谷歌云消息,它还可以在设备的高使用率期间进行节流。因为你不能控制这个节流机制,所以除了发送通知之外,我不会再使用它了。该体系结构更适合聊天、推送通知、收件箱/新消息

长话短说:

  • 将Firebase用于点、记录事件、
  • 使用FCM进行通知

是的,不幸的是他们没有发布“每秒消息数”这样重要的性能特征。至少,我还没有找到它。我想有关该指标的信息将帮助您确定它是否是裸TCP的合适替代品。