Set rates for us is 0.4 a sec.
I think our resolves are bigger since they ended up stored in slabs of 100k to 600K (I'll double check this,a nd make sure we are not storing extra data that is not needed)
>memcached-tool localhost:11211 display
# Item_Size Max_age Pages Count Full? Evicted Evict_Time OOM
1 96B 961s 1 1 yes 0 0 0
3 152B 774156s 1 6898 yes 1987 773608 0
4 192B 550796s 30 163829 yes 131636 550791 0
5 240B 612071s 1 4369 yes 3254 610077 0
6 304B 1207036s 3 10347 yes 776 1206805 0
7 384B 1288181s 1 1201 yes 0 0 0
8 480B 1304973s 1 560 yes 0 0 0
9 600B 1284988s 1 1042 yes 0 0 0
10 752B 329037s 3 4182 yes 807 328999 0
11 944B 1286152s 2 2011 yes 0 0 0
12 1.2K 781863s 8 7079 yes 867 778023 0
13 1.4K 339971s 12 8496 yes 3331 339897 0
14 1.8K 675363s 17 9588 yes 2753 675424 0
15 2.3K 602837s 27 12177 yes 3678 602737 0
16 2.8K 339080s 15 5415 yes 2059 338979 0
17 3.5K 795239s 6 1728 yes 297 794865 0
18 4.4K 1288323s 4 843 yes 0 0 0
19 5.5K 848941s 1 184 yes 13 843636 0
20 6.9K 1194310s 1 32 yes 0 0 0
21 8.7K 1218002s 1 6 yes 0 0 0
22 10.8K 1288216s 1 54 yes 0 0 0
23 13.6K 527816s 1 75 yes 74 588851 0
24 16.9K 782172s 3 180 yes 48 778253 0
25 21.2K 159470s 1 48 yes 109 157140 0
26 26.5K 126427s 2 76 yes 238 86384 0
27 33.1K 614963s 3 90 yes 77 612160 0
28 41.4K 331150s 3 72 yes 129 326978 0
29 51.7K 848968s 5 95 yes 70 845365 0
30 64.7K 709405s 38 570 yes 595 708414 0
31 80.9K 331959s 21 252 yes 408 332110 0
32 101.1K 766833s 15 150 yes 122 764572 0
33 126.3K 627715s 20 160 yes 168 620703 0
34 157.9K 331867s 35 210 yes 341 331336 0
35 197.4K 262477s 35 175 yes 282 262515 0
36 246.8K 683712s 50 200 yes 191 679488 0
37 308.5K 582970s 132 396 yes 358 583415 0
38 385.6K 697045s 68 136 yes 129 693750 0
39 482.0K 690068s 864 1727 yes 1884 690006 0
40 602.5K 770073s 2345 2345 yes 2185 770019 0
Our real problem is the eviction of "production" resolves. In our case, ideally, those resolves should last at least a cycle of 2 weeks (or more) in the cache.
It looks like our "beta", "prerelease" and "developers" resolves are filling the cache and the 'production' resolves get evicted.
So I was thinking on something along the lines of setting a TTL of ~4 weeks for every key, and every time we do a GET and hit the cache we update the TTL of that key. That way the keys that get used often tent to stay on the cache, and other transient keys (for beta or dev environment) get evicted first.