일단 빈번히 발생한다면 비효율적인게 맞습니다. 소켙이나 데이터베이스를 여는 작업은 비용이 비싼 작업에 속합니다. 그래서 보통의 경우, 데이터베이스 같은 경우는 앱이 시작할 때 데이터베이스를 한번 열고 앱이 종료될 때 한번 닫습니다. 소켙도 비슷한 맥락으로 봐야하지만, 데이터베이스는 로컬에 존재하는 대신 소켙은 네트워킹에 해당하므로 동일할 수는 없을 겁니다. 서버와 연결이 끊어질 수도 있구요. 먼저 앱이 안정적으로 동작하는 것이 우선이므로 커넥션을 열어두고 사용하는 것이 좋은지 현재와 같은 것이 좋은지 비교해 보시는게 좋은 것 같네요. 그리고 지금처럼 소켙을 매번 열었다 닫는다면, 차라리 HTTP를 사용해서 처리하는게 나을 것 같은데요.