How to Make IOT Board work 24/7 ?

I Made a PCB which has

  1. Atmega328p-pu
  2. SIM800L
  3. Lm2596 based power supply gives 4v 2A to GSM
  4. BMP180
    This board is connected to BLYNK server, It worked properly for two days,every second it pinged proper sensor data to BLYNK server, but today It was disconnected from network, Then I had to manually restart the Device, it again started to work normally, but I don’t want to manually Do this, I want to use this in Agricultural field, how to make it work forever without human intervention ?

I want to know

  1. How IOT Product manufacturers solve these kind of problem
  2. Do I need to use Reset & supervisor IC?
  3. Do I need to turn off and On every hour ?

If you are using a I2C port expansion screen. The methods in the wire.h library are blocking. That is, due to a minor interference, they will wait forever for a response under the protocol.