project.pool() | project.service() | service.pipeline()Pool, Service, and Pipeline
Execution capacity, deployment boundary, and stream namespace objects.
When to use
Create pools and services at project scope, then create streams through a named Pipeline.
Behavior
- Pool controls executors and optional queue capacity for task-pool links.
- Service receives typed language, module, listener, observability, and deployment objects.
- Pipeline is a named stream registry inside one Service and exposes concrete stream factories.
project.pool() properties
Task pool factory.
namestrPool name and derived key.
Requiredexecutors_countintNumber of concurrent executors.
Requiredqueue_capacityint | NoneOptional bounded queue capacity.
Default:Noneproject.service() properties
Service factory and common generated defaults.
namestrService name and directory identity.
RequiredlanguageGolang | CppUserver | CppBoost | Python | Rust | TypeScriptTarget runtime and supported version metadata.
RequiredmoduleServiceModuleGenerated package/module identity.
RequiredappearanceAppearance | NoneOptional service color.
Default:Nonehttp_serverHttpServer | NoneHTTP host and port group.
Default:Nonegrpc_serverGrpcServer | NonegRPC host, port, and default timeout group.
Default:NoneobservabilityObservability | NoneMetrics, status, startup, readiness, and liveness handlers.
Default:NonekubernetesKubernetes | NoneGenerated Kubernetes workload configuration.
Default:Nonedefault_call_semanticsCallSemanticsSemantics used when a persisted link override is absent.
Default:FunctionCallshutdown_timeoutintTotal service shutdown timeout in milliseconds.
Default:30000service.pipeline(name) properties
Named stream namespace.
namestrPipeline name and key.
Requiredstreamsdict[str, Stream]Streams registered by concrete factory methods.
Python example
workers = project.pool("Workers", executors_count=8, queue_capacity=1000)
service = project.service(
"Order Service",
language=Golang(version="1.25.4"),
module=ServiceModule(path="github.com/example/orders/orderservice"),
appearance=Appearance(color="#ff5c00"),
http_server=HttpServer(port=9091),
grpc_server=GrpcServer(port=9201, default_timeout=30_000),
observability=Observability(metrics_handler="metrics", status_handler="status"),
kubernetes=Kubernetes(workload_type=KubernetesWorkloadType.DEPLOYMENT),
shutdown_timeout=45_000,
)
orders = service.pipeline("orders")