Сообщение от
DeimoS
А теперь попробуй погуглить пропускную способность MySQL сервера ;) Для него твои 1.000.000 простых запросов будут плёвым делом, даже если ты их за секунду все отправишь. Он и миллион сложных запросов прожевать сможет спокойно, если и таблицы, к которым идёт обращение, и сами запросы составлены как подобает. А вот обращаться к подобной таблице с миллионом записей и без адекватных индексов постоянно будет гораздо затратнее (особенно если автор решит прямо из неё выгружать номера при запуске сервера).
Да и кто сказал, что нужно просто рандомить? -_- Для кого я уточнил в своём сообщении, что нужно составить АЛГОРИТМ? Достаточно просто, например, сначала рандомно формировать номера, начинающиеся с A (все остальные значения уже рандомные) и если с базы данных пришло, допустим, 30 положительных ответов (номера уже существуют), менять начальную букву на B. При желании, можно придумать алгоритм, в котором вообще генерироваться будут только цифры, а буквы уже подбирать по другому алгоритму (например, исходя из получившихся цифр). Или же добавить ещё подобие регионов, как это сделано на тех же Российских номерах, дабы увеличить количество возможных вариантов. Всё только от фантазии и изгиба рук зависит.
А привязывать всю систему к одной заранее заготовленной таблице - такое себе решение. Мало того, что, как я уже сказал, общение с такой таблицей далеко не самым оптимизированным путём пойдёт, так ещё и есть риск заполнения владельцами всех номеров, что там будут, если автор не будет следить за "сроком годности" информации, которая хранится у него в таблице. Вгонять себя в рамки, конечно, проще и кажется, что это оптимальнее, но в перспективе от такого подхода есть только вред, увы.