У меня есть сеть из нескольких машин, и я использую cadence go client.
Машина 1 должна регистрировать действия.
// Machine 1 registering activities
func sampleActivity(ctx context.Context) (string, error) {
logger := activity.GetLogger(ctx)
logger.Info("separate machines are handling this")
return "Activity machine succeeded"
}
func main() {
activity.RegisterWithOptions(sampleActivity, RegisterOptions{Name: "Machine1Activity"})
}
Машина 2 должна регистрировать рабочие процессы ,
// Machine 2 registering workflows
func sample_workflow(ctx workflow.Context, name string) (string, error) {
...
err := workflow.ExecuteActivity(ctx, "Machine1Activity")
...
}
func main() {
workflow.RegisterWithOptions(sampleWorkflow, "Machine2Workflow")
}
Для запуска рабочего процесса необходимо запустить компьютер 3.
// Machine 3 starting the workflow
// Prepare options and ctx
client.StartWorkflow(ctx, options, "Machine2Workflow", "Machine1Activity")
Служба с каденцией находится на другом компьютере.
Как это сделать с go клиент? Также регистр только сохраняет рабочий процесс / деятельность в памяти? Как я могу отправить их sh в службу каденции, чтобы другие машины также могли их найти.