热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

关于PaaS平台开发的五个大坑

但凡做平台,总是会遇到一些坑。


但凡做平台,总是会遇到一些坑。


尤其始对刚刚开始做PaaS平台的厂商而言,更是如此,肯定会遇到一些大坑。


当记者对纷享销客的平台研发团队进行深入采访时,年轻帅气的产品和技术小哥哥们很坦诚但很执着地谈起他们这几年来遇到的大坑。


不过他们没有抱怨这些曾让人痛不欲生的大坑,反而对此充满感谢。他们相信,该过的坑一定要过。这些难过的大坑,现已成为纷享销客PaaS平台的最大优势。


“军用”与“民用”


给记者的感受,这是纷享销客平台团队遇到的第一个大坑。


这是一个意识上的大坑,是一个理念上的大坑,是一个关乎初心、关乎出发点的大坑。


纷享平台小哥们把当前的PaaS平台大体分成两大类。一类是为技术人员而生、为技术人员研发使用的平台,他们形象的称为“军用”平台;一类是为业务人员(客户自己的业务团队,厂商或伙伴的顾问等)而生、为业务人员创新业务使用的产品(对,是产品,而非平台),他们称为“民用”的产品。


纷享销客的平台团队发现,在当前市场上,90%的平台属于“军用”平台。很多厂商尤其是SaaS厂商,甚至是为平台而平台,为VC为资本故事而平台。


这种初心做出来的平台,往往是请了全国乃至全球知名的技术大牛,用了最完整最先进的技术框架,找了各种最新最酷的开源软件,最后搞出来一个看似大而全的PaaS平台。


作为技术人员,小哥们发现,这种平台最大的特点是,不实用。即使是技术人员,用起来也非常费劲,更不用提业务人员。


从决定做平台的第一刻起,纷享产品与技术团队就决心要做一个“民用”产品,而不是做一个难以上手的“军用平台”。


小哥们告诉记者,他们的初心是,打造从“军用”到“民用”的、不再仅仅服务于技术人员、做业务人员能懂的PaaS,并且要打造平台历史上少有的“所见即所得”的极致用户体验。


自定义对象与拖拽式开发,传统开发过程的产品性解耦


通过拖拽和配置,就能快速实现用户的个性化业务需求。


这是所有PaaS平台追求的一个关键目标。但纷享平台团队的技术小哥认为,这也是平台研发的一个大坑。做到这点的技术路线有千千万条,但真正实现的、真正能应用却没有几个。


在经历了多种深度的尝试和探索之后,纷享平台团队采用了“自定义对象”技术来实现这一理想。


技术小哥们向记者介绍,纷享PaaS平台自定义对象是一种可视化的建立数据模型和业务模型的定制化开发模式。它的目标是把一切可产品化的、业务场景所需要的技术能力产品化。这些产品化之后的“自定义对象”,可以很轻松地被业务人员所识别、所理解,并且所使用。通过简单地对“自定义对象”进行拖拽和配置,就可以快速实现个性化业务。


例如,用户可以将增加新门店、客户拜访、窜货管理、投标报价等各种业务场景作为自定义对象。这些场景被抽象以后,就可以作为通用的“自定义对象”供其他业务人员开发新系统使用。


相对平台中常用的组件,纷享平台的“自定义对象”和其有很大不同。主要的不同点在于:第一,纷享自定义对象是一个完整的业务处理,包括了业务逻辑、业务数据封装。第二,纷享平台本身有丰富的预设字段及业务组件,比如支付组件、签到组件。通常很多平台都需要做很大开发工作量才能支持的能力,我们通过对业务逻辑和支付、定位等能力的封装,让客户即拖即用。第三,支持在业务对象间创建多种关系,如查找关联、主子明细等。第四,业务对象支持丰富灵活的权限规则,既支持数据隔离也支持数据共享;第五,对象数据支持企业级搜索;第六,支持图形化的UI设计,并且多终端支持,包括Web、iOS、Android。


总之,自定义业务对象是纷享平台的基础构建模型。它可以把传统高门槛开发过程,拆分成可拼凑的业务组件,通过可视化配置,实现个性化开发。


可视化流程设计器与流程引擎,所见即所得


流程是业务系统中的重要内容,流程设计是业务系统研发的关键节点。


如何进行快速高效、灵活多样的流程设计,是PaaS平台研发的一个常见大坑。


