OPcache предназначен для кэширования скомпилированного байт-кода, это тесно связано с повышением производительности. memcache(d) и mongodb - это внешние (по отношению к moodle и php) сервера, которые можно использовать для хранения кэша данных. memcache(d) - для хранения кэша, жизнь которого непродолжительна, mongodb - для хранения долгосрочного кэша. Альтернативой этих схем кэширования - кэширования средствами самого moodle в памяти процесса php, в механизме сессий php и в файлах в папке moodledata.
Мои личные измерения показывают, что если всё это находится на одном и том же сервере, то стандартный механизм кэширования работает в разы быстрее. Использовать memcache(d) и mongodb целесообразно только в том случае, если у вас
несколько
серверов и вы хотите использовать общий кэш.