대량 거래 웹 사이트를 다루는 경험이 전혀 없으며 최근에이 흥미로운 질문을 접하게되었습니다. Java 웹 애플리케이션의 병목 현상이 높은로드 (초당 수천 개의 요청)에서 발생하는 위치를 파악하는 데 관심이 있습니다. 누군가 내게 다음 질문에 대해 생각해 볼 수있는 높은 수준의 접근 방식을 제공 할 수 있다면 좋을 것입니다.Java 기반 대량 트랜잭션 웹 응용 프로그램
memcached를 사용하여 데이터베이스 조회를 캐싱하는 방법 밖에 없지만 각 요청에 소요되는 시간을 계산하는 방법을 모르므로 시스템에서 초당 요청 수를 계산하지 못합니다. 처리 할 수 있을지도 모른다.
질문 : 인터넷 규모 응용 프로그램은 많은 양의 트랜잭션을 처리하도록 설계되어야합니다. 초당 평균 30,000 개의 HTTP 요청을 처리해야하는 시스템을위한 설계를 설명하십시오. 각 요청에 대해 시스템은 URL 쿼리 문자열을 통해 전달 된 키워드를 사용하여 5 천만 단어 사전에 조회를 수행해야합니다. 각 응답은 단어의 정의 (100 바이트 이하)가 포함 된 문자열로 구성됩니다.
시스템의 주요 구성 요소를 설명하고 사용자 지정 구성 요소 및 타사 응용 프로그램을 활용할 수있는 구성 요소를 기록하십시오. 각 구성 요소에 대한 하드웨어 예상치를 포함하십시오. 최소 하드웨어/소프트웨어 라이센스 비용으로 최대 성능을 포함해야합니다.
추정치가 나오기까지의 근거를 문서화하십시오.
정의가 각각 10 킬로바이트 인 경우 디자인이 어떻게 변경되는지 설명하십시오.