moleculer
Version:
Fast & powerful microservices framework for Node.JS
30 lines (23 loc) • 719 B
TypeScript
import BaseStrategy = require("./base");
import type Context = require("../context");
import type ServiceBroker = require("../service-broker");
import type Registry = require("../registry/registry");
import type Endpoint = require("../registry/endpoint");
declare namespace ShardStrategy {
export interface ShardStrategyOptions {
shardKey?: string | null;
vnodes?: number;
ringSize?: number | null;
cacheSize?: number;
}
}
declare class ShardStrategy extends BaseStrategy {
constructor(
registry: Registry,
broker: ServiceBroker,
opts?: ShardStrategy.ShardStrategyOptions
);
opts: ShardStrategy.ShardStrategyOptions;
select(list: Endpoint[], ctx: Context): Endpoint;
}
export = ShardStrategy;