2009-10-15 3 views
0

안녕하세요, 저는 최근 졸업생입니다. 제가 신청할 몇 가지 직업을 보면 런타임 복잡성 (충분히 똑바로), 캐싱 (memcached!),로드 균형 조정 문제 등을 알아야합니다. 이것에 대해 아무 생각도 없음)알아두면 좋은 "로드 균형 조정 문제"는 무엇입니까?

그래서 어떤 종류의로드 균형 조정 문제 및 솔루션에 대해 알아야하거나 적어도 .net 또는 java 작업에 막연하게 익숙해야합니까?

인터넷 검색은 네트워크로드 균형 조정과 같은 기능을 제공하지만 일반적으로 소프트웨어 개발자가 관리하지는 않습니까?

답변

2

제가 생각할 수있는 한 가지는 세션 관리입니다. 기본적으로 세션 ID를 얻을 때마다 해당 세션 ID는 서버의 일부 메모리 내 데이터를 가리 킵니다. 그러나로드 밸 레이싱을 사용하면 여러 서버가 있습니다. 데이터가 머신 1의 세션에 저장되면 어떻게됩니까? 다음 요청의 경우 사용자는 머신 2로 리디렉션됩니까? 그의 세션 데이터가 손실됩니다.

그래서 모든 동시 요청 ('고정 연결')을 위해 사용자가 동일한 시스템으로 돌아 오거나 In-proc 세션 상태를 사용하지 않고 out-of-proc를 사용하는지 확인해야합니다 세션 상태는 세션 데이터가 예를 들어 데이터베이스에 저장됩니다.

1

로드 배포의 개념이 있는데, 여기에는 요청이 여러 서버 (일반적으로 세션 선호도 포함)에 분사됩니다. 여기서 특정 서버가 얼마나 바쁜지에 대한 피드백이 없으며 부하의 통계적 공유에만 의존합니다. WAS ND에서 WebSphere Http 플러그인을 볼 수 있습니다. 실질적인 웹 사이트에서도 실제로 잘 작동합니다.

로드 은 더 깨끗하게하려고 시도합니다. 서버의 상대적로드에 대한 피드백은 새 요청이 어디로 갈지를 결정합니다. (그렇다하더라도 세션 선호도는 부하 분산보다 높은 우선 순위로 취급되는 경향이 있습니다). 원래 XD에서 제공되었던 WebSphere On Demand Router가이를 수행합니다. this 기사를 읽으면 사용 된 알고리즘 종류가 표시됩니다.

네트워크 분사 장치와 균형을 이루고 서버에서 실행중인 "에이전트"와 상담하여 분사기에 대한 의견을 제공하여 요청이 필요한 곳에서 결정을 내릴 수 있습니다. 따라서이 하드웨어 기반 접근 방식조차도 소프트웨어 요소를 가질 수 있습니다. Dynamic Feedback Protocol

0

네트워크 조합기, max-flow min-cut theorems 및 그 사용

을 참조하십시오.
관련 문제