What caching basically does is reduces the file I/O the number of roundtrips to the database
Note : You can only see a huge difference in load time when you have more requests
Shared memory - Shmop is an easy to use set of functions that allows PHP to read, write, create and delete Unix shared memory segments
Note : if you do a Google search it will always says that shared memory is faster than every other .But on my benchmarks it wasn't the case (I'm still trying to figure it out)
Memcached is a high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.
This extension uses the libmemcached library to provide an API for communicating with memcached servers. It also provides a session handler (memcached).
This is your usual mysql table except it has memory engine which stores your data in memory not in database(file).
Note : this is not fast as shared memory or redis .
Redis is an open-source, networked, in-memory, key-value data store with optional durability
Redis has clients written for many programming languages such as C# , PHP ,JAVA , PERL , NODE JS ETC .
Note : Phpredis and predis are the most popular clients . Having said that phpredis is the fastest since its written in c