10P by xguru 2023-10-12 | favorite | 댓글 2개
  • JIT 과 Zero-Copy 기반으로 빠른 속도 및 쉬운 사용법을 제공
  • Java/Python/C++/Golang/Javascript 지원
    • Java의 JDK/Kryo/Hessian 같은 직렬화 프레임워크를 코드 변경없이 그냥 대체 가능. 속도는 100배 빠름
    • Golang의 공유/순환 참조 객체 직렬화 및 자동 객체 직렬화 지원
  • 확장가능한 JIT 프레임워크를 이용한 비동기 멀티쓰레드 방식으로 20~170배까지 성능을 개선
    • 생성된 코드에서 인라인 변수로 메모리 접근 줄임
    • 생성된 코드에서 인라인 호출을 통해서 가상 메서드 호출을 감소
    • 조건 분기를 줄임
    • 해쉬 룩업도 감소
  • 멀티플 바이너리 프로토콜: 크로스 랭귀지 오브젝트 그래프, 네이티브 자바/파이썬 오브젝트 그래프, Row 포맷 프로토콜 등

간단한 성능 테스트를 해봤습니다.
비지니스 객체 인코딩 디코딩 1000000회
JDK: 55123ms
fstCodec: 2500ms ( https://github.com/RuedigerMoeller/fast-serialization )
fury: 957ms

이름이 재밌네요 ㅎㅎ.