web网站开发证书广州网站建设方案优化
一:多租户
表示每个租户之间数据隔离互不影响,互不可见。通常一个租户表示一个系统应用(类似于appid的作用)或者一家公司。
- 通过数据库级别进行隔离,每个租户对应一个数据库;
- 通过表记录级别进行隔离,在表中增加一个租户id字段(tenant_id)进行数据区分,也就是SAAS模式。
二:使用租户
在流程部署和启动时都可以指定租户id,当没有指定时表示所有租户都可以使用。用户 > 组 > 租户。
- ACT_RE_DEPLOYMENT、ACT_RE_PROCDEF、ACT_RE_MODEL
- ACT_RU_EXECUTION、ACT_RU_TASK、ACT_RU_JOB
- ACT_HI_PROCINST、ACT_HI_ACTINST、ACT_HI_TASKINST
String tenantId = "app1";
repositoryService.createDeployment().addClasspathResource("processes/LeaveProcess.bpmn").name("请假流程").tenantId(tenantId).deploy();
ProcessInstance processInstance = runtimeService.startProcessInstanceByKeyAndTenantId("LeaveProcess", tenantId);Task userTask = taskService.createTaskQuery().processInstanceId(processInstance.getId()).taskTenantId(tenantId).singleResult();