超级快递——如何用体系来确保快递按时送达

上一年,一部《超级快递》给咱们带来了不少欢喜,除了欢笑,咱们也看到了准时送达作为一种增值服务或许高端服务在快递物流职业中或许性和商场。而每天上亿的快递数量靠人肉来确保现已几无或许,在这里,咱们从体系的视点来看看怎么建立一个确保快递能够准时抵达的体系。

要确保快递能准时抵达收件人手里,就需求能够主动及时的发现那些或许会迟到的快递,并在第一时刻进行检查和处理,比方联系到快递小哥承认状况等等。

在这里,咱们将快递在整个流通的进程进行拆分,当快递抵达一个状况之后,确认下一个状况以及抵达时刻,在规则的时刻内没有抵达则需求告诉相关的负责人进行处理,咱们将快递的每一次状况的更新都写入数据库中,然后采纳下面两种计划进行简略的处理:

计划一

每次更新快递的状况时与前一次状况进行比较,中心的时刻差超出希望时刻则报警。

计划二

守时对一切的快递状况进行检查,最近一次状况更新的时刻距当时时刻超出希望则报警。

计划一只在快递更新时做处理,对体系的压力最小,可是需求依靠快递的抵达时刻触发,时效性太差,快递到的越晚就越晚才发现快递迟到,往往是发现快递不能准时送达的时分快递就现已迟到了。

计划二发现或许迟到的快递的时效性取决去检查的周期,最坏状况下便是快递在检查之后马上就超时了,比及下次检查才干发现,并且对日均千万乃至亿级其他快递状况进行存储原本便是一个十分头疼的问题,再扫全库进行查询又会大大添加数据库的担负,很有或许查询的时刻就会超越快递的超时时刻。

所以,咱们选用了阿里云的表格存储与音讯服务的延时行列功能来处理这个难题。

快递状况存储

首要,咱们将快递的每一个状况都存储在表格存储中。

表格存储很好的处理了数据规划与读写并发上的问题,单表能够支撑到万亿级数据规划,主动负载均衡能够让用户不需求做任何动作就能够将数据表的读写并发扩展到百万等级,按量付费又能够防止资源的糟蹋。一起,读写功能不受数据规划的影响,也不必忧虑数据堆集之后的功能问题。

反常快递检测机制

首要,咱们依据事务状况在音讯服务上创立多个不同的行列,每个行列设置不同的DelaySeconds,进入该行列的音讯将在设置的DelaySeconds之后才会被顾客取到。

在每一个快递状况更新时,一方面将该快递状况写入到表格存储中,以供给实时在线查询。一起,依据快递状况的超时时刻创立一条音讯,包含快递单号、超时时刻等信息,将该音讯发送到对应的行列中,比方处于揽件的某个快递需求在2小时内抵达中转站,则将该快递的信息push进 2小时揽件行列。

超时检查体系从上述行列中取音讯进行检查,依据音讯中的 快递单号 在表格存储中查询该快递的最近一次状况信息,假如查到的最新状况时刻大于音讯中的时刻,则阐明该快递在超时时刻内抵达了下一个状况,不然该快递则有不能准时抵达的危险,敏捷进行报警处理。

架构优势

  1. 表格存储与音讯服务都是高并发、按量付费产品,不需求评价事务的拜访状况,再购买相应的标准,按量付费也不会呈现资源的糟蹋。

  2. 表格存储的高并发优势能够在几十万的QPS下仍然供给毫秒级的读写延时,从容应对超时检查体系以及来自实在用户的快递查询需求。

  3. 快递抵达超时时刻之后能够马上被顾客也便是超时检查体系看到,大大提高了处理的实时性。

  4. 一个行列能够对应多个顾客,每个音讯只会被一个顾客取到,所以检查行列里边的音讯堆积状况,包含未到唤醒时刻的音讯和现已唤醒等候处理的音讯数量,当等候处理的音讯数量过多则阐明体系处理的慢了,这个时分就能够动态添加处理节点了,节点间没有状况引进,直接去获取音讯时刻处理即可,布置架构又大大简化。

相关文章