A long time ago I wrote a cache plugin: https://wordpress.org/plugins/wp-ffpc/
While it can utilize memcache(d) and some nginx rules to completely bypass PHP, the most efficient way was to use APC. At that time APC was quite widely used, and has a user cache besided the code cache. Nowadays there’s opcache, and, if installed by hand, APCu, so sadly that plugin is not viable for widespread use, and it never had the code quality to even be mentioned as core functionality.
However, it taught me a lot of things, mainly the fact that external caches - nginx, varnish, etc - are quite dumb. They never serve x-pingback headers (though this is about to die out), real last modified dates, etc. They also require a good understanding of the server side, which most users don’t have, and, on shared hosting, it’s not even an option.
I still believe caching should be part of core, but it’s a very, hard, tricky topic, especially when it shouldn’t rely or require external components.
Filesystem level caching is nice, because all OS level cache will slurp it in, but it can be harsh on the drive. If a tmpfs-like in-memory fs is available, that could be used instead.
(I’m just brainstorming; as mentioned, I don’t have a ready solution/proposal).
~ posted by Peter Molnar