TechHolic
1,000+ Views

月 6억뷰 SLR클럽 “커뮤니티 플랫폼 끝판왕 만든다”

매일 이 커뮤니티를 방문하는 회원 수만 따져도 80만 명이 넘는다. 월 페이지뷰는 평균 6억이 넘는다. SLR클럽은 지난 2000년 설립 이후 디지털, SLR카메라와 사진 분야에서 14년째 독보적인 위치를 점하고 있다. 국내 전체 사이트 순위를 따져 봐도 SLR클럽은 70위권 수준. 대한민국 TOP100 안에 들만큼 수많은 방문자가 이곳을 찾는다. SLR클럽에는 하루에도 수많은 콘텐츠가 올라온다. 하루 게시물 수만 해도 많을 때에는 8만 개에 달한다. 사진은 1만 5,000장이나 된다. 초대형 커뮤니티인 만큼 안정성과 보안 등 챙겨야 할 게 많다. 국내 대표 커뮤니티 가운데 하나인 SLR클럽의 또 다른 특징은 사이트 내 시스템 전체가 거대한 공개SW로 이뤄진 곳이라는 점. SLR클럽을 운영 중인 (주)인비전커뮤니티 CTO 오명오 이사는 이 모든 과정은 모두 공개SW로 해결한다고 말한다. ◇ 월 6억뷰 초대형 커뮤니티 ‘심장은 공개SW’=2012년 이후부터는 해외 사용자도 꾸준히 늘어 2012년 전체 방문객 중 4%였던 해외 방문자는 올해 들어선 7∼8%로 거의 2배 가량 높아졌다. 이런 이유에서인지 SLR클럽의 내부 구조는 국내웹과 외국 사용자를 대상으로 한 중계서버 시스템으로 나뉘어져 있다. 시스템 구성은 모두 공개SW. 먼저 공개SW 도메인 서버로는 파워DNS(PowerDNS)를 이용한다. C++로 만든 DNS 서버 시스템으로 무료로 이용할 수 있다. 이를 거치면 공개SW 웹 서버 소프트웨어인 엔진엑스(Nginx)로 연결된다. 엔진엑스는 가볍지만 높은 성능을 내는 웹서버 공개SW로 웹서버와 리버스 프록시, 메일 프록시 같은 기능을 갖추고 있다. 이미 검증된 소프트웨어이기도 하다. 넷크래프트가 지난 2011년 조사한 바에 따르면 엔진엑스는 전체 도메인 중 7.5%, 4번째로 가장 많이 쓰이는 웹서버로 꼽히기도 했다. 오명오 CTO는 공개SW의 장점으로 수많은 사용자가 쓰다 보니 오히려 더 안정적이라는 점을 들었다. 이 과정을 거치게 되면 공개SW 로드밸런서인 하프록시(HAProxy)를 이용하게 된다. 하프록시는 공개SW 기반 로드밸런서도 뛰어난 성능을 인정받고 있다. 대규모 트래픽을 소화하는 데에도 유리하다. 국내에 위치한 서버에 접근하는 사용자와 달리 갈수록 늘어나는 해외 사용자를 대상으로는 기본 구조는 같지만 조금 더한 게 있다. 파워DNS에 해외 사용자를 구분하는 동시에 도메인 로드밸런서 역할을 하는 GEO+GSLB를 공개SW를 기반 삼아 자체 개발해 적용했다. 또 북미 서버와 국내 데이터 캐싱 부하 분산을 위해 엔진엑스와 하프록시를 이용한다. 이런 중계서버를 거쳐 국내로 연결하는 애플리케이션을 L7 스위치 대용으로 쓰는 것. 모든 과정을 거치면 하프록시 로드밸런서를 통해 PHP 애플리케이션과 만나게 된다. 데이터베이스는 2000년 처음 SLR클럽을 열 당시만 해도 마이SQL를 썼지만 지난 2010년 마리아DB(MariaDB)로 바꿨다. 마이SQL에서 마리아DB로 바꾼 이유는 몇 가지가 있다. 가장 문제가 됐던 것 가운데 하나는 피드백이나 수정 사항 반영이 너무 늦다는 것. 지난 2005년 버그 관련 이메일을 보냈지만 답변은 황당하게도 4년이 지난 2009년 날라 왔다고 한다. SLR클럽은 이미 몇 년 전 자체적으로 해결해서 쓰는 상황이었다. 기술적 문제도 있었다. 마이SQL은 데이터를 주로 메모리에 올려야 하는 탓에 메모리 요구량이 많을 수밖에 없었다. SLR클럽의 경우 DB 서버에 들어가는 메모리 용량은 700GB. 그런데 마이SQL을 이용해 클러스터링을 구축하려면 대당 메모리가 250GB인 서버 10대는 필요하다. 하지만 마리아DB는 갈레라 클러스터(Galera Cluster)를 지원한다. 오 이사는 “마리아DB의 강세는 서버 자체에 있다”면서 갈레라 클러스터를 이용해 배포를 단순화하고 고가용성이라는 점, 덕분에 대용량 서비스에 훨씬 유리하다고 밝혔다. SLR클럽은 여기에 샤딩(Sharding) 기능도 함께 진행한다. 마리아DB를 선택하는 이유 가운데 하나로 꼽히는 기술로 소프트웨어적으로 데이터베이스를 분산 처리할 수 있게 해주는 것이다. 한정된 자원에서 대형 서비스를 분산 처리해 퍼포먼스를 높이기 위해 마리아DB로의 전환을 진행했다는 얘기다. SLR클럽은 여기에 작은 크기 데이터를 메모리에 올려놔서 빠른 속도를 제공할 수 있는 Memcached도 함께 이용하고 있다. SLR클럽 공개SW 서비스 구조도 ◇ 커뮤니티 14년 노하우 담은 플랫폼 준비중=SLR클럽 내부 개발팀은 공개SW를 즐겨 이용한다. 오 이사는 SLR클럽의 경우 공개SW를 단순하게 사용하는 것 뿐 아니라 GSLB에서 알 수 있듯 공개SW를 기반으로 해 직접 개발하기도 한다. 공개SW를 쓰면서 피드백도 적극적이다. 수정 사항은 적극적으로 반영해 지금까지 SLR클럽이 공개SW 개선사항으로 올린 것만 해도 100∼200회에 달한다는 설명이다. 오 이사는 공개SW의 장점으로 수많은 사용자가 쓰다 보니 안정적이라는 점을 강조한다. 물론 잘 만든 상용 소프트웨어도 있지만 한 업체가 전문 레벨까지 만들면 좋겠지만 생각처럼 그렇지 않은 경우가 많고 어떤 면에선 오히려 불안한 경우도 많다는 것이다. “예를 들어 마이크로소프트 윈도만 봐도 그렇죠. 2003년 정도까지만 해도 결함 덩어리였다고 해도 과언이 아니었으니 말이죠.” 반면 리눅스는 같은 문제가 초기에는 있었더라도 소스 자체가 오픈되어 있다 보니 수많은 사용자가 퍼포먼스 튜닝을 진행해 결국은 해결이 된다. 오 이사는 이렇게 소스가 공개되어 있는 경우가 오히려 더 외부 보안 공격 같은 것에도 더 안전한 경우가 많다고 설명한다. 예를 들어 윈도나 익스플로러 같은 경우에는 소스가 오픈되어 있지 않아 보안 문제가 발생하는 걸 해커가 공개하거나 마이크로소프트가 알려주지 않는 한 알 방법이 없다. 이에 비해 공개SW는 이런 문제점이 더 빨리 외부로 알려지고 해결도 된다는 것이다. 오 이사는 이런 점을 강조하듯 공개SW로 모두 이뤄진 SLR클럽이지만 “지금까지 14년 동안 한 번도 (외부 해커 등에 의해) 털린 적이 없다”고 말한다. 디도스 공세가 심하던 시절에는 좀비PC를 통한 공격이 문제였는데 당시에는 화이트리스트 시스템을 자체 구축해 이전 3주간 방문 IP를 비교 체크하는 등 외부 공격을 방어했다. 그 뿐 아니라 보안 솔루션도 공개SW를 기반 삼아 내부에서 직접 개발했다. 물론 웬만해선 안 뚫리지만 얼마 전에는 중국 해커 2명이 서버에 잠입하기도 했다. 하지만 내부 개발팀은 침입 루트를 확인하기 위해 일부러 내버려둔 것이다. 진원지를 역탐하기 위한 것. 이들은 물론 내부에서 아무 것도 가져가지 못했다. 이유는 DB 보안 솔루션 때문이다. 오 이사는 지난 2006년에는 DB 보안 솔루션을 자체 개발해 SLR클럽에 적용했다고 설명했다. 당초 개인 정보 사업을 고려한 것이었지만 당시만 해도 지금처럼 보안에 대한 인식이 국내에선 없었다고 한다. 오 이사는 이런 DB 보안 솔루션은 아마 국내에선 처음일 것이라고 덧붙였다. DB 보안 솔루션은 물리적인 서버 내 자료의 외부 탈취 방지를 위한 것이다. DB 자체를 암호화하는 건 기본. 암호화 표준까지 자체 개량해서 쓰고 있다. 설령 앞서 설명한 것처럼 해커가 침투를 한다고 해도 못 뺀다고 한다. 암호화 방식이 복잡할 뿐 아니라 동일 네트워크 상태여야 하고 물리적인 서버 형태 조건까지 까다로운 조건을 모두 만족하지 않으면 빼낼 수 없도록 설계했기 때문이다. 오 이사는 SLR클럽 내에 암호화된 걸 해커가 빼내도 “아마 푸는 데 100년 넘게 걸릴 것”이라고 설명했다. SLR클럽은 연간 공개SW를 활용한 작품을 1∼2개 정도씩은 꾸준히 만들어오고 있다. 올해도 DB 샤딩 관련 분야를 대상으로 해서 1건을 진행 중으로 10∼11월 정도까지는 완성될 예정이라고 한다. 오 이사는 이런 기술력을 바탕으로 내부적으로는 SLR클럽의 최종 버전을 진행 중이라고 설명했다. 물론 일반 독자가 보기에는 차이가 없겠지만 내부적으론 프로그램을 체계화하고 조직화하는 한편 퍼포먼스를 최적화한 버전이 될 것이라는 것이다. SLR클럽 개발팀은 이 작업에 8개월 가량을 줄곧 매달렸다. 내부에선 ‘인비전 커뮤니티 플랫폼’이라고 부르는 것으로 2가지 특징을 지녔다. 첫째 대형 커뮤니티를 위한 플랫폼으로 첫째 외부 UI나 UX보다는 관리 프레임워크를 강화한다. 둘째 SLR클럽 같은 대용량 DB를 처리할 수 있는 커뮤니티에 최적화한다. 오 이사는 인비전 커뮤니티 플랫폼이 SLR클럽의 커뮤니티 14년 노하우를 담은 게 될 것이라고 설명한다. 여기에도 공개SW가 바탕이 된 건 물론이다. ※ 공개SW 활용 성공사례는 테크홀릭과 정보통신산업진흥원 공개SW 역량프라자가 공동으로 발굴한 기사(http://www.oss.kr/oss_repository10/550812( http://www.oss.kr/oss_repository10/550812 ))다.
Comment
Suggested
Recent
Cards you may also be interested in
이미지 파일 종류와 변환방법에 대하여
일단은 JPEG 는 알다시피 정지화상 이미지라고 해서 손실 이미지 파일 포맷이라고 한다. PNG 는 비손실 이미지 파일 포맷이라고 해서 지금도 많이 쓰이는 포맷이고, 투명 배경에 이미지를 덧대어서 스티커 용도로도 쓰인다. 물론 합성할 때 많이 쓰이는 자료이긴 하나... JPEG 는 대게 레스터 이미지 파일이라서 이미지 처리할 때 손실이 되게 크다. 하지만, 화질이 커지면 어느정도는 멀리서 봤을 때 그렇게 심하지 않고 오히려 화질이 더 클수록 퀄리티가 높은 편이다. PNG 의 경우에는 JPG 보단 그나마 화질깨짐이 덜하다 오히려 깔끔하다, 하지만 확대해보면 깨지긴 한다. JPEG 혹은 JPG 는 별도로 JFIF 이런 포맷과 Webp 파일 혹은 Jpg.large 파일이 존재하며 BMP 확장자가 존재한다. GIF 같은 경우도 마찬가지이지만 이것은 비트맵 그래픽 포맷은 설명을 하거나 여러 용도에서 광범위하게 쓰인다, PNG 하고 마찬가지로 말이다. 그렇지만 PNG 에 비해 화질 크기는 제한된다. 만약에 확장을 하고 싶으면 다음과 같은 방법을 쓴다. JFIF 를 PNG 로 변환하는 방법을 추천한다. WEBP 파일 역시 PNG 로 변환하 것을 추천하고 요즘엔 SVG , HEIF 파일도 있지만 이 역시 응용파일을 마이크로소프트 스토어에서 다운로드하면 된다. 통합 이미지 변환사이트인데 이 사이트를 이용하면 거의 어지간한 포맷은 다 변환할 수 있다.
2019, 12월 무역영어 접수 가이드 ( feat. 마지막 무역영어 합격하기)
쌀쌀한 날씨가 시작되었습니다. 2019년도 이제 두달남았어요ㅠㅠ 이렇게 19년을 보내기전에! 마무리 해야 할 일이 있죠! " 바로 2019년 12월 마지막 무역영어 시험 " 접수일 시작과 함께! 본격적으로 맘먹고 준비하는 수험자분들을 위해 준비했습니다. 2019, 12월 무역영어 접수 가이드 ( feat. 마지막 무역영어 합격하기) 12월 무역영어 시험일정 체크와 종종 잊어버리는 유의사항까지 함께 확인해봅시다! 그리고 마지막 시험을 한 번에 딱!!!!! 합격할 수 있는 꿑팁도 알려드릴게요 :) 가장 먼저! 접수입니다! 항상 말씀드리지만, 시험점수는 가장 첫 날에 하시는게 제일 좋습니다 첫 날에 해야하는 이유 1. 생각보다 접수일 놓치는 수험자가 너무 많다 ( 마음을 먹었다면! 바로 접수하고, 본격적인 준비 들어가는게 합격에 더 가까워지는 지름길 ) 2. 내가 원하는 지역, 고사장을 잡자! ( 늦게 접수하면, 가까운 고사장 인원초과로 못 가는 불상사가 발생합니다.. ) 이러한 이유로 정말 웬만하면 시험 접수일 첫날에 꼭 접수하시길 바랍니다! 더불어 확인할 사항은 접수 마지막날 마감시간은 24:00 아니고 18:00시까지 급수간 동시접수도 가능하다는 거! 까지 알아두시면 좋겠습니다. 접수일부터 시험일까지 이렇게 12월을 챙기는 이유! 무역자격증 도우미 무밍즈가 하나부터 열까지 12월 무역영어 시험을 떠먹여주는 이유! 무역영어 시험에서 상당 부분을 차지하는 인코텀즈는 10년 단위로 개정이 됩니다. 우리가 근 10년간 쭈~~~욱 무역영어 인코텀즈 자료가 딱 올해를 마지막으로... Bye.. Bye... 20년 무역영어 시험에는 새롭게 개정된 인코텀즈2020이 출제되기 때문에 올해! 꼭! 무역영어 시험을 끝내는게 좋습니다. 그리고!!!!!!!!!! 시험 응시료도 2020년에는 상승된다고 하네요... ㅠ 그렇다면, 이렇게 중요한 12월 시험! 합격하는 전략은?? 꼼수부리지 마세요! 사실 무역영어 시험은 문제은행 느낌으로 잘 출제되었어요. 그. 러. 나. 19년 시험부터는 이전에 볼 수 없었던 유형, 문제들이 다수 출제되었는데요. 합격생들과 인터뷰해 본 결과 기출문제도 중요하지만 개념 기본기 쌓는것도 이제 소홀히 하면 안된다고 하더라구요. 그래서 개념서를 통해 꼭꼭 기본기를 채우고, 기출문제 풀이단계로 넘어가는 것을 추천드립니다. 기출문제는 문제집을 사셔도 되고, 네이버카페(자격증 커뮤니티)를 이용하시는 것도 좋습니다. 12월 무역영어 접수 꼭 하시고, 남은기간 꼼꼼하게 준비해서 합격합시다!!! 여러분의 합격을 기원합니다 :)
[펌] 미쳐버린 프로그래밍 언어들
세상에는 C, 자바같은 수 많은 프로그래밍 언어들이 존재함. 그 어떤 언어를 배우더라도 가장 먼저 배우는 코드가 있는데 바로 이 Hello World 코드. 태초에 빛이 있으리라 이런 느낌?  그런데 종종 미쳐버린 프로그래머들이 정신나간 언어를 만들어내는 경우가 있음. 그래서 그 중 몇 개를 Hello World 코드랑 비교해서 알려주기로 함. ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 1. 형 언어 말 그대로 형(brother)임. 한국에서 만든 언어인데 이 언어는 형 과 특수 기호 만으로 언어를 만들어냈는데 대충 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 이런 식임. 간단하게 설명하자면 메모리 어딘가에 원소를 넣어놓고 명령어로 움직이면서 출력하는 방식. 이걸로 Hello World를 코딩하면? ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 소리 내 읽지도 못하는 코드가 만들어짐 2. BrainFuck  말 그대로 뇌를 조지는 언어. 이 정신나간 코드는 단 8개 기호만으로 구성되어 있음.  이거로 Hello World를 짜면 ㅅㅂ 이게 언어냐 3. WhiteSpace  말 그대로 공백. 컴퓨터는 우리 눈으로 보는 것과 달리 스페이스, 엔터, 탭 등을 모두 문자로 인식함. 엔터는 \n, 탭은 \t 이렇게. 우리 눈에만 공백으로 보일 뿐. 이 언어는 바로 이 점을 이용한 언어로 Hello World를 코딩하면 이런 식이 됨. 빨간 부분은 스페이스, 파란 부분은 탭. 코딩하는 입장에서는 다 텅텅 비어있으니 돌아버리는 수밖에.. ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 번외 )GNE  GNE is not eligible((박)그네는 유능하지 않다) 의 줄임말로 탄핵당한 전 대통령이 모티브임. 그 인간의 화법만으로 이루어진 단어인데 읍읍.. 당신 누구야...!  원작자가 지워버려서 알 수가 없다.