专业建议:消息解决方案

时间:2011-03-28 09:12:34

标签: java php perl bulksms

我正在整理批量短信解决方案的申请。我很乐意用Java,Perl或PHP编写应用程序。

请建议处理异步消息传递的最佳媒体。

我确实拥有网络凭证,即:

  • IP
  • 端口
  • 用户名
  • 密码

用于SMPP连接。

我正在考虑以下事项:

  1. 用户从网络上传CSV或XLS文件
  2. 数字和消息保存在数据库中
  3. 我创建了一个cron来定期检查数据库以查找排队等待发送的消息
  4. 要发送的消息将转发到活动MQ(APACHE的消息传递工具)。
  5. MQ转发到网络
  6. MQ从网络接收确认和传递状态并更新数据库。
  7. 请指出我的概念是否正常或是否有更好的解决方案。

1 个答案:

答案 0 :(得分:0)

您正在谈论SMS消息(这是一个异步消息处理系统)这一事实让人感到困惑 - 实际上并不重要 - 重要的是您正在尝试编写异步消息处理系统做某事

排队和处理消息的现成解决方案还没有结束。以前我使用BSD lpd进行少量短信/传真。您可以同样使用MTA或专门为SMS处理设计的工具,例如Kannel。 IME,处理提供多种不同API的聚合器,证明它更有效地推出了我自己的解决方案。

如果您要编写自己的解决方案,请不要使用cron。

当您的cron作业触发时,您是否只接收一条消息并进行处理?您是否尝试获取所有可用消息并进行处理?如果这需要超过cron作业之间的间隔怎么办?虽然消息传递子系统(在您的订阅者之前 - 之后)会从中获取一些复杂性,但它并不能解决所有问题。

执行此操作的正确方法是将守护进程作为单个线程运行或使用计划分片。