BindLoadBalancerToTCPServer

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску
return_code_t PLATFORM_NATIVE_CALLING_CONVENTION BindLoadBalancerToTCPServer(
    const char* pServerAddress, std::size_t cbServerAddress, std::uint16_t nServerPort, 
    IControlSystemDomainSide* pCtrl, ILoadBalancer* pAggregatee, const char* pDomainName, std::size_t cbDomainName, 
    ILoadBalancer** ppAggregate) noexcept;

Задает привязку балансировщика нагрузки, с передачей владения, с интерфейсом ILoadBalancer к TCP серверу для обработки им запросов LoadBalancerRequests путем вызова соответствующих методов ILoadBalancer.

Параметры
[in]pServerAddressСтрока с адресом создаваемого TCP сервера. Длина строки задается параметром cbServerAddress.
cbServerAddressДлина строки pServerAddress в байтах.
nServerPortПорт, который должен прослушиваться создаваемым сервером.
pCtrlУказатель на экземпляр подсистемы управления, для которой создается TCP сервер.
[in]pAggregateeБалансировщик нагрузки, который агрегируется TCP сервером. Сервер вызывает методы интерфейса ILoadBalancer в соответствии с поступающими запросами. В случае успешного выполнения функции BindLoadBalancerToTCPServer владение экземпляром pAggregatee передается создаваемому серверу.
[in]pDomainNameИдентификатор экземпляра подсистемы предметной области, для которой создается возвращаемый через ppAggregate балансировщик нагрузки. Параметр pDomainName является UTF-8 строкой без терминального нуля и имеет длину cbDomainName байт.
cbDomainNameДлина строки pDomainName в байтах.
[out]ppAggregateСозданный экземпляр TCP-сервера с интерфейсом ILoadBalancer. В случае ошибки выходное значение указателя ppAggregate устанавливается в nullptr.
Возвращаемое значение:
32-битовый целый код ошибки, который неотрицателен при успешности операции.