pgbouncer is kinda happy living almost anywhere.
Putting it on separate vms means you can reconfigure when needed for
say another db or web server without having to edit anything but the
pgbouncer vms.
Putting it on the db servers means that if a db server goes down then
you need to reconfigure the app side to not look for them
Putting them on the app side means you have to configured according to
how many app servers you have etc.
It all really depends on your use cases. but putting it on the www
servers works fine and is how I've done it many times in the past.
Thanks for the reply...
But as I'm using two web servers, do I have to put pgbouncer on both of them?
Not sure how is going to work as I have two web servers