本文PPT来自高级专家陈舟锋于10月16日在2016年杭州云栖大会上发表的《消息服务在Serverless中的应用》。
消息服务在Serverless中具有广泛的应用,目前阿里已经开放了阿里云消息服务(MNS)。MNS是一种高效、可靠、可扩展的分布式消息队列和通知产品,可以帮助我们轻松地构建大规模、松耦合的系统。从产品架构上来说,系统由下至上分为三层,最底层是持久层,中间是业务层,高层是接入层。其提供的功能有:1。队列,应对高并发、保证至少成功消费一次 2.主题,当服务器主动推送消息,能通过多种通道投递 3. 事件通知,能轻松订阅与服务事件,实现事件驱动的服务架构。其消息服务的特点包括:数据高可靠、服务高可用、服务化标准接口、多用户隔离安全、低门槛、零运维等等,
在Serverless架构的实现中经常会面临以下这些挑战:1.如何处理海量的事件 2.如何分发和过滤事件 3.如何订阅云产品事件。对此,阿里的解决方案是利用队列来为Serverless提供处理海量事件的能力,利用主题为Serverless提供事件分发和过滤能力,利用事件通知为Serverless提供订阅云产品事件的能力。目前,消息服务在很多实际案例中都得到了应用,如视频处理、音/视频转码、停车场汽车收费系统等。
总而言之,如果要做到Serverless不离开消息和事件,消息服务就应该能做到:1.提供海量事件的处理能力,让Serverless更加弹性 2.提供事件分发和过滤能力,让Serverless更加灵活 3.提供云产品事件订阅能力,让Serverless更加丰富。