Edge Computing vs. Cloud Computing for IoT: Which is Best?