L4/L7 스위치의 대안, 오픈 소스 로드 밸런서 HAProxy

Posted · Add Comment

NHN Business Platform 클라우드플랫폼개발랩 박영희 Ncloud에서 하드웨어로 구성된 기존의 로드 밸런서(load balancer)를 대체할 수 있는 솔루션을 찾던 중 소프트웨어 로드 밸런서인 HAProxy를 검토하게 됐습니다. HAProxy를 검토하면서 정리한 자료와 사내 개발용 Ncloud(ncloud.nhncorp.com) 서비스에 HAProxy를 적용한 사례를 공유하려 합니다. HAProxy를 이해하기 위해서 우선 로드 밸런서의 기본 개념을 이해하고 HAProxy의 동작 방식을 알아보겠습니다. 그리고 HAProxy로 설계 가능한 구조를 […]

웹 사이트 성능 최적화 분석 자동화: YSlow와 CI 서버 연동

Posted · Add Comment

NHN 커뮤니티서비스개발랩 박경일 2007년 Yahoo!에서 웹 사이트 성능 최적화를 위한 내부 노하우를 14개 법칙(현재는 35개 법칙, http://developer.yahoo.com/performance/rules.html)으로 정리해 일반 개발자에게 공개했습니다. 그리고 해당 법칙에 따라 성능 최적화를 분석하는 YSlow라는 도구도 함께 공개했습니다. 초기에 YSlow는 Firefox의 확장 프로그램으로 공개됐으나 그 이후 Chrome, Opera, Safari 등 모든 브라우저의 확장 도구로 포팅됐습니다. 최근에는 Node.js나 PhantomJS를 이용해 브라우저 없이 […]

구글크롬 사용법, 크롬 유저에게 필요한 5가지 팁

Posted · Add Comment

구글 크롬 웹브라우저를 사용하는 큰 이유 중 하나는 쾌적한 속도 때문일 것이다. MS의 인터넷익스플로러로 가득차 있던 국내 웹 환경도 이런 이유 때문인지 구글 크롬 웹브라우저의 점유율이 꽤 올라섰다. 특히 필자 같은 경우에는 맥을 사용 중인데 90% 정도는 크롬 웹브라우저를 사용 중이다. 또한, 모바일 크롬 브라우저와 함께 사용 중이기 때문에 자동으로 동기화 되는 부분 덕에 상당한 편리함을 […]

ZooKeeper를 활용한 Redis Cluster 관리

Posted · Add Comment

NHN Business Platform 클라우드플랫폼개발랩 임영완, 배상용 지속적으로 늘어나는 푸시 사용자를 MySQL 샤딩으로만 감당하기에는 버거웠습니다. 그래서 다양하게 검토한 끝에 MySQL을 대체할 데이타베이스로 Redis를 선택하게 되었고, 클러스터를 구성하기 위해서 ZooKeeper라는 도구를 사용했습니다. 이 글에서는 Redis와 ZooKeeper의 조합으로 Redis Cluster를 구성하는 방법을 알아보겠습니다. Redis를 메시지 데이터베이스로 사용하게 된 배경 NNI(NHN Notication Infrastructure)는 Android 운영체제 기반의 스마트폰 애플리케이션에 푸시 […]

‘부트스트랩’ 활용 웹디자인 실습 – 온오프믹스

Posted · Add Comment

[행사구분] 유료행사 [행사기간] 2013-11-18 10:00 ~ 2013-11-19 18:30 [접수기간] 2013-11-15 10:30 ~ 2013-11-15 13:00 [장소] 블로터아카데미(합정역 2번출구)   강력한 UI 프레임워크 ‘Bootstrap’ 부트스트랩은 트위터의 개발자 Mark Otto와 Jacob Thornton이 개발한 오픈소스 UI 프레임워크입니다. HTML5와 CSS3, 자바스크립트 툴킷으로 구성되어 있으며, 웹디자인에 필요한 모든 요소들이 템플릿으로 미리 만들어져 있어 이를 선택해 웹사이트를 디자인할 수 있게 해주는 툴입니다. […]

2차 인증 소개

Posted · Add Comment

NHN Business Platform 회원플랫폼개발랩 나윤재 로그인 과정에서 주로 사용하는 인증 방식은 아이디와 비밀번호를 입력하여 시스템 사용 권한을 확인하고 접근 권한을 부여하는 것입니다. 하지만 이런 방식은 스니핑(sniffing) 또는 키 로깅 등을 이용한 공격 방법에 의해 인증 정보가 쉽게 노출될 수 있다는 취약점이 있습니다. 이미 노출된 아이디, 비밀번호로 인해 개인 정보 유출이나 아이디 도용 등의 피해를 입기도 […]

TimingWheel을 이용한 타이머 구현

Posted · Add Comment

NHN Business Platform 웹플랫폼개발랩 최동순 애플리케이션을 개발할 때 타이머를 사용해야 하는 일이 자주 있습니다. 특히 세션에 대한 타임아웃 처리를 하는 것과 같은 작업에서 말이지요. 일반적인 타이머의 구현은 타임아웃 작업의 등록이나 만료(expire) 여부의 검사 및 처리 시에 시간 복잡도 O(n)을 가집니다. 하지만, 이 글에서 설명할 TimingWheel 자료구조를 사용하면 타임아웃 작업의 만료 여부에 대한 검사가 필요 없는 […]