В настоящее время я использую базы данных Berkeley DB с Java-сервером для высокопроизводительного дискового кэша. При условии, что вы прогреваете его, прежде чем позволить ему столкнуться с живым трафиком, ваша частота обновления низкая, а ваш рабочий набор умещается в памяти, буферный кеш Linux отлично справляется со своей задачей. Это значительно быстрее, чем memcache, отчасти потому, что вам не нужно переключать контекст на memcached и обратно при чтении. Мы очень довольны выступлением.
Мы собираемся добавить в кеш некоторые данные, которые нам неудобно оставлять на диске в виде обычного текста. Мы измерили и недовольны производительностью расшифровки во время обработки запроса, поэтому мы ищем решения, которые расшифровывают только тогда, когда данные загружаются с диска, а затем сохраняют их доступными в памяти.
Прежде чем создавать что-то, что делает это, я хотел выяснить, можем ли мы просто вставить зашифрованную файловую систему и продолжать полагаться на ОС для управления кешем для нас. Я не нашел никакой документации, в которой бы говорилось, на каком уровне выполняется расшифровка.
Итак, мой вопрос: может ли кто-нибудь сказать мне, для какой-либо конкретной зашифрованной FS Linux, выполняется ли шифрование (en|de) ниже буферного кеша (и, следовательно, кеш содержит открытый текст) или выше (и кеш содержит зашифрованный текст)?