Use StringData for APC hash-map keys
Summary: ConcurrentSharedStore and HotCache use const char* as their key, which results in duplicate copies of uncounted keys, redundant hash and equality computations, and weak typing (void casts everywhere). Use a StringData instead. If the input key isn't already an uncounted string, we turn it into one. We use pointer equality to save on lookups, which will help for static keys in particular.
Reviewed By: ricklavoie
Differential Revision:
D28974867
fbshipit-source-id:
638635087ca6d40b0c365505d90a69fec38222a4