4 月 16 日至 18 日,由 InfoQ 主办的全球顶级技术盛会——QCon(全球软件开发大会)在北京召开,云之讯首席架构师张修路分享了《呼叫中心的通讯解决方案与技术趋势》。
张修路通过此次演讲,解析云之讯如何提供分布式的呼叫中心的资源与平台支持,分享呼叫中心建设过程可借鉴的案例和解决方案,帮助技术人员理解大容量的分布式系统和云系统构建面临的挑战和解决方案,理解电信级系统的设计理念,同时深入理解利用异步编程对大容量系统的重要性。
呼叫中心互联网化是未来发展趋势
单一语音平台是呼叫中心的过去需求,随着融合通讯与 IP 语音的发展,客户越来越需要全媒体的呼叫中心,其包含传统的语音、APP 网页以及高终端的浏览器。随着行业技术和客户技术的发展,未来的呼叫中心将是一个全用户的平台,它构建在云计算上,并融合物联网和互联网发展成一全业务的呼叫平台。呼叫中心从传统呼叫中心,经过虚拟呼叫中心,向互联网化呼叫中心发展,它们的特点分别如下:
- 传统呼叫中心:基于运营商已经具备的语音交换机 PBX,提供 CTI、ACD 和 IVR 技术服务,呼叫中心服务商购买并维护设备,并持续购买升级服务。
- 虚拟呼叫中心:同一个号码在同一个系统上开展多种业务,需要用到虚拟呼叫中心,它是基于 PAAS 应用的模式,呼叫中心运营商购买服务而非硬件设备,话务员通过 PSTN 或者 VOIP 连接至 PAAS 平台,可以采用分布式或者移动的办公模式。
- 新一代呼叫中心: PAAS 平台扩展至云计算,按需购买云主机、存储和呼叫中心服务,云平台提供 APIs,允许呼叫中心整合自有或云 CRM。
信令与媒体分离、业务与控制分离两大设计理念缺一不可
图 1 互联网模式下呼叫中心的部署和结构
云之讯的客户在全国各地都有很多坐席,为了扩大客户群体,在每个地方需要本地的电话号码,需要分布式的落地网关与多个运营商对接。云之讯的呼叫中心建立了一个分布式的运营中心,其接到最近网关,在长途传输过程中,任何网络抖动造成的变量变差问题,都可以在靠近用户、网关的地方部署云之讯的媒体网关,消除抖动带来的影响。
信令能力层在语音传输过程中比较可靠,云之讯在北京部署了一个接入,在异地部署了一个容灾接点。基于呼叫中心,媒体和信令的处理仅仅提供了基础能力,后续不同的客户需要开发不同的应用。云之讯可以在互联网化的呼叫中心上构建各种高端应用,开放多个 AS,既可以为行业客户开发行业应用,还可保证 API 的接口和界面供客户多次开发,方便客户快速集成到云之讯系统中。
新一代呼叫中心有两大设计理念,一是信令与媒体分离,二是业务与控制分离。
信令与媒体分离可解决以下技术难题:
- 单独提升信令可靠性,重点节点做到主备切换,通过集群部署和分布式部署预防异地容灾;
- 媒体节点集群部署,故障可自动切换;
- 分布式部署保证了机房的故障自动切换到异地。
而业务与控制分离解决的难题显而易见:
- 根据不同用户的不同业务,灵活部署和开展业务,在标准的接口基础上构建不同的应用,方便客户接入。
- 业务逻辑各自独立部署,防止故障蔓延。
新一代呼叫中心的优势是传统呼叫中心无法比拟的:
第一,帮助企业用户做到低成本快速部署,传统的呼叫中心建设需要 3-6 个月甚至一年,而采用互联网化呼叫中心,不需要购买某些设备,在云之讯提供的软终端和标准界面,将业务快速部署,客户可以做到低成本甚至零成本。
第二,互联网化呼叫中心可做到全能力保障,在开通业务的同时就能得到全部的能力,云之讯还可为大客户做专业化的定制。
第三,运营方面,出现问题可以做到自动化处理,灵活稳定。
第四,呼叫中心支持号码隐藏保护,保证客户的资料安全,由于某些原因确实需要找到对方联系方式时,平台可为客户提供引导,提高客户的满意度。
如何突破分布式方案关键技术?
信令与媒体分离是建设云化中心的重要一点,它很好解决了大规模集群和高可靠性的问题。
- 媒体对网络要求比较高,对延迟、抖动都比较敏感,信令借助重发机制,对网络要求相对比较低。
- 信令处理相对比较复杂,对可靠性要求比较高,可以集中处理。
- 媒体节点在全国分布式部署。
分布式的业务分发和负载均衡是信令与媒体分离的关键技术之一。
- 信令点集中部署,异地容灾,也可以通过 DNS 按照区域负载到各地。
- 信令节点的负载均衡可以通过 DNS 来完成。
- 对于 DNS 指向的一个节点,通过一对 LVS 接入,后面多个信令处理单元集群。
- 不同信令处理点通过专线连接,以确保安全可靠。
- SIP 用户注册到集中信令处理点,信令点根据注册用户所在运营商和地理位置选择对应的媒体节点。
- 在同一媒体节点有多个的情况下,选择低负载的节点。
- 如果某个媒体节点中所有节点负载都比较重,按照一定规律选择就近处理点。
注册管理是实现信令和媒体分布的又一关键技术。云之讯根据不同的域名做不同的负载平衡(有些情况下是随机分配),将它随机引导至任何一个节点,一旦北京机房出现故障,就会把整个运营对应的 IP 自动修改至深圳,整个过程可在 5 分钟内完成。云之讯通过 DNS 引导客户到其中一个节点,整个数据集群可以来支持。
分布式方案的关键技术还包括注册系统高并发解决方案。首先通过 DNS 构建多个集群,降低技术的难度。第二单集群通过 LVS 接入,LVS 主备模式,即使出现故障,也可以在几十秒的时间内进行切换,整个过程中实现级别缓存,对一些热点的数据做一级缓存,对一些高级数据做二级缓存,缓存到 Redis,一旦用户有任何的更改都会回切到数据库,即便出现一些非常严重的故障,也可在短时间内恢复。为了做到高并发,我们使用了一些异步 servlet 和异步 CXF 解决方案,HTTPclient 请求,使用 HTTPasyncclient,通过 C 或者 C++,使用 libevent 组件构建异步架构。
异步架构是这样实现的:
- 技术服务器和客户端实现异步架构。
- 服务器数据库读写、日志读写、外部服务协助等需要大量等待,异步架构避免线程阻塞。
- 客户端通过异步发出请求,避免被阻塞,导致大量线程空耗系统资源。
- DB、日志处理和配置管理,通过独立的异步线程实现。
媒体智能路由也是不可忽视的一个方面。SIP 话机以及各媒体集群通过 RTCP 实时监测网络抖动和丢包情况,整个网络情况会实时上报到中心服务器,中心服务器逐步分析各个媒体间的网络状况,一旦发现专网或中网出现抖动,都可通过信令或者其他机制将它引导至另外的接点上去,这就是检测的过程。最终 SIP 话机可以通过效果最好的边缘节点接入,由于大部分客户是通过公网接入,各媒体节点通信通过专线或者最优路由来选择。
最后,配置管理还需要注意以下几点事项:
- 最终一致性:各节点配置数据最后是一致的。
- 可靠性:系统健壮,故障自动切换。
- 实时性:各个客户端实时获得服务器的更新信息。
- 等待无关:慢的或者失效的 client 不影响快的 client。
- 原子性:更新不存在中间状态,成功或失败。
- 顺序性,如果 A 在 B 之前执行,在所有机器上都如此。
一言一概之,张修路认为,建设互联网 + 呼叫中心需突破五大关键技术,第一,要做到信令与媒体分离,提升业务可靠性。第二,业务与控制分离增强业务灵活性。第三,需要一个大容量、高并发的信令处理的服务集群。第四,分布式媒体处理集群和智能路由,一旦发现故障及时切换。第五,异步编程架构提升单节点处理能力,当并发达到几十万上百万,要想降低成本,就要有很好的异步编程的能力。
随着互联网以及 IT 技术的发展,越来越多的呼叫中心企业希望更加充分的满足用户的通讯需求,越来越多的用户希望更加快捷的使用呼叫中心。传统呼叫中心集成复杂、成本高、建设周期长。云之讯呼叫中心通过网络分布式部署,可以让终端用户就近快速接入,通过快速集成,从而更快的满足用户需求。云之讯呼叫中心还可满足客户大容量、高并发和高可靠的需求,并支持虚拟呼叫中心,它使用了扁平化的架构设计、异步技术架构和容器技术,进而提升系统可靠性和可维护性,减少运维成本。
评论