我需要设计一个系统来向具有大型数据库的移动设备发送实时通知


I need to design a system to send real time notification to mobile device with a large database

我有一个用PHP-5.4编写的推送通知发送系统,用于通过移动设备以固定的时间间隔发送推送通知。我需要尽可能快地让它。现在这个东西正在通过调度管理器(cron)执行。

现在所有的事情都运行良好,因为应用程序用户的数量不是太多。但在现有系统中,随着用户的增加,执行速度和通知的传递时间会降低。

执行速度和响应时间 ∝ 1/用户数量

我现在想要实现什么...

  • 通知必须立即发送
  • 此服务器可以在需要时从另一台服务器远程触发。
  • 执行速度和响应时间不应因用户的不断增加而受到重大影响
  • 服务器也应该作为 cron 服务器工作,其他服务器不应由于在此系统上执行的进程而受到影响,因为有一个数据库正在为它们运行。

简而言之,我想重建/升级我现有的不稳定系统,使其不受用户数量的影响。


任何建议或帮助不胜感激
谢谢

我建议你使用多处理并避免cron作业。

看看这里。它基本上是使用 PHP 分支来生成"多线程"。

此外,创建守护进程(所有时间运行的进程)而不是 cron 作业。你最终会得到更多的"实时"。实际上并不难实现。指导

拥有的用户越多,您创建的线程就越多。

享受阅读!