我们即将开始这就需要使用SMPP作为主集成交换通道的项目。 现在既然短信不一定核心业务,我想使用SMPP库为Java,这将是最麻烦。 除了骑在实际的协议,它不太可能我们需要票友能力或引擎盖下永远调整。
为此,我已经入围了一些,我们有可能的选项:
- Logica的开放SMPP
- Apache的骆驼
- JSMPP
- Twitter的Cloudhopper
人谁是在他们的应用更有经验,可以抛出一些自己的经验,我的方法是什么?
编辑:只是为了给范围使用的情况下,我们会发送和接收SMS'es所以图书馆应该有希望让生活轻松与两个客户端操作,也服务器监听器实现。
我都用了jsmpp & cloudhopper,SMPP了其参与其中涉及的情况下发送和接收SMS的SMPP了独立的项目:
- 接收MO的中高数。
- 发送大量MT的(高达70 /秒)。
无论是库造好,以及IMO jsmpp是更加人性化的投入并开始编码的时候了。 但我不得不跨越了几个错误来使用时从GitHub的最新版本,它仍然不固定。
有使用cloudhopper后,我认为这是非常值得的学习曲线,比起jsmpp(主观),其是凌晨一点陡峭。
我目前正在实施利用Logica的图书馆在Java中的SMPP解决方案。 这是非常容易使用。 下面的信息状态的测试结果:
应用:部署在Glassfish的3.1.2.2企业Java Beans应用
语言:爪哇(使用JMS)
图书馆:逻SMPP(1.3版)
原产地(ESME):本地主机
目的地(SMSC):Logica公司SMSC模拟器在开发服务器(亚马逊网络服务托管)
类型:Transciever异步
平均发送速率(80%):246 MSG /秒
低发送速率(15%):50 MSG /秒
高发送速率(5%):255 MSG /秒
只要你坚持异步模式下,它是非常有效的。 如果你需要保持消息及其响应使用“序列号”,也就是消息和响应都在之间的相关性。
我们SMSC写在逻SMPP(V 1.3),但它仍然作品真的很好用企业负荷。 已经有只主要关于库message_payload,老实说,我不记得其他问题的几个小问题。 但它很容易修复,因为它是一个开源的产品。
虽然我个人相信Logica的来源,对小客户我用jsmpp。 我@Farhan同意,这是多一点人性化和简单的客户端的开发花费较少的时间。
我用两个jsmpp和smppapi ,发现后者更漂亮,因为jsmpp在那个时候(2010年),只有同步阻塞模式-不知道这仍然是这样。
jsmpp的阻挡性质成为大的问题来源,当我连接SMPP服务器中遇到了一些性能问题,并回答比平时慢。 突然,我发现我所有的线程在等待答复。 迁移到smppapi明显解决的问题。
我用逻SMPP的生产项目。 它不积极了维护和有这导致具有产生变通方法或实际建立该代码库来解决一些固有的缺陷。 话虽如此,我已经找到了API非常稳定和高性能(300msg /秒)。
我简要地看着JSMPP,它具有比逻更加美好API虽然似乎有大量的缺陷还没有得到修复,尽管该问题列表有是很长一段时间。
对面Cloudhopper SMPP来到这似乎更是最新的款式进行编码,但再次,它需要更多的例子。 不必通过代码库苦差事是没有吸引力。 在gituhub例子越来越好,虽然。
Cloudhopper是最好的选择,Apache的骆驼也不错,但它是有很多接口,PDF,销售人员一个非常大的工程....你不需要。 其他项目未更新为最新的。 Cloudhopper是Telestax维护和他们增加一些有用的功能,看起来像他们会给今后的大力支持它
这里的堆栈为easying配置Cloudhopper https://github.com/RestComm/smpp-extensions这里的分叉Cloudhopper由telestax(非常最新): https://github.com/RestComm/cloudhopper-smpp也JainSlee资源适配器为谁谁的工作在电信领域https://github.com/RestComm/jain-slee.smpp