Использование Redis для кэширования в памяти и DynamoDB (или Cassandra) для сокращения URL - PullRequest
0 голосов
/ 06 октября 2018

Я начинающий программист и создаю веб-сервис для сокращения URL, и я думаю, какой NoSQL использовать.Мне нужно хранить только оригинальные и сокращенные URL-адреса, поэтому Redis - очевидный выбор, поскольку он очень быстрый.Но Redis ограничен размером памяти, в то время как другие NoSQL-ключи, такие как DynamoDB или Cassandra, хранят данные на диске.Как вы думаете, имеет ли смысл использовать Redis для кэширования запросов с интенсивным чтением и одновременно использовать другие NoSQL в качестве базы данных?

1 Ответ

0 голосов
/ 07 октября 2018

Да, возможно, вы можете использовать Redis для кэширования и использовать другой инструмент NoSql для сохранения.На самом деле, вы должны учитывать сложность вашего проекта, например, количество одновременных посетителей, оборудование, которое вы можете себе позволить, и т. Д. Redis также может хранить данные на диске, поэтому при перезапуске сервера ваши кэшированные данные сохранятся.Тем не мение;он также хранит их все в памяти, что является секретом того, что Redis так быстр.Вам также следует подумать о том, чтобы хранить данные в Redis как двоичные файлы, а не Json, что значительно уменьшит использование памяти.Вы можете использовать библиотеки кодирования, такие как Protobuf, которые помогут вам сэкономить огромное количество памяти.Если в ближайшем будущем ваш проект станет более сложным, вы также можете использовать RDMS в качестве сервера базы данных для ваших будущих потребностей, которые обеспечат вам различные функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...