Azure Web PubSub 서비스는 개발자가 실시간 기능 및 게시-구독 패턴을 사용하여 웹 애플리케이션을 쉽게 빌드할 수 있도록 도와주는 Azure 관리형 서비스입니다. 서버와 클라이언트 간 또는 클라이언트 간에 실시간 게시-구독 메시징이 필요한 시나리오는 Azure Web PubSub 서비스를 사용할 수 있습니다. 서버에서 폴링하거나 HTTP 요청을 제출해야 하는 기존의 실시간 기능도 Azure Web PubSub 서비스를 사용할 수 있습니다.
이 문서에서는 Azure Web PubSub 서비스 클라이언트 라이브러리에 대해 설명합니다.
이 다이어그램과 같이 서버 쪽 앱에서 이 라이브러리를 사용하여 WebSocket 클라이언트 연결을 관리할 수 있습니다.
이 라이브러리를 사용하여 다음을 수행합니다.
- 허브 및 그룹에 메시지를 보냅니다.
- 특정 사용자 및 연결에 메시지를 보냅니다.
- 사용자 및 연결을 그룹으로 구성합니다.
- 연결 닫기
- 기존 연결에 대한 권한 부여, 해지 및 확인
자세한 내용은 다음을 참조하세요.
- Azure Web PubSub 클라이언트 라이브러리 Java SDK
- Azure Web PubSub 클라이언트 라이브러리 참조 설명서
- Java용 Azure Web PubSub 클라이언트 라이브러리 샘플
- Azure Web PubSub 서비스 설명서
시작하기
필수 조건
- 활성 구독이 있는 Azure 계정이 필요합니다. 계정이 아직 없는 경우 계정을 무료로 만들 수 있습니다.
- JDK(Java Development Kit) 버전 8 이상.
패키지를 포함하세요
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-messaging-webpubsub</artifactId>
<version>1.0.0</version>
</dependency>
연결 문자열을 사용하여 WebPubSubServiceClient 만들기
WebPubSubServiceClient webPubSubServiceClient = new WebPubSubServiceClientBuilder()
.connectionString("{connection-string}")
.hub("chat")
.buildClient();
액세스 키를 사용하여 WebPubSubServiceClient 만들기
WebPubSubServiceClient webPubSubServiceClient = new WebPubSubServiceClientBuilder()
.credential(new AzureKeyCredential("{access-key}"))
.endpoint("<Insert endpoint from Azure Portal>")
.hub("chat")
.buildClient();
예시
전체 허브에 메시지 브로드캐스트
webPubSubServiceClient.sendToAll("Hello world!", WebPubSubContentType.TEXT_PLAIN);
그룹에 메시지 브로드캐스트
webPubSubServiceClient.sendToGroup("java", "Hello Java!", WebPubSubContentType.TEXT_PLAIN);
연결로 메시지 보내기
webPubSubServiceClient.sendToConnection("myconnectionid", "Hello connection!", WebPubSubContentType.TEXT_PLAIN);
사용자에게 메시지 보내기
webPubSubServiceClient.sendToUser("Andy", "Hello Andy!", WebPubSubContentType.TEXT_PLAIN);
Troubleshooting
클라이언트 로깅 활성화
환경 변수를 AZURE_LOG_LEVEL 설정하여 클라이언트 라이브러리에서 만든 로깅 문을 볼 수 있습니다. 예를 들어 설정 AZURE_LOG_LEVEL=2 은 모든 정보, 경고 및 오류 로그 메시지를 표시합니다. 로그 수준은 로그 수준에서 찾을 수 있습니다.
기본 HTTP 클라이언트
모든 클라이언트 라이브러리는 기본적으로 Netty HTTP 클라이언트를 사용합니다. 위의 종속성을 추가하면 Netty HTTP 클라이언트를 사용하도록 클라이언트 라이브러리가 자동으로 구성됩니다. HTTP 클라이언트 구성 또는 변경은 HTTP 클라이언트 wiki에 설명되어 있습니다.
기본 SSL 라이브러리
기본적으로 모든 클라이언트 라이브러리는 Tomcat 네이티브 보링 SSL 라이브러리를 사용하여 SSL 작업에 대한 기본 수준 성능을 사용하도록 설정합니다. 지루한 SSL 라이브러리는 Linux/macOS/Windows용 네이티브 라이브러리를 포함하는 uber jar이며 JDK 내의 기본 SSL 구현에 비해 더 나은 성능을 제공합니다. 종속성 크기를 줄이는 방법을 비롯한 자세한 내용은 [성능 튜닝][https://github.com/Azure/azure-sdk-for-java/wiki/Performance-Tuning]을 참조하세요.
다음 리소스를 사용하여 사용자 고유의 애플리케이션 빌드를 시작합니다.