Sto lavorando a un programma basato su hash. La mia domanda è la HashCode di una stringa rimarrà la stessa per l'intera applicazione.L'hashcode di una stringa sarà lo stesso per l'intera applicazione?
Il motivo mi è stato chiesto questo perché, il KetamaMemcachedSessionLocator all'interno Mecached Server funziona in questo modo Se ci sono due server su cui è in esecuzione Memcache, voglio individuare una chiave da un server particolare.
String key = "MyString";
int keyid = key.hashCode();
int v = keyid % 1; //(I assume that this will contact the First Server to retrieve that value)
int v = keyid % 2; //(I assume that this will contact the Second Server to retrieve that value)
String value = MemcachedClient.get(key, v);
Seguito alla realizzazione degli scenari basati su questo sito
http://dev.mysql.com/doc/refman/5.0/en/ha-memcached-using-hashtypes.html
si prega di condividere le vostre opinioni, in caso se trovate eventuali problemi se il modo sopra di esso funziona.
Le collisioni non sono un problema qui, e sto usando Java 1.6, non c'è modo per qualche anno che cambieremo la versione di Java, quindi andrò con questo approccio. Grazie . – Pawan