工作流、业务流、审批流、信息流,一个企业包括各种各样的流程。很多人认为,解决这些流程设计,一个流程引擎就够了!


不过,纷享平台团队通过对不同业务场景的分析和深刻思考,对于一个希望业务人员就能用的平台而言,只有一个流程引擎还远远不够。


纷享平台团队向记者介绍,纷享平台将流程引擎向客户业务的方向更进了一大步。虽然都是通过一个引擎, 但平台展现给客户的是截然不同的三种甚至更多业务场景支撑能力。对于办公流程、业务流程和审批流程,纷享平台有专门的流程支持模式。


并且,纷享平台的流程引擎不仅是一种企业级业务流程的建模工具,而且还是流程分析平台。它不仅能支持图形化流程建模,还能支持业务流程数据分析。纷享的业务流程管理不仅仅是一个流程设计工具,它是一整套企业梳理业务流程、建模、多方参与且自动化执行,持续监控执行过程,并不断分析改进的管理过程和方法。


总之,纷享平台的流程管理是“所见即所得”。它通过可视化的流程设计器,可帮助企业把PPT上的流程,原封不动的搬到系统中,不需要再进行复杂的系统设计,即能在系统中实现自己所想要的运营流程。企业的员工也不再需要去理解需要在什么时间点什么按钮,而是通过业务流程让系统在合适的时间自动处理合适的事情即可。


自定义函数与低代码开发


无代码开发是很多平台人的梦想,也是很多平台人爬过的典型大坑。


纷享平台团队在这件事情上,倒是想得很明白。首先,他们认为,所有业务场景都能完全地依靠无代码开发实现,这是不可能的。其次,他们进一步认为,低代码开发是可行方案。但要想尽办法,尽可能地实现超低代码的开发。也即,能不用代码就尽量不用代码;能少用代码就尽量少用代码。最后,他们将业务场景进行了分类,有些场景可以完全依靠无代码开发袜,而有些场景则采用低代码开发。


在经历了各种试错、补坑之后,纷享平台团队最终采用“自定义函数”来实现低代码开发。


据纷享平台团队的小哥介绍,纷享平台的自定义函数是一种用户自定义业务逻辑的低代码开发方式。它通过预设丰富的API和函数,通过指引式交互,可低门槛实现业务逻辑的二次开发。


例如,对于销售返利,用户可以自定义一个根据业务规则来制订的销售返利函数,将每个销售订单应得到的返利实时计算出来。


有了自定义函数,纷享平台可以实现一些带有算法性质的业务应用,而不仅仅是流程性的业务应用。


据纷享平台团队的小哥介绍,纷享平台自定义函数有三个典型特点。第一,提供多种场景的业务逻辑定制能力。例如,流程节点后动作(流程节点执行的附加业务逻辑),自定义按钮响应逻辑,预定义按钮的前置后置动作逻辑(可以在出厂预置的业务逻辑的前后增加新的用户自定义的业务逻辑)等。第二,创建新的定制化语法,拥有丰富的开放API。例如,有的业务规则会来自于ERP、HR等其他相关系统,纷享预制了和很多系统的API接口。第三,支持静态语法检查,安全验证,在线的函数编辑器,支持语法高亮、自动语法提示等。


有了自定义函数,纷享平台可以在业务对象上进行业务组件创新,支持上下游企业间的业务互联。最重要的是,它实现了“通过调整配置实现的定制化能力”和“通过函数实现的轻量级二次开发能力”的有机统一。


BI引擎与数据分析


为业务运营提供更好的数据分析,是所有业务系统应该具备的一大功能。


不过,从数据分析应用的发展历程可以看出,要做到这一点并非易事。否则,就不会诞生一个专门的BI应用产业,就不会有那么多专门研发BI而成巨头的软件公司。


对于PaaS平台而言,提供数据分析、报表工具是个必要部分。但纷享平台团队的技术小哥告诉记者,具体实现过程,也是有大坑所在。


在经历了众多考察与实践之后,纷享PaaS平台的数据分析采用了单独的BI引擎,而不是作为平台的一个组成部分。


