Netty 및 Protobuf를 사용하여 메시지 배포자를 구현하고 싶습니다. 배포자는 기본 protobuf 메시지에 대해 알고 있고 확장을 가지고 있으며 확장을 위해 등록하는 다른 클래스로 전달하는 서버입니다.Netty에서 protobuf 확장을 사용하여 일반 배포자 구현
Protobuf는 확장명을 별도의 파일로 선언 할 수 있으므로 배포자는 확장명의 형식을 알 필요가 없습니다. 그러나 이것은 Netty 배관과 함께 모든 확장 기능을 알고있는 ExtensionRegistry로 ProtobufDecoder를 만들 필요가 있습니다. 그렇지 않으면 here으로 설명한 문제가 발생합니다.
여기에 뭔가가 누락 되었습니까? 아니면 내 자신의 디코더를 쓰지 않고 할 수없는 것입니까? Java에 예제가 있으면 매우 도움이 될 것입니다.
고마워요, Trustin - 이미 알고 있었지만 제가 혼란 스러웠던 점은 배포자가 모든 확장 기능에 대해 알 필요가 없기 때문에 ProtobufDecoder에 제공 한 ExtensionRegistry가 거의 비어 있음을 알았 기 때문입니다. 생각 해보니 * 괜찮습니다. 메시지를 재결합하여 처리기에 전달할 수 있습니다. 처리기는 관련 확장 기능을 알고있는 ExtensionRegistry를 사용하여 자체 디코딩을 수행합니다. 옳은? –
불행히도 protobuf 확장자로 작업 할 기회가 없었기 때문에 올바른지 확실하지 않습니다. 내 생각 엔 그래도 작동해야합니다. 다시 돌아와서 작동하는지 알려주십시오. – trustin