본문 바로가기

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

[NetFUNNEL]3. 넷퍼넬로 대용량 접속처리

앞서는, 시스템 보호를 위해 세션 수를 제어한다고 말씀드렸습니다. 이를 통해 시스템 이용이 가능한 사용자들만을

우선 서비스에 진입하여 서비스를 이용한다면, 가용성 범위를 초과하는 접속 요청자들은 어떻게 되는 것일까요?

 

이전의 스위치 제품을 통한 세션제어 방법은 단순 Redirection이나 Reconnection입니다. , 접속 불가에 대한

회피책인 것입니다. 서비스 진입을 제한한 사용자들은 다른페이지를 받아보게 되거나 이마저도 없다면 아예 하얀 화면에

언제 접속될지도 모르는 모래시계만 기약없이 돌아가는 것을 보게됩니다. 최근에는 사용량이 많아 다시 접속해달라는

메시지나, 몇 초 후 다시 접속하라는 메시지를 전달하는 정도까지 안내를 하고 있습니다.

 



 

 

그렇다고 해도 가장 문제가 되는 것은 Retry(재접속 시도)입니다. 첫인상을 결정하는 3초보다도 모자라게, 한국사람들은

평균 2초만 화면에 응답이 없으면 마우스로 손이 간다고 합니다. 몇 초 후 다시 접속하라는 메시지도, 단순히 그 시간 이후에

접속을 해보라는 의미일 뿐 접속을 보장하는 것은 아닙니다. 사용자들의 retry로 인해서는 실제 접속 요청자보다

많게는 10, 20배의 부하가 증가될 수 있으며 이러한 중복 요청을 통한 허수는 시스템 사용 효율성도 낮춰

전체 작업 처리시간도 늘어날 수 있습니다.

 





 

 

NetFUNNEL은 접속요청 모두를 수용합니다. 시스템 가용성 이내의 접속 요청자들은 정상적으로 서비스를 이용할 수 있으며,

가용성을 초과하는 사용자들은 NetFUNNEL서버를 통해 대기자 처리가 됩니다. 그리고 본인의 접속 가능한 순서에

자동으로 서비스에 진입됩니다. 적은 시스템으로, 특히 한순간 접속요청이 몰릴 수 있는 환경에서 이들 요청 모두를

수용하기 위해 NetFUNNEL은 최소한의 패킷만을 전달하며, 특히 비연결형 방식을 통해 주기적으로 대기자들과

통신하기 때문에 많은 수의 사용자들을 관리할 수 있습니다. 이를 통해, 범용 인텔머신 NT서버에서

2.66GHz 2pu 8core 기준으로 초당 20,000명의 트랜잭션 처리, 60,000명의 대기 처리가 가능합니다.

 



 

 

이러한 질문이 가능할 것입니다. “retry가 가장 문제가 된다고 하였는데, 대기자들의 retry를 막기 위해 어떤 조치가 취해지는가?”

그 부분에 대해서는 뒤쪽에서 쭉 설명하도록 하겠습니다. 기능들이 서로 연관성이 깊어 한번에 설명하는 것이 좋을 듯도 한데

그렇게 되면 아무래도 호흡이 너무 길어져서 답답해 질 듯 하네요.