Jak pracujesz nad ograniczeniami klucza / wartości memcached?

Memcached ma ograniczenia długości dla kluczy (250?) i wartości (prawdopodobnie 1MB), a także (według mojej wiedzy) niezbyt dobrze zdefiniowane ograniczenia znaków dla kluczy. Jaki jest najlepszy sposób na obejście tych, według Ciebie? Używam pamięci podręcznej API Perla :: Memcached.

Obecnie robię specjalny ciąg znaków dla wartości klucza głównego, jeśli oryginalna wartość była zbyt duża („części: <numer>”) iw tym przypadku zapisuję <liczba> części z kluczami o nazwie 1+ <klucz główny> , 2+ <główny klucz> itp. W niektórych przypadkach wydaje się to „OK” (ale niechlujne), nie jest to dobre dla innych i nieodłącznym problemem jest to, że w niektórych przypadkach może brakować niektórych części (więc przestrzeń jest marnowana za utrzymywanie innych i marnowanie czasu na ich czytanie).

Jeśli chodzi o kluczowe ograniczenia, można prawdopodobnie zaimplementować haszowanie i zapisać pełny klucz (aby obejść kolizje) w wartości, ale nie musiałem tego jeszcze robić.

Czy ktoś wymyślił bardziej elegancki sposób, a nawet Perl API, który obsługuje arbitralne rozmiary danych (i kluczowe wartości) w sposób przejrzysty? Czy ktoś włamał się do serwera memcached, aby obsługiwać dowolne klucze / wartości?

questionAnswers(5)

yourAnswerToTheQuestion