使用php服务器的可行性聊天android?

时间:2014-08-26 09:06:00

标签: php android mysql node.js

我正在制作一个聊天应用程序android作为客户端和php作为服务器(我使用nodejs使网站实时),在这个应用程序中我可以使用GCM向其他Android用户发送消息,消息流是当消息发送给另一个用户时,消息首先传递给服务器(将数据存储在mysql中)并将其传递给目的地的用户,我有几个问题。

1.如果我仅使用GCM创建聊天应用程序来发送消息,那么它是否稳定?

2如果我使用mysql作为数据库是安全的吗?

3我使用自己的服务器和ubuntu服务器Speck(8GB磁盘空间和96MB RAM),如果speck可以用作聊天服务器吗?

4此应用程序在发布时是否可行?如果超过100,000个用户使用该应用程序?

您如何看待上述陈述?我的申请是否稳定,将来不会出现严重问题?

感谢..

2 个答案:

答案 0 :(得分:1)

你使用PHP,GCM,MySQL和Node.js就好了。

以下引用回答了您的第一个问题:

  

适用于Android的Google Cloud Messaging(GCM)是一项允许您使用的服务   将数据从您的服务器发送到用户的Android设备,   还可以从同一连接上的设备接收消息。

  1. 是否。您需要使用GCM发送消息用户 - >服务器 - >用户。用户 - >用户通常称为Peer-to-Peer,GCM有不同的目的。

  2. MySQL是安全且成熟的数据库,但绝不会因为技术而将您的MySQL(或一般服务器)视为安全。几乎所有对服务器的攻击都是配置错误或基本保护不足的结果。

  3. 100MB RAM是一个挑战,你可能会遇到问题。您也没有告诉您在那里保证多少CPU功率以及网络。

  4. 100k用户?不,我首先关注的是1k用户,然后到达后担心可扩展性。实际上,在处理100k用户之前,您必须更改几乎所有内容。从好的方面来说,如果您拥有该用户群,您将拥有更大的预算来管理它。并且为了处理1k用户,您指定的服务器100%是不够的,但是一旦升级到普通的专用服务器或云服务器,技术就可以完成任务。

答案 1 :(得分:0)

GCM提供了一些非常重要的功能Android设备不会轮询接收通信。相反,GCM服务器在应用程序服务器发送数据时将数据推送到已注册的设备上。通过避免轮询,移动设备可以延长电池寿命。

对于可扩展性部分,与其他Google API不同,GCM服务上没有配额,因此对于使用该服务的任何数量的消息或设备都是完全免费的。

Stack Overflow有一系列问题&关于GCM内部运作的答案。浏览它们

请参阅https://stackoverflow.com/questions/tagged/android-gcm