Everything we did up to this point was restricted to the confines of the Raspberry Pi hardware. Although the Pi is a marvel of engineering in and of itself, it still comes with some limitations due to its small size. While hosting small-scale personal applications should not be much cause for concern, it would not be efficient to host a large-scale application entirely on the Pi.
In addition to this, letting others access your application would be another challenge altogether. How does one ensure that their Pi is always online when people need it? How can we take the load of multiple users without compromising our hardware? How can we ensure that the connectivity from the Pi (which is running in our home) is seamless to someone trying to access it potentially across the world?
The answer to all these questions is that it is nearly impossible...