# 分布式缓存
FlowPortal BPM的分布式缓存支持3种主流产品:Redis、NCache和AzureCosmos。
集群时根据需要选择其中一种,每台服务器指向同一配置,即可完成集群。
# Redis
安装Redis环境
使用docker部署,按照下面的步骤依次运行命令:
1、docker pull redis
2、docker run --name my-redis -d -p 6379:6379 redis
3、若想设置密码:打开redis客户端:docker exec -it my-redis redis-cli
获取密码:config get requirepass
设置密码:config set requirepass 你的密码
认证密码:AUTH 你的密码
BPM配置
放出Provider、配置Redis连接和实例名称,InstanceName可自定,集群服务器之间保持一致,如图:
验证缓存集群是否成功
1、使用命令验证分布式缓存:dcache set key value
在A服务器设置缓存:dcache set a 100,在B服务器查看缓存:dcache get a,B服务器能正确获取A服务器设置的缓存代表成功。
2、分布式本地缓存验证:
在B服务器打开流程(让系统缓存下流程定义)然后在A服务器修改流程并保存,在B服务器再次打开流程,看到B服务的流程也变了
# NCache
安装Redis环境
使用docker部署,按照下面的步骤依次运行命令:
1、docker pull alachisoft/ncache:latest
2、docker run -d --name ncache -p 8251:8251 alachisoft/ncache
3、通过地址<server-ip>:8251浏览管理中心,根据提示进行注册(注册需要key,可以使用公司邮箱申请一个月免费使用的key)。
4、注册成功后,我们在Clustered Caches模块看到一个名称为demoCache的缓存及其Servers的ip地址。
BPM配置
放出Provider、CacheName为步骤4中的demoCache,配置Server根目录下client.ncconf文件:cache节点的id为步骤4中的demoCache,ncache-server节点的local-server-ip为BPM服务器的ip,
server节点的name为demoCache服务器的ip,CacheName可自定,集群服务器之间保持一致,如图:
注意:Server根目录下的config.ncconf文件的cache-config节点的cache-name若也设置为步骤4中的demoCache,此时使用的是本地缓存。
验证缓存集群是否成功
1、使用命令验证分布式缓存:dcache set key value
在A服务器设置缓存:dcache set a 100,在B服务器查看缓存:dcache get a,B服务器能正确获取A服务器设置的缓存代表成功。
2、分布式本地缓存验证:在B服务器打开流程(让系统缓存下流程定义)然后在A服务器修改流程并保存,在B服务器再次打开流程,看到B服务的流程也变了
# AzureCosmos
创建Azure Cosmos DB
1、登录Azure账户,创建Azure Cosmos DB 帐户。
2、在设置→密钥中,获取连接字符串,如图:
BPM配置
放出Provider,配置CosmosConnectionString为前面步骤2中获取的连接字符串,ContainerName和DatabaseName名称可自定,集群服务器之间保持一致,
设置后系统会在AzureCosmos中自动创建,如图:
验证缓存集群是否成功
1、使用命令验证分布式缓存:dcache set key value
在A服务器设置缓存:dcache set a 100,在B服务器查看缓存:dcache get a,B服务器能正确获取A服务器设置的缓存代表成功。
2、分布式本地缓存验证:
在B服务器打开流程(让系统缓存下流程定义)然后在A服务器修改流程并保存,在B服务器再次打开流程,看到B服务的流程也变了