#security #caching #memcached #shared-hosting
#Безопасность #кэширование #memcached #общий хостинг
Вопрос:
Я прочитал этот вопрос, и грошмал сказал, что
Поэтому использовать memcached как любое сетевое решение, особенно в среде хостинга, просто неразумно.
Итак, какой метод мне нужно сделать, чтобы сделать мой сайт быстрее? В моем случае мой ввод-вывод всегда достигает своего предела из-за использования запроса к базе данных для каждого запроса. Я думаю, что Memcached — это единственный способ решить мою проблему, но они сказали, что неразумно использовать его в среде хостинга (shared). Я тоже нахожусь в среде общего хостинга, итак, что мне нужно для этого?
Ответ №1:
Я думаю, что ответ содержится в ответе symcbeans на тот же вопрос:
Шифрование всех данных, которые вы храните в memcache, решило бы проблему раскрытия (но создает проблему управления ключами). Это не предотвращает повреждение данных.
Решите проблему управления ключами так же, как вы решаете ее для своего основного источника данных. Если это решение достаточно хорошо для основного источника данных, оно достаточно хорошо и для кэша.
Что касается повреждения данных, простого сбоя сервера будет достаточно, чтобы уничтожить ваши данные. Если вы обеспокоены повреждением, вам не следует полагаться на Memcached с самого начала.
Комментарии:
1. Проблема с управлением ключами заключается в том, что ключ повреждается или что-то в этом роде? Что касается данных о повреждении, какова ошибка сервера? и моя база данных будет уничтожена?
2. Проблема управления ключами заключается в том, где хранить ключ шифрования. Храните его там, где вы храните пароль к вашему основному источнику данных. Сбой сервера — это завершение работы и перезапуск вашего сервера по какой-либо причине. Если это произойдет, все, что хранится в Memcached, исчезнет. Но поскольку это всего лишь кеш (или?), Это не должно быть большой проблемой.
3. итак, я использую ключ для шифрования, затем я всегда извлекаю его из базы данных или сохраняю в кэше?
4. @googol8080 Я не уверен, что понимаю ваш вопрос. Вы используете ключ для шифрования всего, что попадает в кэш, и расшифровываете все, что выходит из него. Вы не сохраняете ключ в кэше — это сделало бы шифрование бессмысленным.
5. Затем каждый раз, когда я проверяю кеш, я иду в db, ищу ключ, а затем расшифровываю его?