У меня есть проект GAE, написанный на Java, и у меня есть некоторые мысли о HRD и проблема, которую я не знаю, как решить.
Обычно в моей системе есть пользователи. Пользователь состоит из идентификатора пользователя, имени пользователя, адреса электронной почты и пароля. Каждый раз, когда я создаю нового пользователя, я хочу проверить, что еще нет пользователя с таким же идентификатором пользователя (никогда не должно быть), именем пользователя или адресом электронной почты.
Идентификатор пользователя является ключом, поэтому я думаю, что получение с ним будет последовательным. Однако, когда я делаю запрос (и использую фильтр), чтобы найти возможных пользователей с тем же именем пользователя или адресом электронной почты, я не могу быть уверен, что результаты согласуются.Поэтому, если кто-то создал пользователя с тем же именем пользователя или адресом электронной почты пару секунд назад, я могу не найти его с помощью моего запроса. Я понимаю, что предки используются для решения этой проблемы, но что, если у меня нет предка для запроса? У пользователя нет родителя.
Я был бы рад услышать ваше мнение по этому поводу, а также то, что считается лучшей практикой в подобных ситуациях. Я использую Objectify для GAE, если это что-то меняет.