浅谈SaaS在线CRM云平台架构

没有标准并不等同于SaaS不能被用户接受。我们可以从某些常见的应用中以点带面,看一看SaaS服务应该具有什么样的标准。我们今天以企业用户常用的CRM系统,来看一看标准的SaaS CRM应该是一个什么样子。

实际上,很多用户对于CRM并不陌生,早在2000年的时候,有一些企业就已经开始尝试CRM系统。在很多人眼中,CRM就是一套C/S或者B/S的应用系统。而当CRM进入了SaaS,他在架构上会是一个什么样子呢?采用企业级的多层次、多应用的系统结构的SaaS在线CRM平台。平台架构从大的层次上来分主要为四层,根据调用关系依次为应用层、缓冲层、服务层以及存储层。

应用层

从浏览器发送过来的请求,直接由应用层来进行直接响应;平台是多租赁用户的在线多应用来实现的,由于每个用户的具体业务需求不同,因此每个租赁用户的应用是相互隔离的,但应用层的结构却都是相同,从上到下主要分为业务展现层、业务逻辑层、业务模型层、实体访问层;业务展现层主要为用户数据的不同视图表现,为用户呈现各种易于浏览、便于理解的各种数据表现方式,如表单、表格、报表、图表等;业务逻辑层主要是业务逻辑的具体实现层,对于用户动作、触发事件以及工作流程等由业务逻辑层来实现业务的处理以及响应,通过业务逻辑层对下层业务模型的访问来实现具体的逻辑处理;业务模型层主要是业务对象的具体定义与封装,是对于现实中业务在平台中的最直接的映射;实体访问层是对于业务逻辑层对于业务模型操作的封装,业务模型的实体状态的更新、删除、查询等都是通过实体访问层来实现。

缓冲层

缓冲层主要对于静态资源以及动态数据的缓存。静态资源主要是指应用层中展现层中所要使用到的静态资源文件,以及由用户在业务操作中产生的文件等,如图片、上传的文件等;而动态数据是指用户在使用平台的过程中所产生的业务数据,在实现业务中,这部分数据大部分都是读操作比较多,而写操作比较少,因此可以针对这部分数据根据特定的缓存失效策略机制来进行相应的缓存;缓冲层的缓存针对应用层是透明的,而且针对多应用也是透明的,因此缓冲层具有更大的弹性与灵活性。

服务层

服务主要是指平台的核心服务,核心服务分为业务共通服务以及平台共通服务,平台共通服务是指与业务无关且是平台最基础的服务,如任务调度、消息队列、邮件服务、图片处理、工作流引擎等;而业务共通服务指基于平台共通服务,而对于所有业务具有共通性的服务,如日志审核、操作回滚、数据安全、全文检索、权限角色等;服务层是对于平台运营、维护最核心的服务实现,是平台正常运行的基础。

存储层

存储主要分为两部分:分布式文件存储以及分布式的数据存储;由于是多应用的平台,因此随着平台的运营,会产生海量的业务数据以及资源文件,因此伴随着海量的数据而来的问题就是存储、检索、分析以及统计等问题;针对上述问题,361CRM平台采用了分布式的存储系统,基于Map-Reduce来进行相应的检索、分析以及统计,实现了对于海量数据的统一操作。

这种结构能做到真正的分布式网络计算,有效降低网络流量,减轻客户端负担,还能安全、方便地与互联网接口。另外公司员工或客户分布或行走于全国各地,通常都有移动办公需求。

REST 架构

REST是基于HTTP的,因此天生就有在互联网上穿透防火墙的能力,REST可以简单地认为它是轻量级的WebService,但是它具有自己的一些显著特点:所有的资源通过统一的接口访问(HTTP/HTTPSGET、POST、PUT、ELETE),而且接口比较统一,便于与第三方的集成;因为是基于HTTP/HTTPS的,因此可以将资源(响应)分为可缓存的和不可缓存的,以及采用浏览器的标准压缩方式,有效地提升网络效能。也可以在客户和资源之间插入不同的中间组件来提升性能和安全等,如,代理服务,缓存服务,网关服务等;因为是基于HTTP/HTTPS的资源请求,因此本次连接和下一次到服务器的连接之间没有状态。由于361CRM平台采用了REST架构,因此也就决定了361CRM平台天然就具备以下几方面的优势:

由于REST本身无状态的特性,361CRM平台天然就是分布式的,决定了后台通过根据业务量而弹性地增加服务器就可以实现平台计算能力的线性增加;所有的请求都是统一通过RESTAPI进行相应的资源与服务的请求,这样就能够保证系统提供的服务都是解耦的,极大的简化了系统,从而改善了系统的交互性和可重用性,同时也能够根据业务进行相应统一且透明的内存缓存;客户端浏览器能够轻松通过Ajax实现REST资源的异步调用处理,同时也可以有效地减少应用服务器地压力;通过提供开放的RESTAPI,能够轻松实现与第三方的集成。

平台服务

