![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 130 Pomógł: 0 Dołączył: 18.09.2021 Ostrzeżenie: (0%) ![]() ![]() |
Hej. Mam bazę ok. 2mln rekordów. Każdemu chcę nadać indywidualny, losowy hash skłądający się z 5-ciu cyfr lub małych i dużych znaków. Stworzyłem coś takiego:
Z początku działa szybko (wiadomo, nie ma jeszcze tyle hashy co się powtarzają) ale pod koniec wolniej. Na obecnej maszynie oszacowałem czas wykonywania się tego kody na 50-100 godzin. Jak mogę to zoptywalizować? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 406 Pomógł: 73 Dołączył: 15.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
Przeoranie tego przez PHP zajmie trochę czasu i zje zasobów. Jeżeli tak może być, to spoko, ale ja raczej szukałbym rozwiązania bliżej bazy danych.
Dla MySQL, można skorzystać z takiego czegoś do generowania hasha:
Nie powinno wygenerować tych samych hashy, więc na spokojnie możesz dodać `unique` na kolumnę. Ten post edytował Salvation 6.01.2023, 22:04:22 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 03:48 |