In a new post to his site Ulf Wendel shows an alternative use for the PHP Memcache functions - using them to query MySQL tables (InnoDB) in much the same way. He also tosses in Redis as another version to compare the performance against (for fetching key/value pairs).
PHP users can use two client protocols to query MySQL 5.6 and later. Not only standard SQL access but also faster key-value access to InnoDB tables is possible using the Memcache protocol. The MySQL benchmark team reports crazy figures. Of course, on hardware that makes the average PHP meetup visitor roll his eyes and say "yeah, Oracle, *yawn*…". I've repeated my plain PHP benchmarks on an i3 desktop. And, I've added Redis to the game.
He goes through and compares a few different things with some simple benchmarks around operations per second:
- MySQL 5.6 Memcache vs. MySQL 5.7 Memcache vs. Memcache vs. SQL
- MySQL vs. Memcache vs. Redis
For each he's graphed out the results of the benchmarking with some surprising results for those that may thing MySQL isn't as suited as Redis for something like this.