How to disable HTTP/2 for my elixir app

As part of testing the migration of our Elixir/Phoenix app from Heroku to Render, we noticed that the same Elixir app that is currently hosted on Heroku needed way less DB connection pool, POOL_SIZE=5 ( which end up usually around ~ 20 for staging) but when we migrated to Render the app seems to keep dropping connections up until we set the POOL_SIZE=70, which can cause the DB concurrent connections to spike over 300.

My co-worker and I suspect this may be due to Heroku is on HTTP/1 vs. Render is HTTP/2, and I found below article, and our site also serves a lot of charts as contents which tend to cause multiple API calls on a single page load to gather chart needed plot data.

My question is, is there a way for me to disable HTTP/2 service on Render? and only serve to HTTP/1.1 and HTTP/1.2?

Hi foobar_e,

Unfortunately disabling HTTP/2 won’t be possible for services hosted on Render. Is POOL_SIZE=70 the lowest number that you are able use where connections aren’t dropped?

Yes correct - even at POOL_SIZE=70 it seems the app drops connection at times, for production test I updated it to 80

So in this case, what would you recommend as some alternative methods to limit the concurrent client connections and serve them in sequential orders?

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.