Bigcapital智能云和开源会计软件
Bigcapital 是一款适用于中小型企业的简单、智能的开源会计和库存软件,Bigcapital 将所有企业财务保持在正确的位置并自动化会计流程,为企业提供强大而智能的财务报表和报告,以帮助做出决策。
Bigcapital 采用多租户架构构建,允许多个组织使用相同的软件,同时保持他们的数据彼此分离。这意味着每个使用该软件的组织都有自己的数据库,该数据库与其他组织的数据库隔离开来。同时,所有租户之间都有一个主数据库或系统数据库。
- 每个注册该软件的组织都会获得一个唯一标识符(租户 ID)。当组织登录时,服务器从登录请求中检索组织的租户 ID,并使用它来识别组织的数据库。
- 组织用户执行的所有数据库操作都是在他们自己的数据库上执行的。
- 服务器实例充当客户端应用程序和数据库之间的中间件,它根据租户 ID 将所有请求路由到适当的数据库。
组件:
- Nginx 代理:代理服务器被配置为将以
/api
开头的请求重定向到服务器的动态数据(API端点),并将所有其他请求重定向到单页应用程序的静态资产。 - 系统数据库:系统数据库与租户数据库不同,租户数据库用于存储每个单独租户的数据,并由软件本身用来管理和协调不同的租户及其数据库。
- 租户数据库:Mysql租户数据库,该数据库用于存储与该组织相关的所有数据,并在用户注册并设置帐户后由服务器自动创建和管理。
- Web 应用程序:React SPA 静态资产与服务器实例通信。服务器:基于 NodeJS 的有状态服务器实例(我们致力于使其无状态)以提供 API 端点的动态数据。
- MongoDB:MongoDB 用于存储议程作业元数据。
- 缓存存储:Redis 用于存储所有租户之间相互缓存的数据。
评论