2011-01-21 2 views

ответ

5

Для чего это должно быть? Отдельные JVM имеют отдельные адресные пространства. Чтобы обмениваться информацией между ними, она должна быть явно отправлена ​​через какой-то общий канал, такой как сокет, файл или база данных.

0

Я не слышал о какой-либо общей памяти JVM, которую вы можете использовать программно. С Java 1.5 есть CDS, что, к сожалению, вам не поможет в этой ситуации, насколько мне известно ...

По мере того, как Майкл отзывается, вы должны использовать другую общую конструкцию в зависимости от того, какую информацию вы хотите разделить. Соответственно это проблема сервлета, вы, возможно, захотите поделиться некоторыми данными с помощью различных веб-приложений. Если вы можете удовлетвориться медленной производительностью с использованием базы данных или простого файла, это сработает для вас. Если у вас есть надежное корпоративное решение, скажем, с EJB или что-то в этом роде, вы можете увидеть другие технологии, такие как темы JMS или распределенные кеши в среде кластера.

+0

CDS не имеет ничего общего с этим. Во-первых, речь идет только о том, чтобы делиться статическими структурами данных классов и, возможно, что более важно, * * разработан * полностью прозрачным. –

+0

Я отметил, что это не поможет, упомянул об этом, потому что это любопытный материал, и это своего рода «общая» память. – dxx

Смежные вопросы