UNPKG

consul-resolver

Version:

A load balancer for Consul services with Redis-based metrics

21 lines (20 loc) 846 B
import Redis from "ioredis"; import { SelectionAlgorithm, SrvRecord } from "../types"; export declare class DNSManager { private redis; private cachePrefix; private cacheTTL; private cacheEnabled; private debug; private dnsEndpoints?; private dnsTimeout?; private dnsRetries?; constructor(redis: Redis | undefined, cachePrefix: string, cacheTTL: number, cacheEnabled: boolean, debug: boolean, dnsEndpoints?: string[] | undefined, dnsTimeout?: number | undefined, dnsRetries?: number | undefined); private getDNSCacheKey; resolveDNS(service: string): Promise<SrvRecord[]>; sortByPriority(records: SrvRecord[]): SrvRecord[]; selectFromSrvRecords(records: SrvRecord[], algorithm: SelectionAlgorithm, currentIndex: number): { selected: SrvRecord | null; nextIndex: number; }; }