728x90
Node.js 를 공부하고 코드를 테스트 하는 방법은 여러가지가 있습니다. Cloud9 과 같은 웹 기반의 IDE 를 이용하는 방법이 가장 간편하고 사용자 환경도 타지 않기 때문에 좋지만 웹 기반이다 보니 은근히 불편한 점들이 있는 것도 사실입니다. 이 때 우리가 선택할 수 있는 좋은 대안은 Node.js 를 PaaS 형태로 제공하는 호스팅 서비스를 이용하는 것입니다. 그중에서도 오늘은 Node.js 를 비롯하여 Ruby, Java, Python 등을 PaaS 형태로 제공하는 Heroku 를 이용하기 위한 준비를 해보겠습니다. (간만에 글 올리면서 마치 준비된냥 Heroku 를 건드립니다 ;;;)

먼저 Heroku 를 사용하기 위해서는 간단한 가입 절차를 거쳐야 합니다. 이런 류의 외국 서비스들이 그러하듯 간단한 이메일 인증만을 하면 무료로 사용할 수 있는 공간을 할당받게 됩니다. Heroku 는 기본적으로 무료 서비스이고 추가적으로 용량을 늘리거나 다른 서비스를 이용할 때 추가적으로 비용을 내면 됩니다. 참고로 Cafe24 가 제공하고 있는 Node.js 호스팅 서비스의 최소 단위는 월 500원 입니다 ;;;



 Heroku 에 가입하기 위해서 가입 페이지로 이동합니다. (바로가기 : https://api.heroku.com/signup) 간단한 이메일 입력만으로 가입은 끝납니다. 참 쉽죠잉? 이메일을 입력하고 Sign Up 버튼을 누르면 입력한 이메일로 컨펌 URL 이 발송됩니다. 이메일도 빨리 도착하기 때문에 수신함에서 메일을 찾아 본문의 컨펌 URL 을 클릭하면 됩니다.


이메일에 대한 유효성 점검이 끝났다고 모두 끝은 아니겠지요? 비밀번호 정도는 셋팅 해줘야 나중에 로그인을 할 수 있을 겁니다. 설마 정말로 이메일만 입력했다고 모든게 끝이라고 생각했다면 여러분은 바보 입니다 -_-;; (퍽퍽...) 실제로 개발을 하고 소스 버전 관리를 하고 커밋 하는 등의 행위를 위해서 커맨드 라인 도구를 제공하는데 이 때도 필요한게 바로 이 비밀번호이니 잘 기억해 두시기 바랍니다.

 
비밀번호까지 입력하고나면 간단한 Get Started 방법에 대한 가이드가 화면에 출력됩니다. 로컬에서 개발하고 Heroku 로 소스코드를 업데이트 하고 구동시키기 위해서 몇 가지 도구가 필요한데요, Git 과 SSH 도구를 잘 엮어둔 Heroku Toolbelt 라는 패키지를 제공하고 있습니다. 사용자 환경이 윈도우냐 맥이냐, 아니면 리눅스냐에 따라 패키지가 여러가지로 제공되니 각자 필요한 패키지를 다운로드 받아 설치하면 되겠습니다. Heroku Client 와 Git, SSH 등이 설치된다는 것 기억하시구요.

 
잠시동안 지루한 설치 작업이 진행되고나면 끝납니다. 그리고 아무것도 보이지 않습니다. 뭘 해야 할까요? 윈도우 기준으로 설명을 드리면 설치가 끝나고 나면 윈도우 커맨드라인 도구 (시작 > cmd) 를 실행해서 Heroku 라는 커맨드를 통해 명령행 도구를 실행하셔야 합니다. 그냥 Heroku 라고 한번 쳐보시고... " 아 그렇구나 " 하신다음 위의 스샷처럼 heroku login 명령을 내려주시기 바랍니다. heroku login 명령을 입력하면 조금전에 가입시 썼던 이메일과 비밀번호를 입력합니다.


Git 에 엑세스 하기 위해서는 SSH Key 를 만들어야 합니다. 로컬에서 접근하기 위해서도 필요하고 Heroku 가 Git 에 접근하기 위한 권한 부여를 위해서도 필요합니다. heroku login 을 처음 하게 되면 이런 과정을 한큐에 다 정리를 해줍니다. SSH Key 를 생성해서 로컬에 저장해 주고 (윈도우의 경우 기본 사용자 프로파일 경로에 /.ssh/ 폴더 밑에 생성) Heroku 에 업로드까지 깔끔하게 마무리 해줍니다. Key 가 잘 등록되었는지 확인하기 위해서는 heroku keys 라고 입력해 보면 됩니다. 키를 지우려면 heroku remove 하면 되고 키 추가를 위해서는 heroku keys:add 하시면 됩니다.

자 여기까지가 Heroku 사용을 위한 환경 셋팅입니다. Heroku Toolbelt 가 제공되기 전까지는 별도로 Git 도구를 설치하고 키 생성을 하는 등 번거로운 작업이 많았지만 이제는 참 많이 편해졌다고 다들 그러시더군요 -_-... 그럼 샘플 코드 올려서 구동해보는 건 다음시간에... 해보시지요.

- NoPD -

 
728x90
728x90
SK텔레콤의 기업용 클라우드 서비스인 T cloud biz 가 리뉴얼 이벤트를 진행중이네요.
9월 한달동안 가상 서버 상품인 Cloud Server 를 구매하면
추첨을 통해서 Xbox360+Kinect, 차량용 블랙박스, 도킹 스피커 등
다양한 전자기기들을 주는 행사를 하고 있네요.

덤으로 연말까지 이용요금 50% 할인도 된다고 하니
개발 서버가 필요했던 분들은 이번 기회에 T cloud biz를 써보는 것도
나쁘지 않은 선택이 될 것 같네요~

 
728x90
728x90
VMware, Xen 을 비롯한 다양한 가상화 솔루션들이 널리 쓰이고 있습니다.
그렇지만 여전히 오라클을 비롯한 비즈니스 소프트웨어들은
다양한 라이선스 제약조건 등으로 가상화 환경에서 쉽게 쓰이기 힘든 것 같습니다.

https://community.emc.com/community/connect/everything_oracle/blog/2012/03/26/vmwares-official-support-statement-regarding-oracle-certification-and-licensing 

한동안 많은 VMware 커뮤니티에서는 CPU Affinity (특정 CPU 코어를 Dedicate 하게 쓰는 옵션) 를 통해 오라클 라이센스를 위반하지 않으면서 사용할 수 있을 거라는 이야기가 많았습니다. 하지만 이 방법은 오라클이 제안하는 하드웨어 파티셔닝(Hardware Partitioning)을 충족하는 듯 하면서도 결론적으로 공식적으로 인정된 방법은 아니라는 문제가 있는 것 같습니다.

우리나라의 VMware 커뮤니티에서도 비슷한 이야기가 정리된 적이 있었습니다. 하지만 정확히 이 내용이 오라클이 허용하는 범위인지는 확인을 해봐야 하는 부분일 것 같습니다. 자칫 잘못하면 VM 이 구동되는 전체 물리 Processor 의 갯수만큼 (물론 Factor를 곱해서 수를 줄일 수 있겠지만) 라이선스를 구비해야 하는 상황이 될 수도 있을 것 같습니다.

http://cafe.naver.com/vmwareesx/2933 

참 쉬운게 없는 세상입니다 ^^

- NoPD -
 
728x90
728x90
XE는 사용자가 꽤 많은 CMS (Content Management System) 임에도 불구하고 열악한 기술지원과 매뉴얼 때문에 커스터마이징을 필요로 하는 사람들에게 참 많은 숙제를 안겨주고 있다. 제로보드 시절만 해도 그렇지 않았는데 네이버가 인수한 이후에는 뭔가 부드럽지 않은 분위기다.

오늘 올리는 내용은 사실 포스팅으로 남겨 두기도 참 뻘쭘한 내용이다. XE 개발자 매뉴얼에 제대로 기술이 되어 있지 않아 삽질한 내용이기 때문이다. MySql 에서 쿼리 크기를 제한할 때는 쿼리 뒷부분에 limit [숫자] 형태로 쿼리 갯수를 제한할 수 있다. MS-SQL 에서 select 문 바로 뒤에 top [숫자] 를 적어주는 것과 동일한 효과다.

select * 
  from xe_documents 
 where module_srl=3038
   and voted_count > 5
 limit 5


특정한 게시판 모듈에서 추천수가 5 이상인 게시물을 가져오되 5개를 넘지 않도록 만든 아주 간단한 쿼리다. 이 쿼리를 XE 가 사용하는 XML 형태로 변경하면 어떻게 될까? 구현하는 사람에 따라 차이가 있겠지만 아래와 같은 XML 로 만들어질 것 같다. 


	
        
		
	
		
		
		
	
	
		
	
	


삽질을 했던 이유는 바로 마지막의 <list_count> 부분이다. 개발자 매뉴얼 그 어디에도 <list_count> 엘레멘트가 <navigation> 엘레멘트의 하위 엘레멘트라는 표기가 없다. 물론 <navigation> 엘레멘트 설명에는 "정렬 순서나 페이징을 지원" 이라고 되어 있지만 그 설명을 "따라서 <list_count> 는 <navigation> 의 자식입니다"로 해석할 수 있는 사람은 몇 안될것 같다. 누군가 동일한 삽질을 할까봐 포스팅으로 남겨둔다.

- NoPD - 
728x90

+ Recent posts