Как реализовать несколько сериализаторов с помощью крио в Hazelcast?

У меня есть существующая модель домена, которую я не хотел бы менять для работы с Hazelcast. Для этого я хочу использовать интерфейс StreamSerializer и Kryo. Я просмотрел https://github.com/hazelcast/hazelcast-book-examples/blob/master/chapter-serialization/kryo-serializer/src/main/java/PersonKryoSerializer.java (или аналогичный http://blog.hazelcast.com/2013/10/16/kryo-serializer/), но мне интересно, как продолжить и добавить еще несколько сериализаторов для других классов.

Целесообразно ли создать новый класс StreamSerializer, опять же с конструкцией ThreadLocal? Это означает, что снова будет создан новый объект Kryo, это нормально? Или лучше иметь только 1 объект Kryo во всем приложении?

У некоторых классов нет конструкторов по умолчанию, как мне это вписать?


person Wim Deblauwe    schedule 30.05.2014    source источник


Ответы (1)


Я бы пошел на создание суперкласса, содержащего объекты Kryo (и thradlocal), и создал бы над ним подкласс для каждой сущности.

person noctarius    schedule 31.05.2014
comment
Как вы видите это возможным с суперклассом, если поле ThreadLocal является статическим? - person Wim Deblauwe; 02.06.2014
comment
пакет частный или общедоступный статический? - person noctarius; 02.06.2014