Запрос Google App Engine HRD без предка

У меня есть проект GAE, написанный на Java, и у меня есть некоторые мысли о HRD и проблема, которую я не знаю, как решить.

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

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

Я был бы рад услышать ваше мнение по этому поводу, а также то, что считается лучшей практикой в ​​подобных ситуациях. Я использую Objectify для GAE, если это что-то меняет.

5
задан Joel 5 April 2012 в 13:14
поделиться