RDS Database Migration Series - Integrating Ruby on Rails applications with RDS Proxy

This page summarizes the projects mentioned and recommended in the original post on dev.to

InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. pgbouncer

    lightweight connection pooler for PostgreSQL

    Before migration, we were using PgBouncer. We hosted multiple databases (for multiple applications) per cluster, and it was often the case that a single application required 300 or even 400 hundred connections alone. Hence, the connection pooler was a natural solution to the issues we had. We were really happy with it as it was simple to integrate with, and it did the job, yet we decided not to use PgBouncer anymore as AWS does not offer it as a managed service, and the entire point of migration was to not self-host database anymore. We were left then with RDS Proxy as the only available solution. It looked pretty straightforward to add, and since it was the dedicated option for RDS, we expected that things would work out-of-box, assuming that we keep the same config as for PgBouncer (which mainly was disabling prepared statements and using transaction-level advisory locks over session level ones). Well, it turned out that we were wrong.

  2. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  3. ruby-pg

    A PostgreSQL client library for Ruby

    Thanks to some available articles and existing Github issues, we figured out that we needed to move some config parts from the pg gem and Rails Postgres adapter to the RDS Proxy initialization query. "Moving" meant some heavy-monkey patching and adjusting some surprising low-level config and setting Encoding.default_internal to a nil value, which pg gem depends on. However, it seems like the issue was fixed in pg 1.5.4, so making sure the gem is up-to-date will help avoid the problem.

  4. Ruby on Rails

    Ruby on Rails

    Thanks to some available articles and existing Github issues, we figured out that we needed to move some config parts from the pg gem and Rails Postgres adapter to the RDS Proxy initialization query. "Moving" meant some heavy-monkey patching and adjusting some surprising low-level config and setting Encoding.default_internal to a nil value, which pg gem depends on. However, it seems like the issue was fixed in pg 1.5.4, so making sure the gem is up-to-date will help avoid the problem.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • EvilSeed: A tool for creating partial dump of database based on app models

    1 project | news.ycombinator.com | 19 Feb 2025
  • The Mythical IO-Bound Rails App

    3 projects | news.ycombinator.com | 25 Jan 2025
  • Rails for Everything

    18 projects | news.ycombinator.com | 1 Jan 2025
  • Introducing the `script` Folder in Rails 8 and a New Gem for Browser-Based Data Migration

    4 projects | dev.to | 20 Dec 2024
  • Optimizing Ruby's JSON, Part 1

    9 projects | news.ycombinator.com | 18 Dec 2024