Как с помощью pure java сгенерить GUID?

From
Roman Dawydkin (2:5022/5.77)
To
Vadim Rumyantsev ()
Date
2002-09-30T14:01:14Z
Area
RU.JAVA
[Mon 23/Sep/2002 21:44] Vadim Rumyantsev ==> Andrei Koulik

 VR> 1) может не быть постоянно работающей серверной машины;
 VR> 2) может не быть серверной машины, связанной с каждой из других;
 VR> 3) время связи с серверной машиной может быть неприемлемо большим.

    Тут лучше другой подход применить. Рано или поздно, но подключение к серверу произойдёт, и тогда клиент может получить свой идентификатор подключения. Первичный ключ можно составить из этого идентификатора и предыдущего значения счётчика для этого идентификатора (которое тоже получается от сервера).

 VR> С обсуждением математических вопросов -- лучше в RU.MATH. Как человек,
 VR> по профилю специальности в значительном объёме изучавший матстатистику и
 VR> смежные дисциплины, могу, однако, сразу сказать, что с доказательной
 VR> базой тебе здесь не светит :) Вкратце: никакой математический аппарат не
 VR> даст тебе оценку, сколько случайных сообщений тебе нужно обработать,
 VR> прежде чем ты получишь тот или иной результат.

    Что касается получения неуникального GUID ранее описанным "классическим" способом (МАС-адрес + time + random), то здесь вопрос не только математический, но и психологический/политический. Одно дело ожидать вероятность сбоя из-за железа и чужого неотлаженного софта, другое -- самому, фактически, намеренно допускать и программировать эту возможность. Я бы такой системе свой кошелёк не доверил. Представьте, что клиенту вместо обычного "мы на 99.999% гарантируем отсутсвие ошибок" сказать "мы на 0.001% гарантируем наличие ошибок".

... <airbell@chat.ru>
--- GoldED+/W32
 * Origin: OJSC Efremov Synthetic Rubber Enterprise (2:5022/5.77)