문제

안녕하세요,

난 항목 을 정량화 이 책에서"97 것에 모든 소프트웨어의 건축가가 알아야"(살균 Amazon 링크 다)및 그것이 나를 얻었는지 궁금하는 방법을 정량화 확장성이 향상됩니다.

내가 설계 두 시스템을 위한 중요한 영국 bbc 방송에 사용되는:

  1. 검색에 대한 원산지 국가에 들어오는 HTTP 요청 또는
  2. 을 결정하는 적절한 비디오 형식에 대 한 휴대 전화 화면 형상과 현재의 연결 유형입니다.

모두의 디자인에 필요한 확장성을 제공합니다.

나의 디자인을 위해 두 시스템는 확장 가능한 수평으로 뒤에 캐싱하는 부하 균형을 잡는 레이어는 데 사용되는 들어오는 요청을 처리 모두에 대한 이러한 서비스의 배포에 걸쳐 그들을 여러 서버를 실제로 제공하는 서비스다.초기 증가에서 서비스를 용량은 추가하여 더 많은 뒤에 서버의 부하 균형 층,따라서 장기 수평 확장성이 향상됩니다.

가 제한한 확장성의 이 아키텍처 그러나는 경우에 부하 균형층을 가지고 시작 어려움을 극복으로 들어오는 요청을 트래픽이다.

그래서,그것은 확장성을 정량화?것 견적을 얼마나 많은 추가 서버에 추가할 수 있는 수평으로 규모의 솔루션이 필요하십니까?

도움이 되었습니까?

해결책

일부 상황에서는 가능하다고 생각합니다. 예를 들어 웹 애플리케이션의 확장 성은 사용자 수, 동시 요청 숫자, 응답 시간의 평균 및 표준 편차 등으로 정량화 될 수 있습니다. 스토리지, 초당 거래 및 복구 시간 (백업 및 DR).

또한 응용 프로그램 도메인 내에서 숫자를 줄 수 있습니다. 시스템이 주석을 지원한다고 가정 해 봅시다. 저장할 수있는 주석 수의 크기 순서를 정량화 할 수 있습니다.

그러나 중요한 모든 것을 측정 할 수있는 것은 아니며 측정 할 수있는 모든 것이 아니라는 점을 명심해야합니다. :-)

다른 팁

나는 이것이 주어진 맥락에서 확장 성이 무엇을 의미하는지에 달려 있다고 생각합니다. 때에 따라 다르지.

나는 단순히 존재하지 않은 것들에 대한 요구 사항의 확장 성을 보았습니다. 예를 들어, 향후 iPhone 및 기타 모바일 장치에서 작업 해야하는 새로운 대출 응용 프로그램 도구.

또한 성능을 향상시키기 위해 전 세계 여러 영역에서 더 많은 데이터 센터와 웹 서버의 잠재적 확장을 설명하는 데 사용되는 확장 성을 보았습니다.

미래에 알려진 대상이있는 경우 위의 두 가지 예 모두 정량화 될 수 있습니다. 그러나 실제로 알려진 대상이나 계획이 없으면 이동 목표가되는 경우 확장 성이 정량화되지 않을 수 있습니다.

적절한 확장 성 (가장 간단한 것이 아님 ;-)은 요구 된 자원을 정의하는 곡선 세트 (CPU, 메모리, 스토리지, 로컬 대역폭, ...) 및 성능 (예 : 대기 시간)이 부하가 증가함에 따라 (예 : 초당 쿼리의 관점에서 볼 때, 요구되는 총 데이터 처리량과 같은 다른 측정도 일부 응용 프로그램에 적합 할 수 있습니다). 의사 결정자들은 일반적으로 이러한 정확하지만 복잡한 조치가 몇 가지 핵심 숫자 (일부 곡선 중 일부의 특정 지점)로 끓을 것을 요구하지만, 나는 항상 그러한 이해 측정 측정에 반대하는 것과 같이 더욱 확실하게 협상하려고합니다. 주요 메트릭!-)

확장 성을 생각할 때 다음을 생각합니다.

  • 성능 - 주어진 부하에 대한 응답이 필요한 방법
  • 앱의 부하가 얼마나 커질 수 있는지 및 어느 단가 비용 (서버 당 소프트웨어, 지원 등이 포함 된 경우)
  • 앱을 빨리 확장 할 수있는 속도와 피크 기간 동안 원하는 버퍼의 양 (2-3 시간 동안 50% 더 많은 대역폭을 추가하고 계획된 피크 사용량보다 30% 버퍼가 필요합니다).

중복성은 다른 것이지만 포함 및 고려해야합니다.

"시스템은 비용/사용자에 대한 X의 선형 관계를 유지하기 위해 확장해야합니다."

여기에는 하나의 방법:

"가정에 있는 단일 프로세서 처리할 수 있는 100 개 단위 작업의 초당..."

http://www.information-management.com/issues/19971101/972-1.html

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top