와우 정보 게시판

전체보기

모바일 상단 메뉴

본문 페이지

[클래식] 실리더스 스트레스 테스트 6/26 추가 진행

아이콘 Roah
댓글: 1 개
조회: 6348
추천: 1
2020-06-22 16:07:58
* 출처 : https://us.forums.blizzard.com/en/wow/t/successful-ptr-stress-test-thank-you/559657/74




블리자드는 블루포스트를 통해 지난주에 진행된 스트레스 테스트에 대한 피드백을 남기고

이번주 금요일(6/26) 오전 7시에 실리더스 스트레스 테스트를 추가로 진행한다고 밝혔습니다.



확인한 사항

많은 분들이 본 게임에서도 서버 성능이 이렇게 좋지 않을 것이냐고 물어 보셨고, 어떤 분들은 이미 준비가 다 된거 같다고 농담해 주시기도 했습니다. 어쩌면 농담이 아니었을지도요? 저희가 어제 스트레스 테스트가 겪었던 것은 2006년 시절 안퀴라즈가 열렸을 때와 비슷하긴 했으니까요. 저희는 엄청난 렉과 몇 번의 서버 다운을 겪었고, 마침내 플레이어 분들이 포기하고 인구수가 줄었을 때야나 이벤트가 마침내 끝을 맺었었습니다. 저희는 이보다는 더 낫게끔 할 계획입니다만, 렉을 완전히 없앨 수는 없을 것입니다.

만약 태평양 시간 기준 오후 5시까지 계속 계셨다면, 저희의 테스트 컨디션이 실제 게임에 볼 수 있을 수준의 렉과 가깝게 바뀌었음을 보셨을 겁니다. 저희는 서버 렉과 인구 밀도 중 하나를 포기해야 할 수 밖에 없었습니다-- 사람이 많을 수록 렉 또한 더욱 심해지고, 한 지역에 플레이어가 너무 몰리면 렉이 너무 심해져 서버가 교착 상태 ("복구가 불가능한 상태"를 뜻하는 컴퓨터 용어입니다)에 빠졌다고 생각해 재시작하게 되니 말이죠.

서버가 교착 상태에 빠졌다고 판단해 재시작되는 건 흔히 부르는 서버 다운을 뜻하나, 이는 또 다른 문제를 제공합니다. 다른 크래시는 프로그램이 무언가 좋지 않은 걸 하려고 할 때 일어나기에 저희가 그걸 해결하면 됩니다만, 교착 상태의 경우 하나의 문제가 아니고 그냥 처리해야 할 것들이 계속해서 밀리는 상황이기 때문에 훨씬 더 해결이 어려운데요. 그래도 이를 해결하기 위한 개선점들이 존재하기는 합니다.


코드 최적화

이건 저희가 2004년 때부터 해오던 것이며, 지난 몇 달 동안 저희는 이 이벤트를 염두에 두고 코드를 최적화해 왔습니다. 최근의 예시를 몇 개 들어보겠습니다.

먼저, 이동 속도 감소 메세지를 생각해 보죠. 오라 업데이트 메세지를 한꺼번에 보내지 않는다면 어떨까요? 100명이 눈보라에 맞았다면, 정말로 오라가 적용된 그 순간에 메세지를 받아야만 할까요? 서버는 당연히 바로 알기에 오라의 효과는 적용되어 이동 속도가 감소하기는 하지만, 오라를 한 1-2초 동안 보지 않아도 괜찮을까요? 만약 이가 서버가 다운되지 않는 것으로 이어진다면 저희의 답은 괜찮습니다이므로, 오라 메세지 처리를 미루는 방식을 선택했습니다. 이는 만약 첫 메세지 처리를 기다리고 있는 도중에 또 다른 오라 업데이트가 이루어진다면 이 메세지를 합쳐 더 적은 양의 메세지를 보낼 수 있는 만큼, 이런 추가 장점이 있기도 합니다.

저희가 어제 테스트한 또 다른 코드 최적화는 방향에 있습니다-- 플레이어가 어느 방향을 향하고 있느냐에 대한 정보인데요. 인구수가 특정 수를 넘어가면 이런 방향 메세지 업데이트를 늦추거나 멈추면 어떨까요? 비용은 그렇게 크지 않습니다: 과밀된 지역에서 플레이어가 움직일 때 조금 버벅이는 정도이므로, 그렇게 눈에 띄는 영향을 끼치지 않으면서 성능을 크게 개선하는 방법이 되겠죠. 저희는 테스트 때 이가 적용되지 않았을 때 오히려 플레이어들이 더 많이 버벅이는 걸 확인했었습니다.

저희는 그 외에도 누구에게 메세지를 보내야 하는지를 결정하는 성능 또한 개선했습니다. 몇 천명의 플레이어가 한 곳에 몰렸을 때, 누가 오라에 대해 알아야 하고 어느 방향으로 움직이는지를 결정하는 것조차 아주 큰 작업이므로, 이 역시 개선하고자 했습니다.


플레이어 이동

이런 문제들을 해결하고 나면, 다음과 같은 문제를 고려해야 합니다. 2006년에 안퀴라즈가 처음 열렸을 때에는, GM들이 직접 플레이어들을 지역 밖으로 순간이동 시키면서 이벤트가 진행되도록 했었습니다. 그 후 디자이너들은 플레이어들을 자동으로 순간이동 시키는 시스템을 제작했죠. 오늘날 저희는 아주 잘 작동하는 자동 순간이동 시스템을 갖고 있으며 이를 이용해 게임이 아직 플레이 가능한 정도로 지역의 인구수를 제어하고자 합니다. 실리더스는 당연히 렉이 만연할 것입니다만, 서버를 다운시키기보다는 플레이어들을 순간이동 시키는 게 낫다고 생각합니다.

이 이벤트는 칼림도어 남부 대부분을 다루고 있으므로, 실리더스에 들어서지 못하신다고 해서 이벤트를 놓치는 것은 아닙니다. 처치해야 할 아누비사스와 실리시드는 징을 울린 후 10시간 동안 타나리스, 버섯구름 봉우리, 페랄라스 그리고 불모의 땅 전역에서 등장합니다.


한 번 더 테스트 예정

어제의 테스트를 통해 저희는 이런 한계가 어디인지를 알 수 있었고 다운된 서버를 어떻게 복구하는지에 대해 알 수 있었으나, 더 자세한 정보를 얻고 싶으므로 한국 시간 기준 6월 26일 금요일 아침 7시에 또 다른 테스트를 진행하고자 합니다. 이번에는 방해나 조사가 더 적으리라 생각되므로, 좀 더 빠르게 완료하려고 노력해 보겠습니다.


추신

레손이 그러는데, 버섯을 반찬으로 여러분의 영혼을 아주 맛있게 즐겼다고 전해달라는군요.

(테스트 종료 후 진행된 보스 소환 이벤트에서 레손의 활약이 돋보였음)

차벤러

Lv91 Roah

모바일 게시판 하단버튼

댓글

새로고침
새로고침

모바일 게시판 하단버튼

지금 뜨는 인벤

더보기+

모바일 게시판 리스트

모바일 게시판 하단버튼

글쓰기

모바일 게시판 페이징

최근 HOT한 콘텐츠

  • 와우
  • 게임
  • IT
  • 유머
  • 연예