2014-09-16 4 views
2

우리는 현재 JSON을 반환하는 Java 기반 WebSocket을 가지고 있습니다.이 JSON은 .Net 응용 프로그램에서 사용하고 있습니다. 우리가받은 데이터의 크기 때문에 프로토콜 버퍼가 크기/대역폭 및 직렬화 및 역 직렬화 동안 시간과 자원을 절약 할 수 있도록 특별히 제공하는 장점을 모두 활용하기 시작했습니다.Protobuf-net을 사용하여 Java로 직렬화 된 데이터를 무시할 수 있습니까?

내 질문은 :

내가 Protobuf의 자바 구현과 자신의 JSON 시리얼 라이저를 교체하기 위해 자바 팀을 묻는다면 나는 다음을 직렬화 내 닷넷 소비자에 Protobuf 그물을 사용할 수 있어요?

즉, 어떻게하면 POCO가 POJO와 일치하는지 확인할 수 있습니까?

[*는] : 이 다른 JSON의 serlializers의 성능 이점 주변의 문제가 아닙니다 유의하시기 바랍니다, 그것은 Protobufs에 따라 다릅니다.

답변

3

네, 물론입니다.

프로토콜 버퍼는 언어에 구애받지 않도록 설계되었습니다. 사실, 주요 용도 중 하나는 다른 스택을 실행중인 시스템간에 통신하는 것입니다.

유선에서 프로토콜 버퍼는 XML 또는 JSON과 다를 수 없습니다. 그 점에서 그들은 언어 독립적입니다.

역 직렬화하려면 .Net과 Java 모두에 대해 Google의 컴퓨터 생성 코드를 사용해야합니다. 이렇게하면 프로토콜 버퍼를 올바르게 직렬화 할 수 있습니다.

+2

참고 사항 : protobuf-net * 특히 *를 사용하면 컴퓨터 생성 코드를 사용하는 것이 반드시 필요한 것은 아니며 * .proto-to-csharp 코드 생성기가 있습니다. –