平台服务层的调用是通过RESTAPI进行的,由于REST的特点,通过在URI中添加资源路径以及版本信息,很方便地能够实现平台的平滑升级以及数据兼容性问题。

平台服务层实现的都是共通的服务,服务之间是独立的,而且是插件式的方式来实现的,平台选用了面向分布式计算的Erlang语言来实现的,因此保证了这些插件式的服务能够热拔插地部署,实现真正地不宕机地部署与更新。

平台服务层的插件式架构,决定了平台的无限扩展能力,能够根据不断变化地用户需求而进行平台的不断地在线迭代与更新,与用户的需求形成一个良性的循环。配置定制平台通过服务器(Apache)的自定义开发,实现了企业用户应用的透明隔离,因此平台具有面向不同企业用户根据不同需求进行个性化定制的能力。不同的企业用户,一般主要有几方面的自定义需求:业务对象、工作流程、报表、布局等,而CRM平台的平台框架就决定着能够很好地满足用户的自定义需求,主要分为以下几个方面:

由于用户使用的是文档数据库,有着松散的数据结构,因此用户根据需求,而可以随意自定义自己的业务对象;CRM平台后台的平台服务层,有相应的实时的工作流引擎,提供给用户强大的自定义工作流程功能;CRM平台有业内是丰富的报表模板,用户只需要根据自己的需要来选择即可,针对一些自定义的动态数据,还提供模板的再定义功能,能够很好地满足用户的报表需求;由于平台是应用隔离的,因此针对着页面的布局,可以很容易地实现个性化地定制;CRM平台的配置功能的强大,并不以损失平台应用的易用性为基础,CRM平台在操作上采用引导式操作,以及提供方便易用的在线帮助,大大地降低了系统使用的复杂度,使系统更加地人性化、简易化。

实时即时

361CRM平台的平台服务层与通常的应用服务不同,它是实时运行的服务,平台服务层有相应的任务调度机制,邮件服务、消息队列以及实时的工作流引擎等,这些服务都是实时运行的,因此当企业用户的业务对象或者业务流程发生变化时,通过这些平台服务就可以把即时的状态消息(通过邮件、短信或者其它的IM工具)推送给用户,让用户真正了解到业务的即时与实时的状态信息。

而通常的应用服务是静态的,只有当用户登录时,才会进行相应的业务状态的检查,这样就严重影响了业务处理的速度,对于即时性业务,就会带来很大的损失。

多级负载

平台是一个多租赁用户的在线SaaS系统,因此会给平台带来大量的高并发的请求,361CRM平台是一个多层次的结构,而且采用了REST架构,REST天生就是分布式,因此通过物理部署就可以实现高并发带的负载均衡。

四层负载在链路层解决来自互联网的并发请求压力,使用LVS+Heartbeat的主从双备的架构,保证不会出现单点故障;Web应用的大部分压力都来自于资源的请求,如图片,静态文件,样式表等文件的请求,服务器压力的70%都来自于这些资源的请求,因此对于这些静态资源的请求,通过静态资源缓冲层就能够很好解决这些请求对于后台造成的压力;经过实测,经过一段时间稳定运行之后,静态资源缓冲层能够命中前台请求的80%以上,有效地缓解了应用服务器的压力;七层负载层主要是做业务、以及资源的请求分流,把负载均衡到多台文件服务器以及应用服务器上;文件服务器与应用服务器是分布式的,通过Map-Reduce进行任务的拆分与结果的合并,充分利用多台服务器的并行计算能力,提升整体平台的运行性能;文件缓存采用多级缓存策略,解决命中率高的文件的频繁请求。而数据缓存则通过业务标签以及时效性策略进行数据的缓存,并且进行缓存的增量更新,有效地解决了对于后台的数据读写压力;分布式的存储系统有效地解决了海量数据的存储、检索、分析以及统计等问题。

可见,当传统的CRM系统转换为SaaS服务后,其架构方面还是发生了不少的变动的,也只有这样的变动,才使得CRM能够在SaaS平台上更好的为客户所服务。

(责任编辑:蒙遗善)

时间: 2024-09-05 20:42:04

浅谈SaaS在线CRM云平台架构的相关文章

八百客:市场上主流的在线“CRM云平台”为何物

所有人都在谈论"云平台",它到底是什么意思呢? 云服务平台可提供随需应用的客户关系管理与维护软件服务(On-demand CRM).Salesforce允许客户与独立软件供应商定制并整合其产品,同时建立他们各自所需的应用软件,对于用户而言,则可以避免购买硬件.开发软件等前期投资以及复杂的后台管理问题. 下面就当前市场上主要CRM云平台做相关的介绍,以期给客户选择自己的"CRM"云服务平台提供一些参考. 1. Salesforce CRM云平台 Salesforce是

百会浅谈SaaS型CRM该如何选择

