We are currently evaluating fly to migrate in from another provider.
I’ve replicated a few of our key components into the Fly env as described below but during load testing we are observing network-related errors reading from Postgresql.
The exact same JMeter load tests executed against the old hosting provider from the same load runner in Azure do not experience any errors. The old host has a very similar configuration to what we’ve provisioned at fly (see below)
The tests have been run repeatedly against fly and the old provider with the same results.
Although neither PG or the API boxes are showing any significant load we have tried have tried scaling the fly cpu’s, memory, # instances and # of nodes in the PG cluster (from 1 to 3 replicas). Regardless of configuration, failures commence at around 50 reqs/sec and become quite unstable at 100 req/sec.
The error being logged by our .net core API while querying Postgresql is:
System.IO.EndOfStreamException: Attempted to read past the end of the stream. → Npgsql.NpgsqlException (0x80004005): Exception while reading from stream
The fly config is:
API - shared-cpu-1x@512mb, 1 node
PGSql - shared-cpu-2x@512mb, 1 node
The old hosting provider config is:
API - Shared 1x CPU @ 512mb, 1 node
PGSql - Shared 1x CPU @ 512mb, 1 node
Appreciate any thoughts or direction on possible causes.