Administrator
发布于 2025-06-21 / 16 阅读
0

GrowthStore产品

GrowthStore(又名StoreX)是一个基于Rust体系的成长型的企业级后台服务的开发框架。它提供了“约定大于配置,配置即服务”的开发理念,采用统一的约定、灵活的配置来实现绝大多数的业务,通过灵活高效的扩展体系,来满足各种特殊化的业务需求,快速应对企业的业务成长需要,为企业级后端开发注入了新鲜的血液。

  • 技术优势

    • 高性能:采用Rust开发,提供超过0.9倍于C语言的运行效率;先进的异步处理技术,无GC/无内存浪费;在普通Intel Core i5(10代)的家用电脑上,实现每秒超过500个并发的业务请求;支持多种横向扩展机制。

    • 安全性:语言级的内存安全性,最大限度的减少漏洞的产生;内置基于JWT的认证与授权体系;多种敏感数据保护机制,如AES/RSA/模式替换等。

    • 可靠性:正确的功能及业务实现,为GrowthStore带来更高的业务正确性保障;Rust的内存安全性,以及无垃圾回收的特性,造就了GrowthStore的更高的可靠性;更少的系统资源使用率,以及更高效的运行效率,以及更多的可靠性支撑。

    • 灵活性:脚本语言扩展能力,目前提供了基于Rhai的脚本语言的扩展能力,可以使用脚本语言来完成一些业务功能的快速实现;提供前置/后置的Hook机制,灵活快速地实现的业务需求切面;基于MQTT、Kafka等响应式队列的事件驱动系统;提供插件开发机制,并开放源代码。

  • 开发理念

    • 约定大于配置、配置即服务:GrowthStore将企业服务编录,然后使用配置的方式对这些业务进行编排,从而形成新的服务。把常见的技术能力细粒度化,通过配置管理能力将这些配置组合起来,进而形成对应的业务实现。

    • 核心约定:InvokeURI是GrowthStore中的核心约定形式。使用Schema表示核心能力或插件能力,namespace表示关联的配置集,path表示集合或配置名称,fragment表示自定义对象名称。内部或插件实现的功能,特别是需要被其他地方使用的功能,都应使用InvokeURI调用。

    • 配置是关键:GrowthStore通过插件形式整合各种功能,对外暴露RESTful接口,涉及能力提供者及提供过程的处理通过配置达到,GrowthStore对这些配置进行管理,以文件形式存在,便于高效管理和重复使用。

    • 配置即服务:现代业务系统开发中,GrowthStore通过配置实现服务组合调用目的,将配置服务化暴露,让其他系统调用相应服务,服务过程中通过解析配置调整改变行为,达到预期功能。

    • 配置即效率:GrowthStore将所有能力可配置化,开发过程中对原子能力提供有更高抽象要求,使能力尽可能被重复使用,使用配置实现业务能力,实现高效率开发目标。

  • 技术特点

    • 开箱即用的BaaS:GrowthStore是一套开箱即用的BaaS(后端即服务),可解决80%后端开发问题,让项目组聚焦前端及业务端实现,提升业务开发/定制能力,提供ORM为基础的运行环境和开发扩展环境。

    • 使用Rust开发:Rust是现代编程语言,采用所有权及生命周期方式实现对象创建销毁过程,高效可靠内存安全性,超强兼容性,使GrowthStore在Linux、Windows、macOS上完美运行兼容。

    • 高效的异步运行时:采用Rust生态中著名的异步运行时Tokio,利用异步IO和事件驱动模型,轻松处理大量并发连接,单线程或少量线程高效处理成千上万并发连接,非阻塞IO和异步编程避免不必要的线程切换和上下文切换,提高性能。

    • 扩展语言集成:已集成Rhai脚本语言引擎,基于Rust且语法类似,GrowthStore采用InvokeURI机制为Rhai提供访问服务能力方法,提供JSON、参数等访问接口,方便脚本使用,计划实现对TypeScript的集成。