push message (短消息推送) 技术Java怎么实现,有没有大神可以讲解一下

Python013

push message (短消息推送) 技术Java怎么实现,有没有大神可以讲解一下,第1张

push message (短消息推送) 技术Java怎么实现步骤如下:

1、手机客户端client1发送一条“msg1”的文本消息到服务器

2、服务器收到来自client1的“msg1”消息后,把它add进messageList里面

3、服务器检测到messageList里面含有消息(开启服务器时就新建里一个检测messageList的线程,线程里面有一个死循环,用于不停检测messageList是否含有消息)

4、服务器读取消息数据,如读取到来自client1发给client2的消息“msg1”,那么服务器就把“msg1”推送到client2上

5、client2检测到服务器推送的消息,做出相应的操作(如:震动、铃声、显示消息等)

6、client2接收到来自服务器推送的“msg1”消息后,client2也回复一条文本消息“msg2”给client1,此过程和client1发送消息给client2一样。

7、最后,client2就可以显示来自client1发送的消息“msg1”,而client1则可以显示来自client2的回复消息“msg2”

短消息推送使用极光推送更方便。正确的使用好推送,活跃度的提升十分明显是工具类。极光个性化推送满足用户多种推送需要,有效提升用户体验,利用大数据人工智能技术,实现智能用户分群,提升消息点击率,推送安全包确保推送内容准确,拒绝运营事故。

定时任务实现的几种方式:

Timer:这是java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务。使用这种方式可以让程序按照某一个频度执行,但不能在指定时间运行。一般用的较少。

ScheduledExecutorService:也jdk自带的一个类;

是基于线程池设计的定时任务类,每个调度任务都会分配到线程池中的一个线程去执行,也就是说,任务是并发执行,互不影响。Spring Task:Spring3.0以后自带的task,可以看成一个轻量级的Quartz,而且使用起来比Quartz简单许多。

Quartz:这是一个功能比较强大的的调度器,可以让程序在指定时间执行,也可以按照某一个频度执行,配置起来稍显复杂。

消息推送推荐选择极光推送软件,JPush 是经过考验的大规模 App 推送平台,每天推送消息量级为数百亿条。 开发者集成 SDK 后,可以通过调用 API 推送消息。同时,JPush 提供可视化的 web 端控制台发送通知,统计分析推送效果。 JPush 全面支持 Android, iOS, Winphone 三大手机平台。