#redis #memcached #in-memory-database
#redis #memcached #база данных в памяти
Вопрос:
На основе приведенных ниже сравнений латентности, приведенных вhttps://gist.github.com/jboner/2841832 Чтение с SSD-накопителя почти аналогично сетевому чтению в том же центре обработки данных с точки зрения стоимости.
Я пытаюсь понять, будет ли развертывание Redis на отдельном узле / кластере эффективным из-за введенной задержки в сети? Не будет ли развертывание Redis на самих узлах приложений лучшим вариантом? Предполагается, что узлы приложений используют SSD-диски, а данные распределены по узлам приложений.
Это для большого развертывания с более чем 10 узлами приложений.
Ответ №1:
Очевидно, что если вы сможете запустить Redis на том же узле, что и ваше приложение, вы получите лучшую задержку, чем по сети (и вы также можете использовать сокет Unix, чтобы уменьшить ее еще больше).
Но вопросы, которые вам нужно задать себе:
- Как вы собираетесь распределять данные между узлами приложения?
- Как насчет высокой доступности?
- Есть ли случаи, когда одному узлу приложения потребуются данные с другого узла?
- Можете ли вы быть уверены, что нагрузка будет равномерно распределена между узлами, поэтому ни один узел Redis не выйдет из памяти?
- Как насчет масштабирования? Как вы собираетесь повторно загружать данные?