我正在安装一个WSO2 EI双节点集群,我对必须创建的数据库的数量有一些疑问。
我将尽可能地解释我的情况:我使用的是WSO2 EI 6.5.0。
我有两个节点集群。每个节点都包含ESB和MB配置文件。我将在Microsoft 集群DB上创建所需的数据库。
所以我有这样的情况:
节点1: ESB和MB
节点2: ESB和MB
阅读正式文件:
集群WSO2 ESB配置文件: https://docs.wso2.com/display/EI650/Clustered+Deployment
集群WSO2 MB配置文件: https://docs.wso2.com/display/EI650/Clustering+the+Message+Broker+Profile
我可以找到ESB和MB配置文件所需的MB信息。特别是ESB配置文件需要创建以下4个数据库:
MB配置文件需要以下5个数据库:
因此,看起来前4个数据库在ESB和MB配置文件之间是相同的,MB配置文件使用了一个名为MB_DB的成瘾数据库。
在这种情况下(两个节点集群都包含、ESB、和MB配置文件),我需要创建多少数据库?
我最初的想法是5个数据库,因为我认为前4个数据库是在 ESB 和 MB 配置文件之间共享的,但现在我有以下疑问:理论上(如果我做了错误的断言请更正),和MB都可以使用相同的用户数据库和注册表,但是检查默认的H2设置:
中的一个数据库
因此,从理论上讲,这意味着最好不要在配置文件/产品之间混合数据库。
那我到底该怎么办?我要创建多少个数据库和什么数据库?
我现在在想,也许我必须使用前缀完整地分离ESB和MB配置文件,如下所示:
ESB配置文件数据库:我必须创建以下4个数据库:
MB概要数据库:我必须创建这5个数据库;
这会是一个好的解决办法吗?但以这种方式,我将拥有完全独立的dbs,而不是为用户和注册表共享信息。
在像我这样的两个节点集群的情况下,最佳实践是什么?
谢谢
发布于 2019-11-27 02:09:12
正如您所说,保留单独的数据库是很好的。通常所做的是创建一个前缀的数据库,正如您所提到的。
但是,假设只有一组用户同时访问ESB和MB,那么您可以继续从这两个产品中指定一个userdb (这意味着在两个节点中运行的所有四个实例)。
关于注册表数据库,假设您有一个需要从ESB和MB访问的配置文件,那么您必须共享一个registry_db (还必须遵循正确的注册表安装/查看相应的文档)。如果没有这种情况,最好保留单独的数据库。
底线:只要ESB和MB内部没有任何可共享的东西,最好保持一组单独的数据库。您只需要遵循集群,并且只需要在同一产品的实例之间共享数据库。
干杯!
https://stackoverflow.com/questions/59048929
复制相似问题