2009-03-10 2 views
2

여러 클라이언트 요청을 동시에 처리해야하는 .NET WCF 서비스가 있습니다.동시 데이터베이스 액세스를위한 입출력 완료 포트

이 서비스는 각 클라이언트 요청에 대해 데이터베이스 호출 (읽기 및 쓰기)을 수행합니다.

동시 처리 성능을 향상시키기 위해이 코드의 데이터베이스 액세스 부분에 IO 완료 포트가 유용 할 수 있습니까? 그런 상황에서 어떻게 사용될 것입니까?

답변

0

데이터베이스 읽기 및 쓰기 작업 방식에 따라 다릅니다. 일종의 직접 소켓 또는 파일 입출력 호출을 사용하는 경우 동시에 서비스 할 수있는 호출 수를 늘릴 수 있습니다. 그러나 실제로 데이터베이스 읽기/쓰기 작업을 수행하는 시간은 서버에 따라 다릅니다.

하지만 ODBC/OLEDB/ADO/ADO.NET을 통해 데이터베이스에 액세스하는 경우가 많습니다.이 경우 해당 라이브러리는 IO 완료 포트를 사용하지 않습니다. 그리고 IO 완료 포트를 사용할 수 없습니다.

IO 완료 포트는 IO가 완료 될 때까지 스레드가 차단되지 않도록합니다. 이를 비동기식 읽기/쓰기와 같이 생각하십시오.

관련 문제