SigRedisNetwork
개요
SigRedisNetwork는 로컬 서버간의 비동기 데이터 통신을 위하여 제작되었습니다
Configuration
아래의 configuration 을 제공합니다
redis:
host: localhost # redis 서버 호스트
port: 6379 # redis 서버 포트
request_channel: default-redis-request-channel # request pub channel id
response_channel: default-redis-response-channel # response pub channel id
# 서버 아이디를 지정합니다
# com.signition.network.KnownServerType 의 serverId 필드를 가르키지 않아도 되지만 권장합니다
server-id: "survival_1"
# 요청한 패킷의 응답만료 시간을 정의합니다 (ms)
response_timeout: 5000
# 응답 thread pool 의 사이즈를 지정합니다
response_timer_scheduled_thread_pool_size: 10
# 응답 요청 대기 thread의 pool 사이즈를 지정합니다
deserialize_and_response_fixed_thread_pool_size: 10
# 위 둘의 thread pool 의 shutdown await 시간을 정의합니다 (ms)
thread_pool_await_shutdown_timeout_millis: 10000구조
패킷의 흐름은 아래와 같이 약속되어 있습니다

확장 방법
SigRedisNetwork 플러그인은 커스텀 패킷을 만들 수 있습니다
AbstractSigRedisPacket<T> 을 상속하세요 여기서 T 는 Response DTO 클래스를 정의해줘야 합니다
@AutoRegistrablePacket(packetId) 어노테이션을 사용하여 런타임단에서packet을 자동으로 register 해줄 수 있습니다
또 PacketSerializer<T> 를 생성, 정의 해주어야 합니다
@AutoRegistrablePacketSerializer(packetId) 어노테이션으로 런타임단에서 자동 등록할 수 있습니다
API
API는 com.signition.network.SigRedisAPI 클래스를 참고하세요
API 를 통해서 생성한 패킷을 보내고 응답을 받을 수 있습니다
Last updated