为了帮助IT从业者职业之路拥有更多收获,在诸多C粉的殷切期待下,由 CTO俱乐部打造的CTO线上讲堂自登场以来获得大家好评。本期邀请逸创云客服CTO刘铭带来SaaS云客服平台技术架构探讨的主题分享。
欢迎加入CTO讲堂微信群与业界大咖零距离沟通。
分享嘉宾: 逸创云客服CTO刘铭
嘉宾简介: 刘铭,逸创云客服CTO,拥有多年的SaaS企业级产品研发经验。热衷于研究各种技术,从前端的界面设计延伸到后端的服务运维,熟悉分布式,缓存,消息,搜索等机制。因看好国内SaaS发展趋势,加入逸创云客服,一直从事架构设计与产品研发等核心工作,致力于打造行业领先的云客服平台。
公司简介:逸创云客服从成立的2011年开始就本着让企业的用户更加满意,客服更加高效,管理更加轻松的宗旨,打造中国最稳定最安全的一站式客服系统,整合呼叫中心,微信客服,在线客服,工单系统,APP客服,邮件客服,表单客服,及微博客服,成就了逸创云客服:客服信赖的一站式企业级云服务平台。
在三年的时间里,我们始终从客户,从客服,从管理者三方的角度去完善我们的产品.也是我们这样的坚持,获得了百度,360,猿题库,申通,蜜淘全球购,uber,印象笔记等国内外30000家优秀企业的信任。
以SaaS模式为企业打造ALL IN ONE的客户服务平台,构建企业的在线帮助中心,聚合邮件、电话语音、IM在线交谈、反馈组件、移动APP、PC/移动端表单、微博、微信、API接口等客户支持渠道,将来自各个渠道的用户以工单的形式进行响应和受理,打通企业售前售中售后客户服务,让企业流程化标准化管理客户服务。
以下是1月29日CTO讲堂现场完整速记:
主持人:讲堂现在开始啦,欢迎逸创云客服CTO刘铭,请您给大家做个自我介绍。
刘铭: 大家好,我是刘铭,目前在逸创云客服担任CTO的职位,主要负责公司的产品研发和架构设计。
学生时代就对Web开发产生了浓厚的兴趣,从前端到后端都有折腾,曾经是一名全栈工程师,目前仍沉浸在技术的海洋中,不断探索,不断思考。今天主要给大家分享打造云客服产品的经验和心得,希望和大家互相交流,一起进步。
主持人:我们知道您一直钻研架构方面的技术,什么样的契机下决定加入逸创云开始创业之路?
刘铭:大概在2009年的时候,我了解到SaaS服务模式,觉得相见恨晚,认同这是未来的软件服务趋势,便依据SaaS模式制定自己的技术路线。当时国内的SaaS服务以crm为代表,并未涉及更多的垂直方向,而国外的SaaS市场已风生水起,百花齐放。
偶然一次机会,逸创云客服的创始人联系到我,想要打造国内首个SaaS云客服平台,颠覆传统的客服行业,这与我当时的想法一拍既合,从那时开始一直持续到现在。
主持人:请介绍下逸创云的技术团队及构成?
刘铭:逸创云客服的技术产品团队在成都,市场运营团队在北京。技术团队部分成员来自于传统的客服行业,在客服行业积累了多年经验,部分成员来自大型互联网公司,在互联网产品设计与研发上具有深厚的功底。
可以用七个字来形容我们技术团队:高效、默契、有担当。每个成员的能力都是非常优秀的,在团队协作方面,都能从其他成员的角度考虑问题,这就大大减少了沟通成本,当客户遇到问题时,模块负责人都能第一时间响应并解决。能够与这样的技术团队并肩作战,我感到很自豪。
主持人:请介绍下逸创云目前提供的产品技术服务?
刘铭:逸创云客服专注于企业级云客服平台,核心功能包括呼叫中心,在线聊天,工单系统,帮助中心,客户管理等。聚合了几乎所有的客户支持渠道,支持网页、电话、邮件、短信、微信、微博、移动SDK、客服APP等,为企业提供售前、售中、售后的一站式客服平台。
逸创云客服提供永久免费模式,包含3个客服坐席——助力中小型企业客户支持服务。如今有超过30000家企业选择信赖我们,包括百度、360、Uber、36氪、七牛、Ucloud、明道、罗辑思维等。客户群体覆盖了移动互联网、电子商务、金融、企业服务、教育、游戏、O2O、物流、医疗等行业。
主持人:与同类产品相比,逸创云的产品服务最大的优势体现在哪些方面?
刘铭:逸创云客服于2011年开始研发,2012年正式上线,最初是没有竞争的,我们花了很长时间完善产品,打好基础。一个没有竞争的市场就不能称为真正的市场,随之而来的竞争者是对这个市场前景的肯定和认同。
逸创云的优势主要体现在以下5个方面:
主持人:请介绍下云客服目前的技术架构?
刘铭:
核心系统做了不同机房的灾备切换,数据库支持主从切换和多节点备份,各种应用服务都支持集群扩展,保障整个云客服平台的高可用性。
入口层做了DNS层的负载均衡和Http层的负载均衡,充分发挥多机房与机房内web集群的优势。
业务层主要采用了LAMP组合,后端开发框架上采用Yii,前端框架采用Ember.js、Backbone.js,实时应用部分采用了Node.js、Express,业务层均是无状态设计,具备很好的可伸缩性。
缓存层采用了Ucloud提供的Memcache和Redis,支持分布式、持久化、自动容灾。
数据层采用了Mysql作为数据库,根据业务进行垂直分片,支持主从同步,读写分离、灾备切换。
文件存储层采用了阿里云提供的对象存储服务,支持多媒体转码以及图片处理。
监控服务采用了Ucloud和阿里云提供的监控,可以通过短信和邮件得知服务状态。
日志服务采用ELK组合,聚合各种服务的日志信息,在管理平台进行统计分析。
其他应用服务包括即时通讯,邮件,电话,微信公众号托管,消息推送,高级搜索等。
主持人:在产品开发过程中,对于架构的把控和设计都有哪些要点?
刘铭: 创业公司的产品需要敏捷开发,快速迭代,敏捷不仅仅在于快速交付,实现功能。如果单单为了提高速度,而不考虑扩展性,规范性,那么就产品就会变得冗余笨重,难以持续性发展,甚至是需要重新造一次轮子。
敏捷的关键在于快速响应变化,在速度和质量上找到平衡点,只关注真正重要的事,而且要重视,少关注占用大量时间而意义不大的事情。
在架构的把控和设计上,就得与产品的敏捷开发相配合,不断的进行权衡取舍,下面介绍三个架构设计原则:
主持人:云客服关键的技术难点和挑战有哪些?
刘铭:
产品上的难点与挑战:
技术上的难点与挑战:
基本要求是不能有单点故障,基本方法就是分层和冗余。可以利用负载均衡实现应用层高可用。
当一台应用服务器宕机,会由其他应用服务器接管,整个系统对用户始终保持可用。负载均衡也能起到让集群来分担访问压力的作用。实现方式上,可以先利用Nginx反向代理实现Http转发负载均衡。而规模稍大后则利用LVS实现IP层负载均衡或者数据链路层负载均衡。
搭建负载均衡的前提是把应用层变成无状态的。例如web服务中常用的session,可以利用缓存来分离出去。
可以通过主从复制实现数据层高可用。目前主流数据库都支持主从复制,基本原理是从库监听主库的日志变动,将这个数据变动及时同步到从库。从库既可以起到数据备份的作用,也可以在主库出现问题时,取代主库的角色,从而实现高可用。可根据业务的特性,设置合适的主从库比例。
为了更好的利用数据库主从机制,还可以进行读写分离,从而改善数据库的负载压力。数据写操作必须在主库上,读操作尽可能的在从库上进行。要进行读写分离,首先要面临的问题是数据同步延时。这个同步延时虽然可以通过一些方式来减少延时时间,但始终无法避免。要解决这个问题,比较推荐的方式,是在应用层或数据层做一个代理,这个代理要实现的是在写操作进行后,数据完全同步至从库前,强制从主库读取,这样就能保证数据的实时性。
数据文件所存放的硬盘都做了raid10保护,并对文件做异地同步,具备很高的数据安全性和可用性。数据是多份备份,多处存储,采用特殊加密方式,分离运维和开发的权限。
我们对产品的信息传输也进行了加密,数据传输加密采用SSL加密,即使被黑客窃取,对方也无法获取信息的明文内容,可以保证信息传输的安全性。
对产品所有流入和流出信息都进行了信息过滤,对XSS跨站攻击、后门木马、SQL注入等常见的入侵手段加以防护并不断改善,避免产品使用过程中的各种潜在风险。
主持人:对于未来云客服的发展前景有哪些思考?
刘铭:未来的云客服平台需具备三个特点:
逸创云客服已提供移动客服,智能机器人,数据统计分析的产品,但从未来的角度看,还需要深耕细作。希望和用户一起,需求驱动产品,让未来早日到来!
主持人:未来公司的发展方向和定位是什么?下一阶段的发展重点是什么?
刘铭:逸创云客服致力于成为云客服领域的企业级服务商,专注为企业提供客户支持服务。
目前逸创云客服覆盖了所有的客户服务渠道,很好的完成了产品的市场布局。以后仍然会用心倾听来自用户的反馈,在每个渠道都进行深度的探索,满足更深层次的用户需求。后续将与更多的SaaS企业服务商合作,进行产品上的应用集成,打造一个全方位的云客服平台。
主持人:结合自身,谈谈技术人如何做到高效学习和提升技能?
刘铭: 学习是一个认知过程,是可以根据自身的能力与习惯进行规划,缩短由入门到熟练、再到精通的时间,以下是我个人关于学习进度的一些心得:
主持人:谈谈创业路上的收获与思考,对于想要投身创业的年轻人的建议?
刘铭:
总之,创业的艰辛只有走过这条路的人才懂,一旦走上这条路就不能回头,为了成功,值得冒险。
主持人:对于想在技术上走的更远的人,有什么建议和忠告?推荐您觉得不错的一些资料或者书籍
刘铭:如今技术的更新越来越快,但是万变不离其宗,一定要夯实基础,才能厚积薄发。希望大家每学一门技术,都能领会一种思想,借此不断开拓视野,提高自己的技术修养,为世界创造出更多有价值的产品。
个人认为经得起时间考验的书是一定要看的,而且要多看几遍,所以给大家推荐以下书籍:
互动环节:你们的智能机器人和微软小冰有多大差距?
刘铭:在人工智能上和微软小冰的差距肯定是有的,不过我们会利用好自己的优势,就是基于云客服平台累积的用户数据,在用户允许的前提下,我们可以基于数据进行特殊分析,打造更有针对性的智能客服。
互动环节:关于数据库的设计是什么模式的?
刘铭: 数据库设计上运用了主从同步,读写分离,容灾切换
问:这个能够理解,重要的是关于,用户数据表的设计,是每个企业一个数据库,还是共享一个库,还是一个库,多个schame。关于这种模式的经验,有没有遇到过比较苦恼的事情。
刘铭: 在企业的数据上,我们首先在业务上分为了多个库,每个企业的数据是在同一个库,用户数据分为公共的属性和自定义的属性,公共的部分是在同一个表,自定义的部分是不同的schame。但是数据在使用上是完全隔离开的,这一点是最重要的点。
问:我们在考虑数据库的设计时,也是做了大量的尝试,考虑到不同企业之间的数据隔离,还要考虑数据库的规模,还要考虑应用之间的共存。没有最好的设计,只有最适合的设计,这也是一路走来的经验积累。现在阿里云已经发布了很多服务,有没有考虑多用这类的服务?还是这类的服务还不能满足现有的服务呢?对我们正在尝试的会有什么好的建议。
刘铭: 其实我们在图片处理、语音转码功能上,已经采用了阿里云提供的服务。使用成熟的第三方服务,可以使创业公司专注自己的核心产品价值。当然在使用前,还是得仔细考虑是否符合产品的需要。
互动环节:因为现在大数据云计算将来是一个趋势,所以想好好学习学习,我才毕业一年。
刘铭: 入门时可以以基础为重,多学习数据相关的理论,这样你以后的实践之路会走的更顺利。
问:是数据结构、算法方面的吗?
刘铭:对的,还有统计学相关的基础,这些理论知识可能就是以后成长的瓶颈,所以得认真学习。
互动环节:请问您对创业公司要不要花时间和资金培养新人的问题怎么看?
刘铭: 创业公司能够持久发展的动力来源关键是人才,但是由于创业公司资源有限,对于新人是否合适的判断标准要高一点,但是一经录用,肯定是要花很多精力培养的,这样在以后公司的发展中,才能担当重任。
互动环节:你觉得SaaS这种软件模式在目前中国的接受度如何?发展潜力如何?我知道在美国已经有相当的发展,如Salesforce。
刘铭: SaaS软件模式在2015年有了非常大的进展,预计在未来3年来会成为非常热门的行业,发展前景很广,市场很大。
互动环节:请问这个只是一个客服系统吗,他和其他系统,比如电商系统,微分销系统如何对接?数据库可以共享吗?
刘铭: 这不仅仅是个客服系统,可以称为一个客服平台。我们提供有sso用户集成,restapi系统集成,webhook推送提醒等,可以快捷的实现深度对接。数据库当然是独立的,不过可以通过接口调取
互动环节:刘总,请问SaaS在企业中主要在哪方面有实际的使用场景?
刘铭: 研发-大数据 SaaS的使用场景非常多,比如客服、物流、制造、计算、存储、网络加速、维修等。SaaS可以使企业在这些业务上取得更多的成效,也可以节约很多成本。
想与业界大咖零距离沟通,欢迎加入CTO讲堂微信群,参与CTO讲堂!
第1期:APICloud联合创始人兼CTO邹达: 以API为核心的移动应用云大发展时代;第2期:UPYUN CTO黄慧攀: 云加速和技术成长那些事儿;第3期:亿方云科技创始人兼CEO程远: Box首位华人核心工程师的回国创业之路;第4期:UCloud联合创始人兼CTO莫显峰: 如何成长为技术合伙人?CTO讲堂分享时间地点: 每周四或周五, CTO讲堂微信群
加入方式:扫描二维码加“C粉儿小助手”好友,申请入群。
还不是CTO俱乐部成员的各公司技术负责人,欢迎立即加入俱乐部:cto.csdn.net 。
更多俱乐部动态,欢迎扫码关注微信号: