У меня есть приложение, которое использует сгенерированный номер eventNumber
для Event Message
в качестве идентификатора сообщения для получения Notification Message
. eventNumber
гарантированно будет уникальным и растущим.
Таким образом, для каждого genNum мы генерируем уведомление.
eventNumber on EventMsg | Notification Msg ID
---------------------------------------------
23 | 23
31 | 31
37 | 37
Мы используем идентификатор сообщения в Notification message
, чтобы отследить, какой Event message
его создал. Допустим, у нас было сообщение с идентификатором 123
. С этим идентификатором 123
мы можем сказать, что сообщение о событии с 123
произвело это сообщение уведомления.
Проблема в том, что могут быть редкие случаи, когда сообщение о событии может потребовать создания 2 сообщений уведомления. , Поскольку каждый Notification Message
должен быть уникальным, это проблема.
Допустим, у нас есть событие с идентификатором 456
, которое требует от нас создания 2 уведомительных сообщений. Это проблема, потому что мы ожидаем, что каждое уведомление будет иметь уникальный идентификатор. Это означает, что мы не можем использовать 456 в качестве идентификатора сообщения для обоих уведомительных сообщений.
Можно ли по-прежнему использовать идентификатор сообщения о событии 456
, чтобы создать уникальные идентификаторы для 2 сообщений уведомления? Эти итоговые идентификаторы все еще должны позволять декодировать тот факт, что они пришли из события с идентификатором 456.
Все идентификаторы / номера типа long.
Пока что мое наивное решение для каждого Идентификатор события, я умножаю на 10
и затем увеличиваю второй. Так что 456
становится 4560
. Уведомление 1 будет иметь идентификаторы 4560
и 4561
соответственно. Есть ли лучший способ go по этому поводу? Спасибо, что нашли время, чтобы прочитать этот вопрос