Eu não trabalho ou desenvolvo para o IMDB nem sei como seu banco de dados está estruturado
eu acho que o número vai aumentar. Você vê, dado que estes números parecem únicos, é mais provável que esteja apenas usando um INT no banco de dados.
se usarmos esta calculadora de bytes UTF-8 , veremos que qualquer número entre 0000001 e 9999999 é de 7 bytes, no entanto, < href="https://stackoverflow.com/a/4850316/1028804"> esta Resposta SO indica
It depends what is the character and what encoding it is in:
...
- A Unicode character in UTF-8 encoding is between 8 bits (1 byte) and 32 bits (4 bytes).
e isto se da causa assumindo que o número está sendo armazenado como uma string UTF-8.
por outro lado, supondo que o IMDB use Microsoft SQL (T-SQL) existem 4 opções de tipos de dados INT, tinyint, smallint, int e bigint. já que a melhor prática é usar o menor tamanho possível para seus dados esperados e os números são de 7 dígitos, se assumirmos que os números na URL são um INT, então podemos ver que o IMDB provavelmente está usando
int | -2^31 (-2,147,483,648) to 2^31-1 (2,147,483,647) | 4 Bytes
isto significa que a sua ID máxima não seria 9.999.999, mas 2.147.483.647. e isso seria menor como a string 2147483647 que é 10 bytes usando nossa calculadora acima
mas por que começar em 0000001 em vez de 0000000001? Eu não sei. o site faz 404 se você tentar link mas se adicionarmos 0s ao início como
todos eles funcionam. mas assim que você cair abaixo de 7 dígitos ele começará a 404. Eu também não sei se o link irá parar trabalhando de repente, mas um bom administrador da web configuraria um redirecionamento 301 para aqueles que poderiam ter a página marcada ou citada como referência