본문 바로가기

지나간... 의미가.../IT 솔루션 이야기

[NetFUNNEL]2. 넷퍼넬로 시스템 및 서비스 보호

아시다시피, 시스템에는 그만큼의 적정 처리량이 있고, 그것을 토대로 처리명령을 보내는 사용자들의 진입을

제한할 수 있습니다. 이렇게 시스템 가용성에 오버되지 않도록 해주는게 중요합니다.

99명의 접속과 101명의 접속은 현저한 서비스 차이를 나타낼 수 있기 때문이죠.

 



case2와 3을 비교해보시면, NF의 유무에 따른 차이를 확인할 수 있습니다.

 

현재의 많은 서비스들이 임계치 내의 사용자들만이라도 원활한 서비스를 받을 수 있도록 조치하고자 합니다.

NetFUNNEL도 마찬가지로 시스템의 가용한 인원만을 처리가 가능하도록 진입인원을 제한하여 시스템을 보호합니다.

하지만 단순히 초기 진입인원을 제한하는 것이 아니라, 시스템의 상태를 모니터링 하면서, 리소스 사용량을

최대로 올릴 수 있는 가장 최적의 인원을 확인하여 실시간으로 적용할 수 있습니다.

 

초기에는 약간 작게, 여유있는 수로 진입인원을 설정한 이후 DB 등 자원상태를 모니터링하여 좀 여유가 있다 싶으면

바로 진입인원수를 높여서 적용할 수 있습니다. 다른 복잡한 설정이 필요 없이 실시간으로 정책 적용이 가능하며,

이를 통해 현재의 시스템 상태에서 가용한 최적의 운영 효율을 확인해볼 수 있습니다.

 



 

 

서비스 보호라고 하는 것에 대해서도 말씀을 드려보죠.

 

대형 공연예매를 예로 들어보죠. 소극장 공연 예매 서비스를 제공하던 사이트에서 갑자기 빅뱅 콘서트 예매를

실시한다고 하면 어떻게 될까요? 팬클럽 이름이 ‘VIP’였던가요? 아무튼콘서트 티켓을 사기 위해 팬클럽 인원 전부가

같은 시간에 사이트에 접속을 요청할 것이고, 사이트가 마비되거나 느려지거나, 그렇지 않으면 위에 언급한 것처럼

사이트 허용 인원이 제한되어 진입한 사용자만 서비스가 가능할 것입니다.

 

문제는 빅뱅 콘서트 때문에 다른 소극장 공연예매도 불가능하다는 것이죠. 위에 설명한 것과 같이 시스템 보호를 위한

기존의 세션제어 방법은 웹 서버 앞단에서 전체 서비스에 진입하는 사용자를 제한하는 방법입니다. 그렇기 때문에

소극장 공연 예매자와 대형 콘서트 예매자가 분리되지 않고 하나로 처리되어 서로 불만이 쌓일 수 있습니다.

 

NetFUNNEL을 통해서 서비스 단위별로 제어가 가능하다는 것을 말씀드리고자 합니다. 세션제어를 하는 기존의

스위치 장비들은 대부분 물리적으로 웹 서버 앞단에 설치되는 것이지만, NetFUNNEL은 실제로 클릭하는 서비스 버튼에

API명령어를 삽입하는 방법으로 적용이 됩니다. 그렇기 때문에 일반 소극장 공연예매는 평소와 같이 진행하고,

빅뱅 콘서트 예매와 같은 대형 공연예매에만 잠깐의 딜레이 타임을 주어 전체 서비스를 보호할 수 있습니다.

 

 


 

 

수강신청의 경우에도, 수강신청을 하는 날에는 타 업무, 예를 들면 교수님들 메일이나 다른 학년 학생들의

학사조회까지 안되는 경우가 있습니다. 이때, 수강신청 서비스에만 선택적으로 API를 적용하여 몰리는 상황에

잠깐 대기하게 한다면, 수강신청 뿐만 아니라 다른 학사행정 업무까지도 원활하게 처리할 수가 있는 것입니다.

시스템을 보호할 뿐만 아니라, 전체 서비스를 보호할 수 있는 효율적인 아이디어로 살펴보시기 바랍니다.