Мы пытаемся интегрировать Ignite Cache в наше решение в режиме клиент-сервер. Мы не хотим, чтобы все классы были реплицированы во все экземпляры Ignite, кроме того, в некоторых случаях невозможно заранее определить эти классы (например, пользовательские классы клиента).
Некоторые классы сохраняются в кеше являются сериализуемыми, а некоторые — внешними.
Согласно документации (и из журнала) мы видим, что сериализуемые классы хранятся на сервере как двоичные, а внешние — пытаются десериализоваться на сервере. сервер. Поскольку эти классы недоступны на сервере, мы получаем сообщение об ошибке (см. ниже).
Мы попытались установить для PeerClassLoadingEnabled значение true, а также протестировали все режимы развертывания, однако похоже, что удаленный Загрузка однорангового класса не работает для кеша. Также в документации:
https://ignite.apache.org/docs/latest/c ... ss-loading
Следующие комментарий существует:
Функция загрузки одноранговых классов не развертывает классы ключей и объектов записей, хранящихся в кэшах.
Мы также попытались используйте JdkMarshaller (настроил его как на клиенте, так и на сервере), однако похоже, что проблема сохраняется и объект пытается десериализоваться на сервере.
Поэтому: можно ли принудительно зажечь хранить как сериализуемые, так и внешние классы на сервере как двоичные и не пытаться их десериализовать (мы не можем реализовать Binaryizable для всех классов externalizable, поскольку некоторые из них не находятся под нашим контролем)? А в случае нет, есть ли возможность принудительно загружать одноранговые классы между узлами для кэша?
10:42:34,690 WARNING [org.apache.ignite.internal.binary.BinaryContext] (RMI TCP Connection(4)-127.0.0.1) Class "org.restcomm.cluster.ClusteredUUID" cannot be serialized using BinaryMarshaller because it either implements Externalizable interface or have writeObject/readObject methods. OptimizedMarshaller will be used instead and class instances will be deserialized on the server. Please ensure that all nodes have this class in classpath. To enable binary serialization either implement Binarylizable interface or set explicit serializer using BinaryTypeConfiguration.setSerializer() method.
10:42:34,696 WARNING [org.apache.ignite.internal.binary.BinaryContext] (RMI TCP Connection(4)-127.0.0.1) Class "org.restcomm.cluster.ClusteredUUID" cannot be serialized using BinaryMarshaller because it either implements Externalizable interface or have writeObject/readObject methods. OptimizedMarshaller will be used instead and class instances will be deserialized on the server. Please ensure that all nodes have this class in classpath. To enable binary serialization either implement Binarylizable interface or set explicit serializer using BinaryTypeConfiguration.setSerializer() method.
10:42:34,713 INFO [org.apache.ignite.internal.managers.deployment.GridDeploymentLocalStore] (sys-stripe-5-#6%08306b50-6ac3-11eb-8e3a-0a0000a633b8%) Class locally deployed: class org.apache.ignite.IgniteCheckedException
10:42:34,713 INFO [org.apache.ignite.internal.managers.deployment.GridDeploymentLocalStore] (sys-stripe-5-#6%08306b50-6ac3-11eb-8e3a-0a0000a633b8%) Class locally deployed: class org.apache.ignite.binary.BinaryObjectException
10:42:34,714 INFO [org.apache.ignite.internal.managers.deployment.GridDeploymentLocalStore] (sys-stripe-5-#6%08306b50-6ac3-11eb-8e3a-0a0000a633b8%) Class locally deployed: class org.apache.ignite.IgniteException
10:42:34,717 INFO [org.apache.ignite.internal.managers.deployment.GridDeploymentLocalStore] (sys-stripe-5-#6%08306b50-6ac3-11eb-8e3a-0a0000a633b8%) Class locally deployed: class [Ljava.lang.StackTraceElement;
10:42:34,718 ERROR [stderr] (RMI TCP Connection(4)-127.0.0.1) class org.apache.ignite.IgniteException: Failed to unmarshal object with optimized marshaller
10:42:34,719 ERROR [stderr] (RMI TCP Connection(4)-127.0.0.1) at org.apache.ignite.internal.processors.cache.GridCacheAdapter.containsKey(GridCacheAdapter.java:697)
10:42:34,719 ERROR [stderr] (RMI TCP Connection(4)-127.0.0.1) at org.apache.ignite.internal.processors.cache.IgniteCacheProxyImpl.containsKey(IgniteCacheProxyImpl.java:1252)
10:42:34,719 ERROR [stderr] (RMI TCP Connection(4)-127.0.0.1) at org.apache.ignite.internal.processors.cache.GatewayProtectedCacheProxy.containsKey(GatewayProtectedCacheProxy.java:796)
Подробнее здесь: https://stackoverflow.com/questions/661 ... -on-server
Ignite Cache — хранение экстернализуемых объектов в двоичном виде на сервере ⇐ JAVA
Программисты JAVA общаются здесь
1729264021
Anonymous
Мы пытаемся интегрировать Ignite Cache в наше решение в режиме клиент-сервер. Мы не хотим, чтобы все классы были реплицированы во все экземпляры Ignite, кроме того, в некоторых случаях невозможно заранее определить эти классы (например, пользовательские классы клиента).
Некоторые классы сохраняются в кеше являются сериализуемыми, а некоторые — внешними.
Согласно документации (и из журнала) мы видим, что сериализуемые классы хранятся на сервере как двоичные, а внешние — пытаются десериализоваться на сервере. сервер. Поскольку эти классы недоступны на сервере, мы получаем сообщение об ошибке (см. ниже).
Мы попытались установить для PeerClassLoadingEnabled значение true, а также протестировали все режимы развертывания, однако похоже, что удаленный Загрузка однорангового класса не работает для кеша. Также в документации:
https://ignite.apache.org/docs/latest/code-deployment/peer-class-loading
Следующие комментарий существует:
Функция загрузки одноранговых классов не развертывает классы ключей и объектов записей, хранящихся в кэшах.
Мы также попытались используйте JdkMarshaller (настроил его как на клиенте, так и на сервере), однако похоже, что проблема сохраняется и объект пытается десериализоваться на сервере.
Поэтому: можно ли принудительно зажечь хранить как сериализуемые, так и внешние классы на сервере как двоичные и не пытаться их десериализовать (мы не можем реализовать Binaryizable для всех классов externalizable, поскольку некоторые из них не находятся под нашим контролем)? А в случае нет, есть ли возможность принудительно загружать одноранговые классы между узлами для кэша?
10:42:34,690 WARNING [org.apache.ignite.internal.binary.BinaryContext] (RMI TCP Connection(4)-127.0.0.1) Class "org.restcomm.cluster.ClusteredUUID" cannot be serialized using BinaryMarshaller because it either implements Externalizable interface or have writeObject/readObject methods. OptimizedMarshaller will be used instead and class instances will be deserialized on the server. Please ensure that all nodes have this class in classpath. To enable binary serialization either implement Binarylizable interface or set explicit serializer using BinaryTypeConfiguration.setSerializer() method.
10:42:34,696 WARNING [org.apache.ignite.internal.binary.BinaryContext] (RMI TCP Connection(4)-127.0.0.1) Class "org.restcomm.cluster.ClusteredUUID" cannot be serialized using BinaryMarshaller because it either implements Externalizable interface or have writeObject/readObject methods. OptimizedMarshaller will be used instead and class instances will be deserialized on the server. Please ensure that all nodes have this class in classpath. To enable binary serialization either implement Binarylizable interface or set explicit serializer using BinaryTypeConfiguration.setSerializer() method.
10:42:34,713 INFO [org.apache.ignite.internal.managers.deployment.GridDeploymentLocalStore] (sys-stripe-5-#6%08306b50-6ac3-11eb-8e3a-0a0000a633b8%) Class locally deployed: class org.apache.ignite.IgniteCheckedException
10:42:34,713 INFO [org.apache.ignite.internal.managers.deployment.GridDeploymentLocalStore] (sys-stripe-5-#6%08306b50-6ac3-11eb-8e3a-0a0000a633b8%) Class locally deployed: class org.apache.ignite.binary.BinaryObjectException
10:42:34,714 INFO [org.apache.ignite.internal.managers.deployment.GridDeploymentLocalStore] (sys-stripe-5-#6%08306b50-6ac3-11eb-8e3a-0a0000a633b8%) Class locally deployed: class org.apache.ignite.IgniteException
10:42:34,717 INFO [org.apache.ignite.internal.managers.deployment.GridDeploymentLocalStore] (sys-stripe-5-#6%08306b50-6ac3-11eb-8e3a-0a0000a633b8%) Class locally deployed: class [Ljava.lang.StackTraceElement;
10:42:34,718 ERROR [stderr] (RMI TCP Connection(4)-127.0.0.1) class org.apache.ignite.IgniteException: Failed to unmarshal object with optimized marshaller
10:42:34,719 ERROR [stderr] (RMI TCP Connection(4)-127.0.0.1) at org.apache.ignite.internal.processors.cache.GridCacheAdapter.containsKey(GridCacheAdapter.java:697)
10:42:34,719 ERROR [stderr] (RMI TCP Connection(4)-127.0.0.1) at org.apache.ignite.internal.processors.cache.IgniteCacheProxyImpl.containsKey(IgniteCacheProxyImpl.java:1252)
10:42:34,719 ERROR [stderr] (RMI TCP Connection(4)-127.0.0.1) at org.apache.ignite.internal.processors.cache.GatewayProtectedCacheProxy.containsKey(GatewayProtectedCacheProxy.java:796)
Подробнее здесь: [url]https://stackoverflow.com/questions/66117745/ignite-cache-storing-externalizable-objects-as-binary-on-server[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия