본문 바로가기

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

[NetFUNNEL]4. 넷퍼넬로 공정한 처리

설문조사를 통해 확인한 바로는, 생각보다 많은 사람들이 인터넷을 통해 제공되는 서비스에 대해,

불공정서비스를 받고 있다는 것에 대한 인식이 매우 낮았습니다. 하지만 이에 대한 개선의 필요는 강하게 느끼고 있었습니다.

 



 

 

동시 처리할 수 있는 시스템 가용성을 초과하는 접속 요청자, 즉 바로 서비스에 진입하지 못한 사용자들은 retry를 지속하다가,

말 그대로 운 좋은 사람이 먼저 서비스에 진입을 하게 됩니다. 그렇기 때문에 수강신청과 같은 상황에서 학생들은

매크로를 이용해서 프로그램적으로 빠르게 재접속 시도를 반복하기도 합니다. 또는 여러 사람들이 동일한 아이디로

여러대의 컴퓨터에서 중복하여 로그인을 실시합니다. 이렇게 해서 조금이라도 접속 확률을 높이고 남들보다 더 빠르게

접속을 하고자 하지만, 이러한 시도가 고스란히 시스템의 추가 부하로 작용합니다.

 



 

 

NetFUNNEL은 서비스 접속요청을 시도한 모든 인원을 전부 수용합니다. 그래서 동시처리가 가능한 인원은

즉시 정상서비스 처리하며, 가용성을 초과한 인원은 NetFUNNEL 서버를 통해 대기처리한다고 하였습니다.

이때, 순번 Key를 발급하여 대기처리하기에 공정하게 서비스에 진입하도록 할 수 있습니다.

순번 Key는 개별 request마다 발급되는 것이기 때문에, 대기중 단일 사용자가 매크로 등을 이용해 여러번 request를 요청하면

앞의 순번은 삭제되고 후순위 순번을 부여받게 됩니다. 이를 통해 Retry를 방지할 수 있으며, 또한 중복로그인의 경우에도

어차피 가장 먼저 접수된 접속 요청이 가장 먼저 처리될 것이므로 접속불안으로 인해 중복 로그인할 필요도 줄어들 것입니다.

 



 

 

서비스를 이용하고자 하는 사용자들은 단 한번의 클릭으로, 본인이 요청한 순서에 맞춰 자동으로 서비스에 진입할 수 있습니다.

백화점에서, 음식점에서, 심지어 화장실에서도 먼저 온 사람이 먼저 서비스를 이용합니다. 오프라인에서는 당연한 줄서기 문화가,

접속요청 모두를 수용하고 관리하지 못해 아직 온라인에서는 구현될 수 없었습니다. 이제 시스템을 늘리지 않고도

모든 접속요청을 수용하여, 그 요청을 순서대로 처리할 수 있습니다. 이제 온라인에서도 공정한 서비스가 가능합니다.