WebBroker + WebSockets + HTTP/2

동일한 TLS 포트에서 기본 WebSocket 업그레이드와 HTTP/2 스트림도 수락하는 크로스플랫폼 WebBroker / DataSnap 호스트예요.

TsgcWSHTTP2WebBrokerBridgeServer

TsgcWSHTTPWebBrokerBridgeServer의 크로스플랫폼 형제 컴포넌트로, HTTP/2 프레이밍이 추가됐어요 — ALPN h2 협상이 업그레이드 경로를 처리하며, WebBroker 핸들러는 그대로 유지돼요.

컴포넌트 클래스

TsgcWSHTTP2WebBrokerBridgeServer

프로토콜

HTTP/2 (RFC 9113)

플랫폼

Windows, macOS, Linux, iOS, Android

에디션

Enterprise

TLS를 설정하고, HTTP/2를 활성화하고, 수신 대기하세요

TWebModule을 마운트하고 SSLOptions와 Specifications.HTTP2를 설정한 다음, Active := True로 설정하세요 — HTTP/1.1, HTTP/2, WebSocket이 모두 동일한 TLS 엔드포인트를 공유해요.

uses
  sgcWebSocket, sgcWebSocket_DataSnap, WebReq, WebModuleUnit1;

var
  Server: TsgcWSHTTP2WebBrokerBridgeServer;
begin
  if WebRequestHandler <> nil then
    WebRequestHandler.WebModuleClass := WebModuleClass;

  Server := TsgcWSHTTP2WebBrokerBridgeServer.Create(nil);
  Server.Port := 443;
  Server.SSL  := True;
  Server.SSLOptions.CertFile := 'cert.pem';
  Server.SSLOptions.KeyFile  := 'key.pem';
  Server.Specifications.HTTP   := True;
  Server.Specifications.HTTP2  := True;
  Server.Specifications.RFC6455 := True;

  Server.Active := True;
end;

내부 구성

OpenSSL Indy 스택 위에서 HTTP/2 프레이밍을 갖춘 WebBroker / DataSnap이에요 — 하나의 TLS 엔드포인트, 세 가지 프로토콜이에요.

ALPN 기반 디스패치

TLS 핸드셰이크 중 서버는 http/1.1h2를 광고하고, 클라이언트가 하나를 선택해요. WebSocket 업그레이드는 여전히 HTTP/1.1 경로를 통해 처리돼요.

HTTP/2 멀티플렉싱

여러 HTTP/2 스트림이 하나의 TCP 연결을 공유해요 — 단일 브라우저 탭에서 HOL 블로킹 없이 수십 개의 REST 호출을 병렬로 처리할 수 있어요.

WebBroker 핸들러 변경 없음

각 HTTP/2 요청은 WebBroker 파이프라인을 통해 디코딩되고 재생되므로 기존 TWebModule, DataSnap REST 및 RAD Server 핸들러가 변경 없이 작동해요.

WebSocket 공존

Specifications.RFC6455 := True로 설정하여 동일한 포트에서 WebSocket 업그레이드를 유지해요. 실시간 채널을 위해 OnConnect / OnMessage를 바인딩하세요.

OpenSSL을 통한 TLS

크로스플랫폼 OpenSSL TLS예요. 커널 모드 TLS를 사용하는 Windows 전용 배포는 HTTP.SYS에서 TsgcWSServer_HTTPAPI_WebBrokerBridge 형제 컴포넌트를 사용하세요.

HTTP/3 경로

QUIC 기반 HTTP/3를 사용하려면 TsgcHTTP3Server를 직접 사용하세요 — 레거시 클라이언트를 위한 TCP 기반 HTTP/2와 최신 클라이언트를 위한 QUIC 기반 HTTP/3를 함께 사용하면 돼요.

사양 및 참조

이 컴포넌트가 구현하는 프로토콜의 공식 출처예요.

문서 및 데모

컴포넌트 레퍼런스로 바로 이동하거나, 바로 실행 가능한 데모 프로젝트를 다운로드하고, 체험판을 받아 보세요.

온라인 도움말 — TsgcWSHTTP2WebBrokerBridgeServer 이 컴포넌트의 전체 속성, 메서드 및 이벤트 레퍼런스예요.
데모 프로젝트 — Demos\40.DataSnap\Server_Indy_HTTP2 바로 실행 가능한 예제 프로젝트예요. sgcWebSockets 패키지에 포함되어 있어요 — 아래에서 체험판을 다운로드하세요.
기술 문서 (PDF) Delphi 및 C++ Builder용 기능, 빠른 시작, 코드 샘플 및 기본 소스 참조 — 이 컴포넌트 전용이에요.
사용자 설명서 (PDF) 라이브러리의 모든 컴포넌트를 다루는 종합 설명서예요.

DataSnap 서버에 HTTP/2를 추가할 준비가 됐나요?

무료 체험판을 다운로드하고 단일 Delphi DataSnap 호스트에서 HTTP/1.1, HTTP/2, WebSocket을 제공해 보세요.