2012-02-23 2 views
0

사용자 당 데이터베이스 인스턴스를 저장하면 사용자가 다시 연결할 때마다 인스턴스가 생성되지 않도록하는 것이 효율적인지 궁금해했습니다. 예를 들어 사용자는 검색 메커니즘을 사용하려고하므로 서버에 요청을 보내면 요청 당 새 데이터베이스가 만들어집니다. 그러나 사용자가 탭이나 브라우저를 닫아 종료하기로 결정할 때까지 한 번만 저장하는 방법이 있습니다 ... 세션마다 소리가 들리지만 세션을 사용하는 것은 나쁜 생각 일 수 있습니다. 일부는 이전에이 질문을했지만 대답을 찾을 수 없다고 생각했습니다. 인스턴스를 그대로 남겨 두거나 (또는 ​​어쨌든 서버가 나를 위해 수행합니까?) 수동으로해야합니까? 어떻게해야합니까?사용자 당 데이터베이스 인스턴스/연결 저장 ASP MVC

답변

2

그대로 두십시오. 대부분의 ADO.NET 드라이버는 연결 풀링을 사용합니다. Connection.Close()을 호출하면 연결이 실제로 닫히지 않습니다. 그들은 단지 수영장으로 돌아갑니다.

+0

ohai. 괜찮습니다. 결과 집합을 데이터베이스에서 저장하고 싶지만 나중에 구문 분석을 위해 결과 집합을 사용하고 싶다면 ... 결과 집합을 저장하는 것이 더 좋습니까? 아니면 쿼리를 다시 실행해야합니까? 후자는 비교에서 느린 것 같습니다. 차이는 단지 ms 또는 초일 수도 있습니다. –

+0

나에게 조숙 한 최적화와 같은 소리가납니다. 그것이 입증 된 것이 아닌 한 아무 것도하지 마십시오. 대부분의 최적화는 읽기 쉬운 코드로 이어집니다. – jgauffin

+0

고마워, 나는 기쁘다. 나는 결과 집합을 얻기 위해 쿼리를 실행하고 사용자가 원하는 결과 집합을 파싱하는 것에 대해 걱정했다. –

관련 문제