Я работаю над сайтом, который позволяет людям создавать профили онлайн. Мне было интересно, если это правильный выбор, чтобы использовать идентификаторы MySQL AUTO_INCREMENT
ed в качестве моих идентификаторов пользователя. Также с учетом того, что мне может понадобиться дублировать базу данных на нескольких серверах за один день?
например. Вы бы использовали этот метод для идентификаторов пользователей на таких сайтах, как Twitter или Facebook?
Я пытался генерировать идентификаторы пользователей с помощью PHP раньше. Я использовал что-то вроде этого:
function generateID() {
$possible = "1234567890";
$code = "";
$characters = mt_rand(7,14);
$i = 0;
while ($i < $characters) {
$code .= substr($possible, mt_rand(0, strlen($possible)-1), 1);
$i++;
}
return $code;
}
Это дало тип значений, которые мне нужны, но мне всегда приходилось проверять в БД, если этот идентификатор еще не существует.
Разве нет лучшего подхода?