2010-03-16 6 views
0

높은 trrafic 뉴스 포털을위한 데이터베이스 디자인 솔루션은 무엇입니까? 파일 시스템이 좋은 해결책이 될 수 있습니까? 사전에뉴스 포털 및 데이터베이스 고중량

mysql > File system 

감사

+0

실용적인 질문이 아니라 단순한 케이스처럼 보입니다. MySQL은 초당 수백 건의 요청을 처리 할 수 ​​있습니다. 너무 일반적인 질문에는 충분합니다. 또한 mysql은 자체 체킹 시스템을 가지고 있습니다. –

+2

Col. Shrapnel : 그는 트래픽이 많은 뉴스 포털의 확장성에 관한 질문을 던집니다. MySQL은 서버 사양, 복제 등을 기준으로 초당 100 건의 요청을 확장 할 수 있습니다.하지만 St. John Johnson의 대답과 같은 간단한 캐싱을 사용하면 서버 부하를 10000 % 줄입니다. 10 RPS를 얻으면 각 요청은 2 개의 쿼리를 수행합니다. 5 분 동안 캐시하면 5 분 동안 데이터베이스 서버의 6,000 개 요청에서 1로 줄어 듭니다. 큰 차이점. – William

+1

왜 downvotes? 이것은보기 흉하지 않은 질문처럼 보입니다. –

답변

1

파일 시스템은 캐싱에 적합한 솔루션이 아닙니다 (FusioIO 카드가없는 경우).

일반적으로 디스크에서 파일을 읽는 데 소요되는 지연은 Memcache 또는 APC와 같은 캐싱 시스템보다 훨씬 높습니다.

또한 Sphinx 또는 Lucene을 사용하여 데이터베이스를 주기적으로 색인화하여 표준 MySQL보다 훨씬 빠른 결과를 반환하는 옵션이 있습니다.

+0

이 주석에 추가하려면 Memcache 또는 APC와 같은 캐시를 사용하는 주된 이유는 데이터가 파일 시스템이 아닌 메모리에 저장되기 때문입니다. – William

0

RDBMS와 훨씬 더 적합 높은 트래픽에 파일 시스템이보다입니다. 특정 유형의 데이터, 파일 시스템 또는 다른 솔루션이 더 우수하다는 것이 증명되지 않으면 RDBMS를 사용하여 데이터를 사용합니다.

2

memcached을 살펴보십시오. 이것은 객체와 데이터를 "캐시"하도록 설계되었습니다. 이를 사용하는 가장 좋은 방법은 예제로 5 분간 뉴스 쿼리 결과를 캐시하는 것입니다. 따라서 방문자가 페이지를 볼 때마다 대신 5 분마다 하나의 쿼리 만 실행됩니다.

+1

또 다른 해결책은 만료없이 데이터를 캐시 및 백엔드에 기사가 업데이트 될 때마다, 또한 캐시를 업데이트하는 것입니다. 분명한 것은이 솔루션은 콘텐츠가 변경되는 빈도에 기반합니다. 매 15-20 분마다 1 번이면 몇 초마다 업데이트하는 것보다이 솔루션이 더 빠를 것입니다. – William

0

트래픽이 많습니까? PostgreSQL은보다 강력하고 더 많은 동시 사용자를 처리 할 수 ​​있습니다. noSQL- 데이터베이스도 populair를 얻고 있지만 이것들은 다른 행동과 기능을 가지고 있습니다. PostgreSQL, Oracle 등과 같은 RDBMS와 비교할 수는 없습니다.

+0

위키 백과 또는 페이스 북의 사람들에게 말하십시오. –

+0

MySQL 대 PostgreSQL의 경쟁에 뛰어 들지 못하게되면, 특정 "대규모"에 이르게되면 데이터베이스만으로는 최소한 비용 측면에서는 효율적으로 트래픽을 처리하지 못합니다. – William

+0

@ Col. Shrapnel 위키 백과 같은 사이트에 대한 솔루션을 공유해 주시겠습니까? 감사합니다. –