Можно ли получить действительно уникальный идентификатор для конкретного экземпляра JVM?

Мне нужен способ уникальной и постоянной идентификации экземпляра JVM из кода Java, работающего в этой JVM.

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

Я полагаю, что мог бы реализовать что-то вроде этого, определив время запуска, MAC-адрес компьютера и идентификатор процесса, и каким-то образом комбинируя их. Мне интересно, есть ли какой-нибудь стандартный способ добиться этого.

ОбновитьЯ вижу, что все рекомендовали UUID для всей сессии. Это кажется хорошей идеей, хотя, возможно, слишком тяжелым. Вот моя проблема: я хочу использовать идентификатор JVM для создания нескольких уникальных идентификаторов в каждом выполнении JVM, которые каким-то образом включают экземпляр JVM.

Насколько я понимаю, вы не должны смешивать другие числа в UUID, потому что уникальность больше не гарантируется. Альтернатива состоит в том, чтобы превратить UUID в строку и связать ее, но тогда она становится слишком длинной. Есть идеи по преодолению этого?

Ответы на вопрос(3)

Ваш ответ на вопрос