mysql 테이블에 동시에 쿼리를 보내는 것에 관련한 질문입니다.
글쓴이: facered79 / 작성시간: 화, 2006/04/18 - 4:18오후
현재 많은 수의 쓰레드(1~255) 개 정도 가 생성되고
각 스레드마다 같은 테이블을 주기적으로 읽고 쓰는 역할을 수행 합니다.
쓰레드이기 때문에 시간적으로 동시에 테이블에 접근할 경우가 생길거라 예상되는데요.
이러한 경우에 mysql 의 경우 몇개의 쿼리까지 동시에 처리가 가능한지에 대한 질문 드립니다.
그리고, 동시에 접근했을경우 에러를 리턴한다면 어떤 에러를 리턴하는지에 대한 조언도 해주시면
감사하겠습니다.. 그럼.
Forums:
데이터베이스
데이터베이스 자체에서 테이블에 대한 동시성에 대한 처리를 위한 메카니즘이 제공된다고 볼 수 있습니다. 이는 클라이언트 쓰레드의 문제보다는 대체로 데이터베이스문제로 풀어야 할듯합니다. 특히, Insert/delete/update가 있다면, 데이터베이스의 transaction으로 문제를 풀거나, 큐메카니즘을 (DB gateway/middleware) 구현하는게 좋을듯 합니다.
------------------ P.S. --------------
지식은 오픈해서 검증받아야 산지식이된다고 동네 아저씨가 그러더라.
------------------ P.S. --------------
지식은 오픈해서 검증받아야 산지식이된다고 동네 아저씨가 그러더라.
그냥 쿼리 수준으로 처리하는 건 어떤가요?
DELAYED나 LOW_PRIORITY 옵션, 혹은 INSERT ... ON DUPLICATE UPDATE 등의 문법이 mysql에 있습니다. (DELAYED가 mysql 확장 문법으로 알고 있습니다)
LOW_PRIORITY는 써본 봐로 확실히 효과가 있었고, DELAYED는 중복 접근이 아주 많을 경우에는 오히려 mysql에서 생기는 쓰레드 처리 비용이 어느 정도 생기는 것 같습니다만 그래도 쓸만할 겁니다.
댓글 달기