你是否也听说过没有代码比lowcode慢,比purecode慢?也有无代码用户反映,初始化页面需要十几秒才能加载……今天就来讲解一下无代码性能,一起来看看吧!无代码平台是否天生就存在性能缺陷?很多人认为no-code天生就是慢的,因为no-code会比purecode多执行一层分析,而这个过程只有1%左右的差距,几乎察觉不到。从另一个角度看,无代码有什么固有的性能优势吗?答案是肯定的。在交付大量项目的过程中,无代码平台统一封装了大量组件供不同项目复用。我们对性能较差的模块或组件进行重构,在提升其性能后,一次优化可以修复多个项目的性能问题。随着交付的项目越来越多,无代码平台的性能不断提升,项目交付性能稳定、可预测、持续提升。这些组件对应的业务功能如果采用传统的代码方式开发,很有可能会根据实际业务修改一个或多个通用代码模板ctrlc和ctrlv,甚至是从头编写。每一个新的创造或修改都像掷骰子。如果开发者是高手,那么性能可能会好,如果开发者是低手,那么性能可能会很差。都是无码的,为什么smardaten领先一步呢?我们来看看smardaten研发团队近期的一波优化操作来了解一下。React18架构升级1+1>21首先,react18本身增加了自动批处理、过渡更新、紧急更新、并发渲染等新特性,显着提升了页面构建、绘制、渲染、交互、更新等性能,和卸载。一方面,smardaten将架构升级为react18。另一方面,我们也修改了很多不合理的代码,重写了很多方法引用,重新对接了性能更好的API,抛弃了一些过时的第三方库。.这样一来,通过架构升级,smardaten的性能得到了极大的提升,也可以说达到了1+1>2的效果。自研diff算法组件刷新次数减少95%2react的diff算法用于区分组件是否刷新。比如我们在比较两种食物的时候,通常只会比较哪种味道更好,而之前的diff算法比较的是食物的味道、颜色、重量、是否健康等维度,需要反复比较几百次才能决定。这就是速度慢的原因。这次我们给出了更专业的自研diff算法,不仅加快了单次比对的速度,而且大大减少了比对次数。综合组件刷新次数减少约95%,极大提升了页面加载速度。查询引擎能力下沉,充分利用软硬件的计算能力。在analyzer模块中,smardaten将数据检索能力下沉到数据层,开启数据库的查询能力,分散性能压力。这相当于换了一个更合适的方案来计算后台数据,效率更高,扩展性更好。精简启动项,渲染逻辑细分页面初始化,瘦身提速4首先精简启动项,增加懒加载模式。本次优化删除了大量冗余无效的资源文件和引用关系,减少了首次加载的资源文件数量,提升了页面加载速度。就像我们爬山时少带东西,爬得更快更轻松。其次,从业务逻辑出发,将分析器、大屏、表单的查询接口拆分为独立的运行接口。渲染逻辑细分,杜绝无效数据查询和返回时间损失,界面响应速度自然更快。多级缓存,无感压缩挖掘每一个可能的改进5我们在本次优化中加入了多级缓存,可以有效减少前后端的请求次数。同时增加一个功能,就是页面跳转后,强行结束未完成的后台请求,为新的页面腾出资源。在接口层面,smardaten进一步减少交互,提升性能,例如:①如果接口返回值较大,启用压缩机制,提高传输速度;②如果查询接口请求一致,强制使用前端缓存数据...同一个大屏Analyzer数据查询请求,每5-6个请求合并为一个请求,多线程等技术用于后台提高查询效率,数据查询获取速度提升5-6倍。简化资产查询配置逻辑页面加载速度更快6原逻辑控件配置资产查询时,一次只能勾选一个字段。如果要检查多个字段,则必须多次配置。资产查询仍然是一个高频场景。以前的能力需要多次查询才能收集到足以检查一次的数据,这浪费了很多时间。我们提供了一种新的配置方案,现在所有需要的字段都可以在资产查询节点中找到。结果,接口查询的数量减少,页面加载速度更快。smardaten典型场景性能测评测评1复杂的表格计算200+组件,6个子表,24个逻辑控制入口。页面加载(最大内容绘制)3秒以内,单任务执行时间小于0.5秒。再看CPU资源消耗,瞬间CPU利用率只有30%,然后逐渐下降并趋于稳定。实测2个复杂大屏23个分析器,43个工作区,1个画布列表,逻辑控制10+入口。页面完全加载(最大内容绘制)小于4秒,单个任务执行时间小于0.5秒。CPU使用率瞬间达到40%的峰值,然后逐渐下降并趋于稳定。在性能方面没有灵丹妙药。事实上,在性能方面没有灵丹妙药。极致的性能通常意味着极高的成本。在商业中,大家更愿意在性能和成本之间寻求平衡,即性价比。传统代码项目的性能类似于木桶原理,取决于最短的木板。无代码恰恰相反。随着各行业项目落地,无代码平台将不断优化。性能水平取决于对性能要求最高的行业应用,每一次优化都意味着所有项目性能水平的提升。无疑是性价比最高的选择。
