Назад | Перейти на главную страницу

Задержка DynamoDB почти такая же, как задержка RDS?

Я изучаю использование AWS Lambda через Laravel Vapor. Отказ от использования Redis может сэкономить нам ~ 56 долларов в месяц (t2.small - ~ 24 доллара, NAT Gateway - ~ 32 доллара).

Вместо Redis я планирую использовать DynamoDB, который намного дешевле. Практически те же мысли в этой теме https://twitter.com/JackEllis/status/1246500143425146880

Мой вопрос: имеет ли смысл использовать DynamoDB в качестве уровня кеширования поверх RDS или задержка практически такая же, что означает, что мне лучше просто полагаться на внутреннее кэширование MySQL?

Для контекста, в Laravel есть пакет под названием laravel-model-caching, который кэширует результаты запросов. С Redis в качестве драйвера кеширования это имеет смысл, потому что вы получаете сверхнизкую задержку по сравнению с mysql даже с кешированием mysql.

Но теперь, если я избавлюсь от Redis, кеширование запросов с использованием пакета может не иметь смысла, если уровень кеширования в любом случае является другой БД (Dynamo).

Верно ли мое мнение, что задержки DynamoDB и RDS не сильно отличаются?

Пара заметок ...

  1. DynamoDB может похвастаться постоянная задержка в миллисекундахЯ сомневаюсь, что MySQL может этого добиться. Оба, конечно, зависят от производительности сети экземпляра, например t2.something сеть медленнее, чем c5n.something.

  2. У вас есть только один узел Laravel или несколько? Если у вас есть только один установить Redis локально, нет необходимости в дополнительном экземпляре EC2.

  3. Redis ElastiCache не требует NAT

  4. DynamoDB не так дешев, как кажется. В на запрос цена может быть небольшой, но использование его в качестве кеша может оказаться довольно дорогим, если вы забьете его большим количеством запросов.

Надеюсь, это поможет :)