|
25. 03. 2010. | #1 |
novi član
Na probnom radu
Datum učlanjenja: 04.11.2006
Lokacija: Beograd
Poruke: 22
Hvala: 5
9 "Hvala" u 5 poruka
|
Napisao sam mali skript i istestirao 3 metoda:
1. Flexihash sa crc32 2. Flexihash sa md5 3. $item % count ($servers) ["plain"] Pocetno stanje: 5 servera i 10001 element, a nakon toga dodao 1 server i uporedio nizove: Prvi broj je broj elemenata koji se ne nalaze na trazenom serveru nakon promene Drugi broj predstavlja prethodni broj elemenata na serveru Treci broj predstavlja novi broj elemenata na serveru server[0]['crc32']: 0 [2214 - 1728] server[0]['md5']: 0 [2019 - 1649] server[0]['plain']: 1333 [2001 - 1667] server[1]['crc32']: 0 [1701 - 1283] server[1]['md5']: 0 [1731 - 1387] server[1]['plain']: 1333 [2000 - 1667] server[2]['crc32']: 0 [1548 - 1434] server[2]['md5']: 0 [1983 - 1726] server[2]['plain']: 1333 [2000 - 1667] server[3]['crc32']: 0 [2888 - 2530] server[3]['md5']: 30 [1972 - 1612] server[3]['plain']: 1333 [2000 - 1667] server[4]['crc32']: 0 [1650 - 1476] server[4]['md5']: 0 [2296 - 2091] server[4]['plain']: 1333 [2000 - 1667] server[5]['crc32']: 1550 [0 - 1550] server[5]['md5']: 1536 [0 - 1536] server[5]['plain']: 1666 [0 - 1666] Jedino je md5 hash imao kiks nakon promene i to na trecem serveru (nedostaje 30 elemenata). Zakljucak je da sistem funkcionise onako kako se ocekuje. Potom sam izbacio server br 4 i evo kako je Flexihash balansirao (u odnosu na situaciju sa 6 servera): server[0]['crc32']: 937 [1728 - 2665] server[0]['md5']: 651 [1649 - 2300] server[1]['crc32']: 25 [1283 - 1308] server[1]['md5']: 338 [1387 - 1725] server[2]['crc32']: 212 [1434 - 1646] server[2]['md5']: 493 [1726 - 2219] server[3]['crc32']: 76 [2530 - 2606] server[3]['md5']: 244 [1612 - 1856] server[5]['crc32']: 226 [1550 - 1776] server[5]['md5']: 365 [1536 - 1901] |
"Hvala" User za poruku: |
|
|