title: Best practice: Keep TCP/IP connection open or close it after each transfer?
body: <p>My Server-App uses a TIdTCPServer, several Client apps use TIdTCPClients to connect to the server (all computers are in the same LAN).  </p>
  
  <p>Some of the clients only need to contact the server every couple of minutes, others once every second and one will do this about 20 times a second.</p>
  
  <p>If I keep the connection between a Client and the Server open, I'll save the re-connect, but have to check if the connection is lost.</p>
  
  <p>If I close the connection after each transfer, it has to re-connect every time, but there's no need to check if the connection is still there.</p>
  
  <p>What is the best way to do this?</p>
  
  <p>At which frequency of data transfers should I keep the connection open in general?</p>
  
  <p>What are other advantages / disadvantages for both scenarios?</p>