纷享BI引擎是一种面向用户的自助式敏捷数据分析工具。由于采用独立引擎,因此它有非常非常优秀的特点。例如,它可根据对象间关系自动生成报表可用模块,用户可通过拖拽点选方式进行自助式的数据统计分析;具备丰富的图形化展现形式,配合独有的预聚合机制,并支持逐级下钻、查看明细;支持自定义数据看板,不同角色按需定制个性化DashBoard;支持报表订阅,日报、周报、月报定时自动推送;深度融合业务数据权限,保障报表中的数据安全性;基于业务最佳实践预置了丰富的图表和数据看板,无特殊需求可开箱即用。当然,它还有良好的移动端适配,能支持各种移动终端,让用户可以随时随地掌控数据最新变化。


尤其是它可以按主题对数据进行预聚合,可同时查看多项统计指标。例如,在员工主题下,可以在同一张统计图内同时查看到员工的整体销售情况,例如负责的线索数、客户数、联系人数、商机数、商机金额、订单数、订单金额、回款数、回款金额、拜访数、销售记录数……


和独立BI厂商提供的数据分析工具不一样,纷享BI引擎与纷享PaaS平台、业务应用有着天然的耦合度。它们之间无须再二次开发,再做接口,开箱即用。并且,基于PaaS定制的个性化业务,也天然支持BI分析


互联网技术与企业应用


面对纷享平台团队的技术小哥们,记者的感受是,这个经历过互联网洗礼的团队,正在和企业应用开始深度融合。


他们正在纷享PaaS平台中引入互联网级技术,让PaaS平台插上互联网化的翅膀。例如,他们利用互联网的搜索引擎技术,支撑数据模糊查重与清洗等传统软件计算难以支持的业务场景;他们正结合IM和Feeds流引擎,将业务融入社交场景,让业务更生动、互动更高效更积极。


纷享平台技术小哥们认为,互联网技术和企业应用的深度融合,是业务系统发展的必然。他们也预言,这个融合过程也必将是大坑不断。但小哥们相信,纷享PaaS平台将一如继往,脚踏实地,为民用平台树立典型,为PaaS平台撑起标杆。


640?wx_fmt=jpeg


推荐阅读
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • PDF内容编辑的两种小方法,你知道怎么操作吗?
    本文介绍了两种PDF内容编辑的方法:迅捷PDF编辑器和Adobe Acrobat DC。使用迅捷PDF编辑器,用户可以通过选择需要更改的文字内容并设置字体形式、大小和颜色来编辑PDF文件。而使用Adobe Acrobat DC,则可以通过在软件中点击编辑来编辑PDF文件。PDF文件的编辑可以帮助办公人员进行文件内容的修改和定制。 ... [详细]
  • 腾讯安全平台部招聘安全工程师和数据分析工程师
    腾讯安全平台部正在招聘安全工程师和数据分析工程师。安全工程师负责安全问题和安全事件的跟踪和分析,提供安全测试技术支持;数据分析工程师负责安全产品相关系统数据统计和分析挖掘,通过用户行为数据建模为业务决策提供参考。招聘要求包括熟悉渗透测试和常见安全工具原理,精通Web漏洞,熟练使用多门编程语言等。有相关工作经验和在安全站点发表作品的候选人优先考虑。 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • 本文介绍了腾讯最近开源的BERT推理模型TurboTransformers,该模型在推理速度上比PyTorch快1~4倍。TurboTransformers采用了分层设计的思想,通过简化问题和加速开发,实现了快速推理能力。同时,文章还探讨了PyTorch在中间层延迟和深度神经网络中存在的问题,并提出了合并计算的解决方案。 ... [详细]
  • 本文介绍了一个免费的asp.net控件,该控件具备数据显示、录入、更新、删除等功能。它比datagrid更易用、更实用,同时具备多种功能,例如属性设置、数据排序、字段类型格式化显示、密码字段支持、图像字段上传和生成缩略图等。此外,它还提供了数据验证、日期选择器、数字选择器等功能,以及防止注入攻击、非本页提交和自动分页技术等安全性和性能优化功能。最后,该控件还支持字段值合计和数据导出功能。总之,该控件功能强大且免费,适用于asp.net开发。 ... [详细]
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
  • 使用chrome编辑器实现网页截图功能的方法
    本文介绍了在chrome浏览器中使用编辑器实现网页截图功能的方法。通过在地址栏中输入特定命令,打开控制台并调用命令面板,用户可以方便地进行网页截图操作。 ... [详细]
author-avatar
MK小绿_136
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有