@elysia-microservice/client-base
v1.0.0
Published
Base client utilities and factory for Elysia microservices
Maintainers
Readme
@elysia-microservice/client-base
Base client utilities, factory, and resilience patterns for Elysia microservices framework.
Features
- Client Factory: Dynamically create clients for any transport
- Client Proxy: Type-safe proxy for client methods
- Resilience: Circuit breaker and retry patterns
Installation
bun add @elysia-microservice/client-baseUsage
Client Factory
import { createClient } from '@elysia-microservice/client-base';
const client = await createClient({
transport: 'tcp',
options: { host: '127.0.0.1', port: 4000 }
});Client Proxy
import { createClientProxy } from '@elysia-microservice/client-base';
const userService = createClientProxy(client, {
getUser: { type: 'send', pattern: 'get.user' },
createUser: { type: 'send', pattern: 'create.user' },
userCreated: { type: 'emit', pattern: 'user.created' }
});
const user = await userService.getUser({ id: 1 });Resilience
import { withResilience } from '@elysia-microservice/client-base';
const resilientClient = withResilience(client, {
retries: 3,
timeout: 5000,
breakerThreshold: 5
});