随着PC套件的没落和SaaS(在线软件)CRM的蓬勃发展,企业在选择客户关系管理软件时SaaS型CRM已成为必然选择.SaaS型CRM帮助企业降低了IT成本.提高了工作效率.增强了市场竞争力. 国内信息化发展速度极不均衡,企业对SaaS的认识也存在很大差异.百会CRM运行九年,一直专注在SaaS领域.有丰富的行业经验,对企业需求有深入的了解,对企业选择SaaS型CRM给出了以下建议. 安全性不问题可忽视 虽然SaaS产品已经很普及了,但数据安全几乎还是企业选择SaaS CRM时最先考虑的问题,中

浅谈12306核心模型设计思路和架构设计

原文:浅谈12306核心模型设计思路和架构设计 春节期间,无意中看到一篇文章,文章中讲到12306的业务复杂度远远比淘宝天猫这种电商网站要复杂.后来自己想想,也确实如此.所以,很想挑战一下12306这个系统的核心领域模型的设计.一般的电商网站,购买都是基于商品的概念,每个商品有一定量的库存,用户的购买行为是针对商品的.当用户发起购买行为时,系统只需要生成订单并对用户要购买的商品减库存即可.但是,12306就不是那么简单了,具体复杂在哪里,我下面会进一步分析.   另外一个让我写这篇文章的原因,是

浅谈利用元数管理平台自动化管理指标的方法

目录: 一.企业指标管理的三个核心问题 二.解决指标管理的问题,需要从三个方面入手 三.通过元数据管理平台,实现指标管理在技术上的自动化 四.总结 本文讲的是浅谈利用元数管理平台自动化管理指标的方法,指标直接反映企业的生产运营状况,为企业决策提供数据支撑.随着国家大数据战略与企业数字化转型的驱动,指标的作用越来越重要,指标管理上的诸多痛点让全企业统一的指标管理成为普遍需求.但要想把指标管理好并不容易,不仅需要科学合理的方法,还需要技术的强力支撑. 指标作为一种业务元数据,与企业元数据有着千丝万缕

基于微服务和Docker容器技术的PaaS云平台架构设计

本文讲的是基于微服务和Docker容器技术的PaaS云平台架构设计[编者的话]在系统架构上,PaaS云平台主要分为微服务架构.Docker容器技术.DveOps三部分,这篇文章重点介绍微服务架构的实施. [3 天烧脑式容器存储网络训练营 | 深圳站]本次培训以容器存储和网络为主题,包括:Docker Plugin.Docker storage driver.Docker Volume Pulgin.Kubernetes Storage机制.容器网络实现原理和模型.Docker网络实现.网络插件.

基于MongoDB的高并发高可用政府云平台架构实践

3月12日下午在阿里巴巴西溪园区,举行了MongoDB杭州用户交流会.微软MSDN特邀讲师徐雷分享<基于MongoDB的政府云平台高并发高可用HA架构实践 >,从自身实践出发,讲述了政府云平台分层.技术栈选型.物理架构.API架构及DB数据库架构的设计思路和方法.   以下内容根据现场分享和演讲PPT整理而成.   学习MongoDB的重要性 目前,几乎所有国内外的互联网大公司都在用MongoDB,学习企业需要的技术很重要.   MongoDB优点   相比较关系型数据库而言,MongDB有两

缪鹏:浅谈教育培训行业第三方平台(二)

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 上月末,我在<浅谈教育培训行业第三方平台(一) >这篇博文中阐述了自己对教育培训行业第三方平台的一些粗浅的看法,很多朋友都对这个第三方平台比较感兴趣,毕竟教育培训行业作为一个朝阳行业,谁都想分得一杯羹.在上文中主要介绍了这个第三方平台为什么要出现及它的一些特点,接下来我想就各培训机构如何利用这个第三方平台谈谈自己的想法. 每一个培

盛大在线强化“云平台” 陈天桥的开放新模式

作为盛大集团的基础,盛大在线过去虽然一直担负所有业务的用户资源运营,但相对沉默,眼下它开始活跃起来.因为,互动娱乐大鳄盛大集团正试图开辟新疆土,先锋正是盛大在线(SDO). 上周,盛大在线效仿亚马逊推出了"云计算"平台.前日接受<第一财经日报>采访时,公司联席CEO Touc Luong表示,盛大在线正建立垂直搜索引擎体系,将加强用户数据的挖掘.分析,以推进广告业务. 这不是孤立的动作,而是盛大集团商业模式变动的棋子,陈天桥虽不喜欢马化腾,但他也在走向开放. SDO变身 搭

陈天桥开放新模式:盛大在线强化“云平台”

作为盛大集团的基础,盛大在线过去虽然一直担负所有业务的用户资源运营,但相对沉默,眼下它开始活跃起来.因为,互动娱乐大鳄盛大集团正试图开辟新疆土,先锋正是盛大在线(SDO). 上周,盛大在线效仿亚马逊推出了"云计算"平台.前日接受采访时,公司联席CEO Touc Luong表示,盛大在线正建立垂直搜索引擎体系,将加强用户数据的挖掘.分析,以推进广告业务. 这不是孤立的动作,而是盛大集团商业模式变动的棋子,陈天桥虽不喜欢马化腾,但他也在走向开放. SDO变身 搭建"公有云&quo