是否会保证将消息传送到订阅的终端节点?
SMN向终端节点推送消息时,使用异步方式送达,不保证消息送达的时效性。如果业务要求消息准实时送达,请慎重考虑是否使用SMN服务。
如果订阅终端节点可以送达,消息通知服务会确保消息传送到订阅终端节点。
如果订阅终端节点无法送达,消息通知服务会将发送失败的消息保存到失败的消息队列尾部,等待下次被发送。如果发送失败次数超过6次,消息将直接丢弃,不再保存到失败的消息队列,且不会给用户发送“消息发送失败”的相关信息。
失败的消息队列中的消息处理间隔时间是不确定的,它取决于失败的消息队列的长度。
SMN向HTTP(S)订阅终端发送消息的超时时间为5s,即响应时长超过5s后,SMN会认为连接超时发送失败。
指定时间段内如果多次发送失败,则会加入到黑名单中,加入到黑名单的订阅终端SMN不再向其发送消息。
黑名单中的订阅终端会在5-10min后自动移除,移除后SMN能够正常向该订阅终端发送消息。
SMN仅在HTTP(S)订阅终端节点返回内部错误,即HTTP(S)返回码大于等于500时,才会进行重试;其他场景均不重试。