Amazon SNS使用Java推送主题
我正在尝试在我的基于Java的网站上实现推送通知(使用Struts 1.x)。 目标是使类似Stackoverflow和其他站点的内容类似于在获取消息时实时通知用户。
我使用mysql作为我的数据库,Apache作为我的服务器,我正在考虑使用Amazon-SNS作为这些通知的框架,因为这就是该服务似乎的目的。
在“网站上”,不,这不是SNS真正做的事情。
SNS有两种不同的操作模式:
- “主题” – 通过http(s),电子邮件地址,SQS队列和SMS设备(文本消息)向Web 服务器 (而非浏览器)的组合发送广播通知,确认他们订阅了SNS主题
- “移动推送” – 将可寻址的推送通知直接发送到您编写的移动应用程序(而不是直接发送到Web浏览器)
对于浏览器的实时通知,请查看您正在查看的页面的来源,以了解它是如何完成的:
这看起来像一个websocket连接,由wss://
标识(与https://
对比)。 各种语言的websockets有各种各样的实现,允许你身边的组件与浏览器上运行的javascript进行交互,我建议这是与现代网络推送通知的标准机制最接近的事情。浏览器。
SNS没有为浏览器提供这种集成的function集,尽管它可能是内部用于将消息从您的应用服务器中继到您的websocket网关,因为SNS可以提供短期应用服务器和网关之间的缓冲区,或者向多个网关广播消息的能力,如果这是你实现它的方式……这样的优点是它会阻止app服务器受到不利影响网关过载或脱机。 理论上,websockets可以由应用程序服务器本身终止,因为它们通过HTTP开始连接,但是与http请求相比,典型的websocket连接的寿命更长,这可能会使它成为一个糟糕的组合。
- Amazon Web Services(AWS)S3 Java创建子目录(对象)
- 为枚举构建一个通用的DynamoDBMarshalling
- AWS Lambda:如何从简单的java类调用lambda函数
- 如何在当前日期的1年内设置Amazon S3存储桶预签名URL到期时间
- AWS Java客户端的未知主机exception?
- 在Amazon S3中使用KMS密钥解密文件时出错
- 使用ResourceNotFoundException的简单DynamoDB请求失败
- com.amazonaws.services.s3.model.AmazonS3Exception:拒绝访问
- 使用Java API的S3 / AWS的SSL问题:“证书中的主机名不匹配”