导读:本文是阿里云RPA(机器人流程自动化)干货系列之四,详细介绍了阿里云RPA产品架构和技术架构(包括客户端和服务端)等。
一、产品架构简介
阿里云RPA产品和软件采用主流C/S(Client/Server)架构模式,前端客户端采用.net平台,基于Windows系统具有自主研发的SDK及各项功能,后端服务端采用Linux(CentOS)操作系统,提供各类后台服务和组件,产品结构图如下所示:
其中
Studio:相当于IDE(集成开发环境),在这里面可以通过可视化开发模式和编码开发模式基于客户的流程开发相应的应用程序,并可以将这个应用发布到企业应用市场上面,供同一个企业的其他人员使用。同时,提供了其他一些基础功能,如应用的本地化导入和导出、调试、版本管理等;
有人值守机器人:在企业应用市场里面获取开发好的应用,并通过管理员审批之后就可以使用这个应用,采用手动触发的方式,让有人值守机器人执行获取的应用即可;
无人值守机器人:在控制台通过定时触发的方式,设置好执行时间、执行次数、循环规则等各类参数,到了一定时间就可以自动执行,无需人工干预;
服务型机器人:采用API接口的方式,通过API接口可以获取机器人执行的结果数据、中间状态等信息,同时也可以通过API接口远程调用机器人执行相应的程序。
控制台:控制台是后台服务的前台展现,提供了客户端监控、计划任务管理、用户与权限管理、企业应用市场管理、授权许可管理等功能。
二、技术架构简介
从技术上说,阿里云RPA分为客户端和服务端,如下图所示:
客户端基于.net平台,采用python语言编写SDK封装函数及编写应用程序,内置Chrome浏览器,提供了代码调试和数据视图等功能。
服务端基于Linux(CentOS)操作系统,正式服务端的部署基于kubernetes分布式集群部署模式,可以提供高可用性和主从备份。同时,如上图所示服务端提供了mysql、redis、nginx等7个组件,保证了阿里云RPA后台服务的正常运行,客户端和服务端基于Websocket通信,账号安全验证、权限管理、代码存储等都在服务端里面实现,确保了整个阿里云RPA产品和技术的安全性和可靠性。
目前,阿里云RPA团队还在不断调整产品和技术架构,以适应日新月异、高歌猛进的RPA行业发展趋势,未来会和更多的第三方系统和软件集成,同时也在人工智能、大数据分析等方面探索新的产品和商业模式。