Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion iii/multi-worker-orchestration/workers/client/src/worker.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@

import { registerWorker } from "iii-sdk";
import { Logger } from "@iii-dev/helpers/observability";
const iii = registerWorker(process.env.III_URL ?? "ws://localhost:49134");
const iii = registerWorker(process.env.III_URL ?? "ws://localhost:49134", {
workerName: "client",
});
const logger = new Logger();

// All workers behave as a single application — scoped state set
Expand Down
14 changes: 12 additions & 2 deletions iii/multi-worker-orchestration/workers/compute-worker/src/main.rs
Original file line number Diff line number Diff line change
@@ -1,12 +1,22 @@
use iii_sdk::{register_worker, RegisterFunction};
use iii_sdk::runtime::WorkerMetadata;
use iii_sdk::{register_worker, InitOptions, RegisterFunction};
use serde_json::Value;
use std::time::Duration;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let url = std::env::var("III_URL")
.unwrap_or_else(|_| "ws://localhost:49134".into());
let iii = register_worker(&url, Default::default());
let iii = register_worker(
&url,
InitOptions {
metadata: Some(WorkerMetadata {
name: "compute-worker".into(),
..Default::default()
}),
..Default::default()
},
);

iii.register_function(
"compute-worker::compute",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
// so that other workers connected to iii can trigger them.

import { registerWorker } from "iii-sdk";
const iii = registerWorker(process.env.III_URL ?? "ws://localhost:49134");
const iii = registerWorker(process.env.III_URL ?? "ws://localhost:49134", {
workerName: "payment-worker",
});

iii.registerFunction("payment-worker::record", async (payload) => {
// A real worker would call an external API:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import { Logger } from "@iii-dev/helpers/observability";

const iii = registerWorker(
process.env.III_BRIDGE_URL ?? "ws://localhost:49134",
{ workerName: "account-events" },
);
const logger = new Logger();

Expand Down
4 changes: 3 additions & 1 deletion iii/quickstart/workers/caller-worker/src/worker.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
import { registerWorker } from 'iii-sdk';
import { Logger } from '@iii-dev/helpers/observability';

const worker = registerWorker(process.env.III_URL ?? 'ws://localhost:49134');
const worker = registerWorker(process.env.III_URL ?? 'ws://localhost:49134', {
workerName: 'caller-worker',
});
const logger = new Logger();

worker.registerFunction(
Expand Down
Loading