LoadBalancer
Defined in: packages/webhook/src/dispatcher/load-balancer.ts:19
Extends
섹션 제목: “Extends”EventEmitter
Constructors
섹션 제목: “Constructors”Constructor
섹션 제목: “Constructor”new LoadBalancer(
config?):LoadBalancer
Defined in: packages/webhook/src/dispatcher/load-balancer.ts:35
Parameters
섹션 제목: “Parameters”config?
섹션 제목: “config?”Partial<LoadBalancerConfig> = {}
Returns
섹션 제목: “Returns”LoadBalancer
Overrides
섹션 제목: “Overrides”EventEmitter.constructor
Methods
섹션 제목: “Methods”addListener()
섹션 제목: “addListener()”addListener(
eventName,listener):this
Defined in: packages/webhook/src/shared/event-emitter.ts:16
Parameters
섹션 제목: “Parameters”eventName
섹션 제목: “eventName”string
listener
섹션 제목: “listener”Listener
Returns
섹션 제목: “Returns”this
Inherited from
섹션 제목: “Inherited from”EventEmitter.addListener
emit()
섹션 제목: “emit()”emit(
eventName, …args):boolean
Defined in: packages/webhook/src/shared/event-emitter.ts:44
Parameters
섹션 제목: “Parameters”eventName
섹션 제목: “eventName”string
args
섹션 제목: “args”…unknown[]
Returns
섹션 제목: “Returns”boolean
Inherited from
섹션 제목: “Inherited from”EventEmitter.emit
getAllEndpointHealth()
섹션 제목: “getAllEndpointHealth()”getAllEndpointHealth():
EndpointHealth[]
Defined in: packages/webhook/src/dispatcher/load-balancer.ts:213
모든 엔드포인트 건강 상태 조회
Returns
섹션 제목: “Returns”EndpointHealth[]
getEndpointHealth()
섹션 제목: “getEndpointHealth()”getEndpointHealth(
endpointId):EndpointHealth|null
Defined in: packages/webhook/src/dispatcher/load-balancer.ts:206
엔드포인트 건강 상태 조회
Parameters
섹션 제목: “Parameters”endpointId
섹션 제목: “endpointId”string
Returns
섹션 제목: “Returns”EndpointHealth | null
getStats()
섹션 제목: “getStats()”getStats():
object
Defined in: packages/webhook/src/dispatcher/load-balancer.ts:220
로드 밸런서 통계 조회
Returns
섹션 제목: “Returns”object
activeConnections
섹션 제목: “activeConnections”activeConnections:
number
averageResponseTime
섹션 제목: “averageResponseTime”averageResponseTime:
number
circuitBreakersOpen
섹션 제목: “circuitBreakersOpen”circuitBreakersOpen:
number
healthyEndpoints
섹션 제목: “healthyEndpoints”healthyEndpoints:
number
totalEndpoints
섹션 제목: “totalEndpoints”totalEndpoints:
number
off()
섹션 제목: “off()”off(
eventName,listener):this
Defined in: packages/webhook/src/shared/event-emitter.ts:20
Parameters
섹션 제목: “Parameters”eventName
섹션 제목: “eventName”string
listener
섹션 제목: “listener”Listener
Returns
섹션 제목: “Returns”this
Inherited from
섹션 제목: “Inherited from”EventEmitter.off
on()
섹션 제목: “on()”on(
eventName,listener):this
Defined in: packages/webhook/src/shared/event-emitter.ts:9
Parameters
섹션 제목: “Parameters”eventName
섹션 제목: “eventName”string
listener
섹션 제목: “listener”Listener
Returns
섹션 제목: “Returns”this
Inherited from
섹션 제목: “Inherited from”EventEmitter.on
once()
섹션 제목: “once()”once(
eventName,listener):this
Defined in: packages/webhook/src/shared/event-emitter.ts:35
Parameters
섹션 제목: “Parameters”eventName
섹션 제목: “eventName”string
listener
섹션 제목: “listener”Listener
Returns
섹션 제목: “Returns”this
Inherited from
섹션 제목: “Inherited from”EventEmitter.once
onRequestComplete()
섹션 제목: “onRequestComplete()”onRequestComplete(
endpointId,success,responseTime):Promise<void>
Defined in: packages/webhook/src/dispatcher/load-balancer.ts:146
요청 완료 시 호출 (연결 수 감소 및 통계 업데이트)
Parameters
섹션 제목: “Parameters”endpointId
섹션 제목: “endpointId”string
success
섹션 제목: “success”boolean
responseTime
섹션 제목: “responseTime”number
Returns
섹션 제목: “Returns”Promise<void>
registerEndpoint()
섹션 제목: “registerEndpoint()”registerEndpoint(
endpoint):Promise<void>
Defined in: packages/webhook/src/dispatcher/load-balancer.ts:45
엔드포인트 등록
Parameters
섹션 제목: “Parameters”endpoint
섹션 제목: “endpoint”active
섹션 제목: “active”boolean = ...
createdAt
섹션 제목: “createdAt”Date = ...
description?
섹션 제목: “description?”string = ...
events
섹션 제목: “events”WebhookEventType[] = ...
filters?
섹션 제목: “filters?”{ channelId?: string[]; providerId?: string[]; templateId?: string[]; } = ...
filters.channelId?
섹션 제목: “filters.channelId?”string[] = ...
filters.providerId?
섹션 제목: “filters.providerId?”string[] = ...
filters.templateId?
섹션 제목: “filters.templateId?”string[] = ...
headers?
섹션 제목: “headers?”Record<string, string> = ...
string = ...
lastTriggeredAt?
섹션 제목: “lastTriggeredAt?”Date = ...
name?
섹션 제목: “name?”string = ...
retryConfig?
섹션 제목: “retryConfig?”{ backoffMultiplier: number; maxRetries: number; retryDelayMs: number; } = ...
retryConfig.backoffMultiplier
섹션 제목: “retryConfig.backoffMultiplier”number = ...
retryConfig.maxRetries
섹션 제목: “retryConfig.maxRetries”number = ...
retryConfig.retryDelayMs
섹션 제목: “retryConfig.retryDelayMs”number = ...
secret?
섹션 제목: “secret?”string = ...
status
섹션 제목: “status”"error" | "active" | "inactive" | "suspended" = ...
updatedAt
섹션 제목: “updatedAt”Date = ...
url
섹션 제목: “url”string = ...
Returns
섹션 제목: “Returns”Promise<void>
removeAllListeners()
섹션 제목: “removeAllListeners()”removeAllListeners(
eventName?):this
Defined in: packages/webhook/src/shared/event-emitter.ts:57
Parameters
섹션 제목: “Parameters”eventName?
섹션 제목: “eventName?”string
Returns
섹션 제목: “Returns”this
Inherited from
섹션 제목: “Inherited from”EventEmitter.removeAllListeners
removeListener()
섹션 제목: “removeListener()”removeListener(
eventName,listener):this
Defined in: packages/webhook/src/shared/event-emitter.ts:31
Parameters
섹션 제목: “Parameters”eventName
섹션 제목: “eventName”string
listener
섹션 제목: “listener”Listener
Returns
섹션 제목: “Returns”this
Inherited from
섹션 제목: “Inherited from”EventEmitter.removeListener
selectEndpoint()
섹션 제목: “selectEndpoint()”selectEndpoint(
endpoints):Promise<{active:boolean;createdAt:Date;description?:string;events:WebhookEventType[];filters?: {channelId?:string[];providerId?:string[];templateId?:string[]; };headers?:Record<string,string>;id:string;lastTriggeredAt?:Date;name?:string;retryConfig?: {backoffMultiplier:number;maxRetries:number;retryDelayMs:number; };secret?:string;status:"error"|"active"|"inactive"|"suspended";updatedAt:Date;url:string; } |null>
Defined in: packages/webhook/src/dispatcher/load-balancer.ts:83
로드 밸런싱을 통한 엔드포인트 선택
Parameters
섹션 제목: “Parameters”endpoints
섹션 제목: “endpoints”object[]
Returns
섹션 제목: “Returns”Promise<{ active: boolean; createdAt: Date; description?: string; events: WebhookEventType[]; filters?: { channelId?: string[]; providerId?: string[]; templateId?: string[]; }; headers?: Record<string, string>; id: string; lastTriggeredAt?: Date; name?: string; retryConfig?: { backoffMultiplier: number; maxRetries: number; retryDelayMs: number; }; secret?: string; status: "error" | "active" | "inactive" | "suspended"; updatedAt: Date; url: string; } | null>
shutdown()
섹션 제목: “shutdown()”shutdown():
Promise<void>
Defined in: packages/webhook/src/dispatcher/load-balancer.ts:442
로드 밸런서 종료
Returns
섹션 제목: “Returns”Promise<void>
unregisterEndpoint()
섹션 제목: “unregisterEndpoint()”unregisterEndpoint(
endpointId):Promise<void>
Defined in: packages/webhook/src/dispatcher/load-balancer.ts:71
엔드포인트 등록 해제
Parameters
섹션 제목: “Parameters”endpointId
섹션 제목: “endpointId”string
Returns
섹션 제목: “Returns”Promise<void>