简单来讲,软件开发框架可以理解为我们盖楼房时,用梁+柱子+承重墙做起来的钢筋混凝土结构框架。而实现的软件功能,也就像在这个快速开发框架结构中所要实现的不同类型、功能的房子,比如停车场、商场、酒店等;

开源字节已经是一套成熟的快速开发框架,并在不断升级更新;

开源字节快速开发能提高企业的竞争能力,包括降低开发成本、提高产品质量、改善客户满意程度、控制开发进度等。

整体架构

开源字节系统白皮书_spring cloud

底层架构

  • 以 Spring Boot 2 为基础,Maven 多项目依赖,模块分项目,松耦合,方便模块升级、增减模块。
  • 数据库自动创建,第一次运行程序,应用会自动初始化建表、执行初始化数据。
  • 权限授权模块灵活,支持 OAuth2.0 单点登录,简单 yml 配置即可,不用再写很多的 xml 配置文件。
  • 支持多数据源,简单 xml 配置即可实现,为了安全性,不提供界面维护数据源。
  • 支持分布式事务(TCC、消息最终一致性,混合使用、单独使用都支持),提供监控界面、人工补偿操作。
  • 缓存监控,J2Cache 二级缓存,支持快速切换为 Redis 缓存。
  • 服务器监控,查看 CPU,内存,JVM,磁盘信息等。方便运维人员分析系统负载情况。
  • 支持 Spring Cloud 架构,分布式,微服务,最小化内核,统一配置中心,统一授权认证中心。
  • 丰富的内置功能:用户权限、数据权限、系统管理、文件系统。

安全方面

  • 支持数据库密码及其它安全密钥自动加密配置。
  • 所有请求参数获取,均通过 XSS 跨站脚本过滤方法。
  • 乐观锁简单实现,必要情况下使用,提高数据安全性。
  • 身份认证:
  • 登录账号密码可加密后再提交后台。
  • 同账号是否多会话登录。

用户界面

  • 基于 Element-UI 平面化界面设计,精细,更加美观、高端、大气、上档次。
  • 无刷新设计,除了进入功能页面和新页面,其它情况下全部采用 Ajax 交互,优化体验和性能。
  • 支持一键换肤,系统右上角设置即可快速切换整个UI的风格,不仅仅是色调和样式,布局也可改变。支持自定义扩展项目独有的主题样式风格。
  • 优化用户功能操作,大众思维模式,功能清晰,更加贴切和友好。
  • 国际化的支持,页面标签国际化,字典菜单国际化,数据国际化。

前端开发

  • 采用当前比较流行的 Vue,它的优点很多,大家可自行查阅官网介绍。
  • 封装通用组件,实现基本表单控件、树选择,列表选择,文件上传,等等,总之是简化开发。
  • 数据模板组件封装,自动完成分页、排序、列宽、多表头、子表、编辑表、流程发起等。
  • 支持前后分离应用,方便与手机 API 接口对接,Token 方式授权。

功能及组件

  • 工具类 Utils 封装优化,应有尽有,包分类层次分明,独立工具类项目。
  • 在线任务调度,界面化管理,可新增,编辑、删除、暂停、恢复、运行一次等操作,支持独立数据源,分布式作业调度,调度日志监控分析查询。
  • 代码生成工具操作简化及优化,支持多数据源。
  • 在线查询在线人员,强踢在线账号。

我们的优势

  • 整体架构清晰、稳定技术先进、源代码书写规范、经典技术会的人多、易于维护、易于扩展、安全稳定。