[WebAppsCon 후기] 리치 웹 기술의 미래 토론(2)  에서 계속...

토론 중 첫 질문 시간에 RIA와 클라이언트 부하에 대한 이슈가 나왔는데요, RIA가 서버 입장에서는 온갖 자원을 클라이언트에게 떠넘김으로써 서버 부하는 줄겠지만 사용자 입장에서는 웹이 더 무거워지는게 아니냐...란 요지의 질문이었던 걸로 기억돼요.

물론 어떤 런타임은 최적화가 되지 않아서 동일한 표현이 다른 기술에 비해 특히 안좋을 수도 있어요. 하지만 웹사이트 부하의 대부분은 너무 많은 수의 이미지 파일과 잘못된 코드에서 기인한다고 생각해요. 그런 점에서 '사용자에게 부하를 떠넘기느냐?'보다는 '사용자에게 더 나은 경험을 제공한다'라는 관점이 더 유효할 것 같네요.

성능적인 관점에서 Silverlight은 로렌스씨의 데모에서도 강조되었지만 특히 미디어를 다루는데 있어서 다른 기술들에게 넘사벽(넘을 수 없는 4차원의 벽)을 선사하며 엄청난 효율을 보여주고 플렉스/플래쉬는 빌드가 swf 단일 파일로 되므로 배포가 용이하고 초기 파싱이나 코드 로딩이 빠른 장점이 있죠.

...그런데, 실제로 써보면 동적으로 XAML을 파싱하는 실버라잇도 별로 느리지 않고 되려 비슷한 수준의 오브젝트 구성이면 실버라잇 로딩이 더 빠르게 느껴지는건 기분탓 만은 아니겠죠? 이 부분은 넘어가구요.

여하튼 뭐 누가 좋네 나쁘네 얘기가 중요한게 아닌데 한가지, 어도비측 패널에선 매우 부적절한 예시를 든 것 같아요.

어떤 영화 사이트에서 이벤트 당첨자 몇명? 천명이었나 만명었나를 한 페이지에 게시를 했다가 웹사이트가 다운되었다...는 건데요. 이거야 말로 전형적으로 잘못된 코드 사용으로 인한 문제 아닐까 싶어요.

이 케이스에서 만명이라고 치고, 이 정도 숫자의 목록을 한 화면에 표시한다는 것 자체가 잘못된거죠. 당연히 검색기능을 넣든 페이징을 하는 것이 정답이죠.

설사 이걸 플래쉬든 뭐든 컴파일된 작은 용량으로 만들었고 이것이 한 화면에 아주 문제 없이 잘 나타났다고 해도 그건 잘못된 구성일 거에요.

예시는 별로 적절하지 않았지만 어쨌든 swf의 압축으로 인한 장점을 얘기한 것 같구요, 실버라잇은 swf에 비해 다소 복잡한 구성을 이루지만 개별 리소스의 관리 측면에서는 더 효과적이라고 생각해요. 게다가 실버라잇은 Downloader를 통한 ZIP 패키지도 지원하고 있으니 트래픽을 줄이는 방법도 제공하고 있구요.

RIA 기술들 간의 성능 비교는 http://bubblemark.com/ 이쪽을 참고해보세요.


토론의 마지막 질문은 바로, 거금 2만 2천원을 아낄 수 있게 한 댓글 이벤트에서 나온 그것! 히힛.

원래 제가 올렸던 질문은 좀 Silverlight에 치우친 거였는데 진행하시는 분께서 아주 적절하게 가공하셔서 질문의 수준마저 높아진 느낌이었죠.

질문의 요는, 적절한 보안 통제속에 사용할 수 있는 로컬 스토리지의 활용성과 향후 계획에 관한 것이었구요. 답은 약간은 뻔한 거였죠.

실버라잇은 '향후' 이러한 지원을 per Application, per Domain, per Service등 다양한 모델로 지원할 수 있을 것이라는 다소 희망적인 그러나 피상적인 답변이었고, 어도비쪽은 역시 기억에 안남고, OpenLaszlo쪽은 당연히 표준에서 제공하지 않는 기능이니 불가능이겠고요.

좀 더 덧붙이자면, 실버라잇은 웹 애플리케이션이 로컬의 암시적인 장소에 생성된 스토리지에 접근하여 기록하고 읽을 수 있는 IsolatedStorage를 지원하고 있어요. '암시적'이란 것은 이 스토리지(폴더)의 물리적 위치는 알 수 없고 단지 참조만 가능하며 상위 폴더로 올라가는 것도 불가능한, 그야말로 '격리된' 공간이죠.

어떻게 보면 쿠키의 확장인데요, 쿠키의 보안 이슈와 마찬가지로 당연히 로컬로 저장되는 내용에 보안에 영향을 주는 정보를 넣어선 안되겠죠. 제 생각엔 갈 수록 대용량화 되는 웹 사이트의 리소스를 보다 넓은 범위에서 캐슁하기 위한 용도로 좋을 것 같아요. 그러나 실버라잇은 아직 per Application 즉, 한 실버라잇 페이지 당 하나의 스토리지가 생성되어서 같은 서비스끼리 서로 그 스토리지를 공유할 수 가 없어서 비효율적이에요. 뭐 앞으론 더 넓은 범위의 지원을 한다니까 기다려 봐야죠.

또 MS의 황리건님과의 대화에서 알게 되었는데, 플래쉬의 경우는 Shared file(?? 이름은 정확히 기억 안납니다) 기능이 있는데 플래쉬가 설치된 경로에 각 도메인별 또는 애플리케이션별로 지정된 암호화된 파일 스토리지를 지원한다는군요.

여하튼, 현재로서는 커다랗고 많은 수의 미디어 파일(이미지, 음악, 동영상)의 캐슁은 순전히 브라우저의 캐슁 기능에 의존하는데 따라서 브라우저 별로, 그리고 시스템 환경에 따라 대용량 미디어가 많은 페이지의 표시 효율이 다르겠죠.

이런 점에서 각 애플리케이션이 보안 이슈에 독립적으로 사용할 수 있는 공간은 보다 안정적이고 효율적인 캐슁에 많은 도움이 되리라 생각해봅니다.


시간이 빡빡해서 정신 없이 돌아갔던 것 같네요. 한꺼번에 너무 많은 걸 준비하다 보니 그런 것 같아요. 남은 컨퍼런스들은 더 이상 집중하기 힘들 것 같아서 집에 왔습니다.

꽤 길게 후기를 썼지만 이번 컨퍼런스에서 가장 인상 깊었던 건 OpenLaszlo 프로젝트. 로 요약할 수 있겠네요;
나중에 Raju씨의 발표내용이 올라온다면 꼭 한번 보시길 권장해요!
신고
Posted by gongdo


티스토리 툴바