Lemmy is setup quite ok to scale users and traffic, since the users are (theoretically) distributed over many instances. In reality it doesn’t work out perfectly, since people generally are more likely to join the biggest instances, so there’s quite an imbalance there.
But what’s worse is content replication. As soon as an user requests to look at a community for the first time, the whole community will get completely replicated on that user’s instance. So any decently sized instance will pretty much replicate almost all communities, at least all that have content.
There is no scaling or storage balancing mechanic here. Even if no user ever touches that replicated community again, it will continue to be replicated, will fetch all new posts/comments and store them in the instance.
There is also currently no workaround to this (like there is for users/traffic, which you can just tell to join a different instance).
So if Lemmy ever gets to the point where gigabytes of data gets posted every day (which is only about 1000 pictures a day) storage demand will get so high, that hosting an instance will be seriously costly, which will probably lead to instances without any kind of cash flow shutting down, which will in turn lead to more users and thus traffic on the remaining instances.
I guess, that’s one of the biggest technical (and conceptual) roadblocks that need to be addressed if Lemmy ever grows that big.