2009-05-21 5 views
0

0에서 10,000,000 사이의 수백만 개의 정수를 저장해야하는 PHP 응용 프로그램을 작성했습니다. 각 숫자는 1 씩 증가하며 (평균 100 개의 값이 매 초마다 업데이트 됨) 매우 자주 읽 힙니다 (초당 20,000 회의 읽기). 숫자는 야간, 주간, 월간 또는 매년 0으로 재설정됩니다.간단한 트랜잭션을위한 데이터베이스/데이터 저장소

나는 MySQL을 상당히 잘 다루었지만 과장된 느낌이 들었으며 그다지 효과적이지 못했다.

누구든지이 문제를 사전에 처리해야 했습니까? 아니면 적합한 데이터 저장소 시스템을 밝힐 수 있습니까?

답변

0

보유하고있는 메모리 용량 및 유지 기간에 따라 APC 캐시 또는 memcache 만 사용할 수 있습니다. memcache는 좋은 증분 작업을 수행하므로 미친 짓을하는 것이 효율적입니다.

현재 20KB의 읽음이 필요하다고하셨습니다. 그리고 당신은 PHP에서 그것을하고 있습니까? 한 서버 또는 클러스터에서? 당신이 약간의 건축 적 지침을 필요로하는 것처럼 들리 ..... .....

웹 응용 프로그램 인 경우 클러스터를 사용하게됩니다. 그리고 웹 애플리케이션이 아니라면, PHP가 아닌 무언가에서 다시해야한다고 생각해보십시오. Java, C++ 및 C#이 마음에 듭니다.

+0

거지 같은 memcache가 완벽 해 보입니다. 고마워, 내가 포팅을 시도 할게! 네, 웹 앱입니다. 테스트를 위해 VPS (!)에 있습니다. memcache가 엉덩이를 걷어차는 후 나는 좀 아파서 아파치를 버리고 싶다. 그런 다음 IP 주소로 데이터 요청을 분할하고 필요할 때 새 서버를 가져옵니다. 나는 생각한다. :-) –

+0

당신은 런던에 기반을두고 있습니다. hackday 또는 BCL6에 있었습니까? –

+0

아니요, hackday 나 BCL6에 없었습니다. 어쩌면 아마존 EC2를 사용하여 기본 설정의 이미지를 만든 다음 스크립트를 실행하고 (아마 svn 등에서 가져 오기) 새 컴퓨터를 가질 수 있습니다 :) :) –

관련 문제