Public servers were a temporary hack and nowadays most of the community is putting their public servers down. It's not a good idea for scaling, but above all, public servers connect you with strangers, which is basically undesired for a social network with a similar use case as Facebook.
There should be a pub server for each real community. I know it's not the most user friendly, but it suffices that one person in a real community of friends is techy enough to set it up, and it's not that hard: http://butt.nz/install?url=https://github.com/ahdinosaur/ssb... (this tool enables you to install your own server with a few clicks)
Intersections are allowed. It's not like you need strictly one server per community, because servers are just mirrors of each community member. In fact, when a server goes down, no data is lost and it's easy to put a new one up.
There should be a pub server for each real community. I know it's not the most user friendly, but it suffices that one person in a real community of friends is techy enough to set it up, and it's not that hard: http://butt.nz/install?url=https://github.com/ahdinosaur/ssb... (this tool enables you to install your own server with a few clicks)