There are always people that take more than they give. If your community has more of these people then the ones that are willing to give, it will fail.
The higher the amount of people in your community the higher the amount of people that take more than they give.
Communism fails on a bigger scale, because the more people in the community, the higher the amount of people wich connect to few others and the higher the amount of distrust towards others.
It's a concept that is unscaleable to a bigger or more wide spread population.