(Got an error reading communication packets) but no error on client
Try to increase your connection pool min size 5 instead of 0.   

From DB side, verify the timeout variables  and connection pool variables like 

wait_timeout &amp; interactive_timeout &gt;=  app connection pool timeouts.  (db timeouts should not be less than app timeouts).    And check to make sure the value of max_allowed_packet is high enough. Lastly increase enough net_read and net_write timeouts from DB side.