Кешировать можно все, что лежит на диске или в БД. Если бы Вы писали на чем-то вроде PHP, то был бы смысл в Memcached, просто поставив его между СУБД и приложением, кешируя результаты запросов можно значительно увеличить производительность. А вот использовать его с node.js я не вижу смысла, потому, что в ноде можно и так держать все в структурах данных в памяти приложения, ведь нодовские приложения "долгоиграющие", они не перезапускаются при каждом следующем GET/POST запросе и не освобождают память. Поэтому мы можем разместить в оперативной памяти кеш прямо внутри приложения и сэкономить на межпроцессовом взаимодействии (memcached это все же другой процесс). Но от межпроцессового взаимодействия все же нельзя полностью отказаться, если один процесс ноды не справляется, то нужно запускать несколько и приклеивать пользователей к процессам (ip sticky, cookie sticky), если же нужно будет организовать взаимодействие между двумя пользователями, приклеенными к разным процессам, то тут нам поможет Redis, ZMQ, RabbitMQ для передачи событий из процесса в процесс.