Работа Ignite вне кучи и преимущества перед кучей
Я понимаю, что хранение вне кучи помогает избежать длительных пауз GC, но я хочу знать, как java сериализует объекты при хранении в куче, и как сериализовать ignite при хранении вне кучи? Например, GC запускается для освобождения места, что происходит при выключении -Куча используется для освобождения места и как это сравнивается с GC? Как тарифы вне кучи против кучного хранения?
Мы пытаемся POC оценить воспламенение и лесной выброс, воспламенить предложения вне хранилища кучи, поэтому хотим понять детали этого, чтобы прийти к выводу..
1 ответ
Java не сериализует данные, которые хранятся в куче. Вся идея сериализации заключается в переносе объектов из кучи в другую среду, например вне кучи. Так что это просто хранится.
Ignite реализует быструю сериализацию с использованием интерфейсов Binary Objects, Externalizable и Binarylizable.
Ignite не нужно собирать GC вне своей кучи, поскольку он явно отслеживает все пары ключ-значение. Когда что-то удаляется, память сразу же доступна для использования (GC действительно нужен только для графовых систем, а не для ключа-значения и для SQL).
Тем не менее, все может быть несколько иначе для недавно введенного транзакционного SQL с его вакуумной процедурой.