2 months ago
I’ve been experiencing slowness issues on my platform since yesterday. I’ve also noticed that these problems tend to recur from time to time.
I use:
US West (California, USA)
US East (Virginia, USA)
EU West (Amsterdam, Netherlands)
Southeast Asia (Singapore, Singapore)
How can I avoid so much instability? Should I get the Enterprise plan?
4 Replies
Status changed to Awaiting Railway Response Railway • about 2 months ago
2 months ago
This thread has been opened as a public bounty so the community can help solve it. The thread and any further activity are now visible to everyone.
Status changed to Open Railway • about 2 months ago
2 months ago
What's your overall infrastructure, maybe it's because a database has too many connections and you could try for example pgBouncer with PostgreSQL, or maybe you need to increase resources (4 core 8 GB should be fine). You could try first giving more details on this thread
skymeshdynamics
What's your overall infrastructure, maybe it's because a database has too many connections and you could try for example pgBouncer with PostgreSQL, or maybe you need to increase resources (4 core 8 GB should be fine). You could try first giving more details on this thread
2 months ago
here my configuration, in my db url i put connection_limit=10
Attachments
skymeshdynamics
What's your overall infrastructure, maybe it's because a database has too many connections and you could try for example pgBouncer with PostgreSQL, or maybe you need to increase resources (4 core 8 GB should be fine). You could try first giving more details on this thread
2 months ago
do you need more info ?
a month ago
Looking at your scale config + the connection_limit=10 note — I think this is connection pool exhaustion, not raw network instability.
You've got 6 total replicas (2 US West + 2 US East + 1 EU West + 1 SEA), each with connection_limit=10 in the DB URL. That's up to 60 concurrent connections hitting one database from 4 regions simultaneously. If your DB's max_connections is anywhere near that (many managed Postgres tiers default to 100 or less, and that pool gets shared with other overhead), you'll get exactly what you're describing — fine most of the time, then connection queuing/timeouts once traffic spikes push you toward that ceiling. That also explains "recurs from time to time" instead of being constant.
Also worth checking: your replicas are already maxed at 32 vCPU / 32 GB (the plan ceiling) — so there's no vertical scaling headroom left either.
Before jumping to Enterprise, try this first:
Check your DB's actual max_connections limit and compare against your real concurrent usage
Add a connection pooler (PgBouncer, or Railway's built-in pooling if available) in front of the DB so replicas share a smaller number of real DB connections instead of each holding 10 direct ones
Consider a regional read replica or cache layer (Redis) for the farthest regions (EU/SEA) so they're not making every read as a live round-trip to a single-region primary DB
Enterprise gets you dedicated infra (no noisy neighbors) but won't fix a connection-limit/architecture bottleneck — worth ruling this out first since it's free to fix.