【问题标题】:Connect Cadence to Azure Cosmo Cassandra API (Cadence workflow)将 Cadence 连接到 Azure Cosmo Cassandra API(Cadence 工作流)
【发布时间】:2020-11-29 16:36:38
【问题描述】:

我正在使用 docker run -e CASSANDRA_SEEDS=10.x.x.x e ubercadence/server: 在外部运行 cassandra 运行 cadence。并成功运行。

Azure cosmos 表示,任何运行在 Cassandra 上的系统都可以使用提供的 cosmos cassandra APi,通过修改客户端连接创建代码来使用 Azure cosmos,例如:GO app 示例代码:

func GetSession(cosmosCassandraContactPoint, cosmosCassandraPort, cosmosCassandraUser, cosmosCassandraPassword 字符串) *gocql.Session { clusterConfig := gocql.NewCluster(cosmosCassandraContactPoint) 端口,错误:= strconv.Atoi(cosmosCassandraPort)

clusterConfig.Authenticator = gocql.PasswordAuthenticator{Username: cosmosCassandraUser, Password: cosmosCassandraPassword}
clusterConfig.Port = port
clusterConfig.SslOpts = &gocql.SslOptions{Config: &tls.Config{MinVersion: tls.VersionTLS12}}
clusterConfig.ProtoVersion = 4

session, err := clusterConfig.CreateSession()
...
return session

} 从我的角度来看,我可以将外部 cassandra 的 cqlsh(cadence 用于持久化)连接到 azure cosmos,并可以在 azure cosmo db 中创建 KeySpace、表。但是,当我运行 Cadence 服务器时,所有新表仍然在本地 cassandra 本身(而不是 Axure cosmos)上创建,可能是,cadence 仅连接到 cassandra。

所以下面基本上分享了2个问题:

1.由于cadence是用GO编写的,我们可以修改源代码来建立与AzureCosmoDb的连接吗?或

或者我们可以传递 cosmocassandra 的主机、端口、用户名、密码,同时分别运行 cassandra 和 cadence (docker run -e CASSANDRA_SEEDS=10.x.x.x e ubercadence/server:) cosmosCassandraContactPoint : xyz.cassandra.cosmos.azure.com cosmosCassandraPort : 10350 cosmosCassandraUser : xyz cosmosCassandraPassword : xyz

【问题讨论】:

    标签: cadence-workflow temporal-workflow


    【解决方案1】:

    我正在积极支持其他 NoSQL 数据库:https://github.com/uber/cadence/issues/3514 完成后使用 Azure cosmos 会更容易。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-23
      • 2021-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多