The idea to have frontends is to be able to differentiate the participants based on the geographic region (like you mention you have 4 different ones).
Inside each Meet config you have info about the geo region. Each JVB, on the other end, also has geo region info. So to do a geobalancing you have to somehow stick these together - one way to do this is to use multiple webservers in front of multiple Meets and balance over them.
Another way to do this is for example to have only one web server and inside it serve different config.js to the users coming from different geo regions. You can use GeoIP module in Nginx, for example - https://docs.nginx.com/nginx/admin-guide/dynamic-modules/geoip2/
There could be also other options, these are just off the top of my head. These are just different infrastructure planning strategies, the shards based one with haproxy balancing is the most widely used, Jitsi team uses it too, so you’ll find most answers for it here. A geoip path with only one web server is also an option, but I don’t know if anyone is using it here, it’s a bit more exotic setup.
At the end of the day it all comes down to running costs. Of course you have to take into account the more exotic setup will be harder to support, plus with only one webserver you lose the failover feature of shards/haproxy setup…