분류 전체보기 1274

구글 CloudSQL(MySQL) 접속하기

구글 CloudSQL(MySQL) 접속하기조대협 (http://bcho.tistory.com) 개요 구글 클라우드에서는 MySQL의 매니지드 서비스 형태로 CloudSQL 서비스를 제공한다. 이 글에서는 CloudSQL을 서버에서 접근하는 방법과, 일반적인 MySQL 클라이언트로 접근하는 방법에 대해서 설명하고자 한다. 몇가지 배경 CloudSQL은 매니지드 MySQL서비스이다. 아마존에 RDS서비스와 같다고 보면 되는데 현재는 1세대를 서비스하고 있고, 곧 2세대가 서비스 예정이다.1세대는 500GB까지의 용량까지 지원하고 있지만 2세대는 10테라까지 지원을 한다.현재 지원되는 MySQL버전은 5.5와 5.6 지원하고, 내부 엔진으로는 InnoDB만을 제공한다. 2 세대에 기대되는 기능으로는 On Pr..

구글 클라우드 VM으로 SSH 접속하기

구글 클라우드 VM으로 SSH 접속하기 조대협 (http://bcho.tistory.com) 클라우드에서 VM을 생성하면, 이 VM에 접속하기 위해서 리눅스 VM의 경우 일반적으로 SSH 연결을 사용한다.구글 클라우드에서 SSH를 이용하여 VM에 접속하는 방법을 알아본다. 1. SSH 키페어 생성ssh-keygen 명령어를 이용하여 다음과 같이 RSA 키페어를 생성한다.%ssh-keygen -t rsa -C "구글계정명" 2. 키페어가 생성이 되었으면 *.pub으로 끝나는 이름의 퍼블릭키의 내용(텍스트)를 복사한후, 콘솔창에서 "Compute Engine > Metadata > SSH Keys" 부분에 복사한 텍스트를 붙여 넣어서 키를 등록한다. 3. 키 등록이 끝났으면, 이 키를 이용하여 SSH로 접속..

어제 성능 엔지니어링 강의에서 들은 몇몇 인사이트 정리

어제, 네이버D2에서 열린, NHN nGrinder 개발자인 윤준호님의 성능 강의를 듣고 왔습니다.몇가지 얻은 인사이트가 있어서 기록해놓습니다. 아마존의 T2 인스턴스 타입 - 서버의 부하에 따라서 컴퓨팅 파워를 높였다 낮췄다가 함.- 크레딧이란 개념을 써서, 부하가 낮을때는 크레딕을 저축해놓고, 부하가 높아지면 모아놓은 크레딧을 소모하는 방식 성능 테스트시 주의 사항 - 외부 OPEN API등을 사용할때, 성능 테스트시, OPEN API가 성능 테스트를 DDoS 공격으로 인식해서 차단될 수 있음 대용량 파일 (동영상등)에 대한 부하 테스트 - 네트워크 대역폭을 많이 소모하여 운영 시스템 장애로 발전할 수 있음- 비용도 많이 소모됨- 이를 방지 하기 위해서 초기 1000 바이트 정도만 읽어들이고, 해당 ..

성능과 튜닝 2016.04.20

빠르게 훝어 보는 node.js - redis 사용하기 (ioredis 클라이언트 버전)

빠르게 훝어 보는 node.js - redis 사용하기 (ioredis 클라이언트 버전) 조대협 (http://bcho.tistory.com) 지난 포스팅에서 http://bcho.tistory.com/1098 node.js에서 redis 사용에 있어서 node-redis 클라이언트를 사용했는데, 조금 더 리서치를 해보니, node.js의 redis 클라이언트는 지난번에 포스팅한 node-redis 클라이언트와 ioredis라는 클라이언트가 가장 많이 사용된다. ioredis 클라이언트가 조금 더 최근에 나온 클라이언트인데, https://github.com/luin/ioredis Bluebird promise 지원, 트렌젝션 지원등 훨씬 더 많은 기능을 제공하고, 사용법이 node-redis와 거의 유..

빠르게 훝어 보는 node.js - redis 사용하기

node.js에서 Redis 사용하기 조대협 (http://bcho.tistory.com) Redis는 NoSQL 데이타 베이스의 한 종류로, mongoDB 처럼 전체 데이타를 영구히 저장하기 보다는 캐쉬처럼 휘발성이나 임시성 데이타를 저장하는데 많이 사용된다. 디스크에 데이타를 주기적으로 저장하기는 하지만, 이 기능은 백업이나 복구용으로 주로 사용할뿐 데이타는 모두 메모리에 저장되기 때문에, 빠른 접근 속도를 자랑한다. 이 이유 때문에 근래에는 memcached 다음의 캐쉬 솔루션으로 널리 사용되고 있는데, 간단하게 키-밸류 (Key-Value)형태의 데이타 저장뿐만 아니라, 다양한 데이타 타입을 지원하기 때문에 응용도가 높고, node.js 호환 모듈이 잘 지원되서 node.js와 궁합이 좋다. 여러..

빠르게 훝어 보는 node.js - heapdump를 이용한 메모리 누수 추적

node.js에서 Heapdump를 이용한 메모리 누수 추적하기 조대협 (http://bcho.tistory.com) 대부분의 애플리케이션 서버들에서 고질적인 문제점중의 하나가 메모리 누수 현상이다. 비단 애플리케이션 서버에만 해당하는 문제는 아니지만 특히나 동시에 여러개의 요청을 반복적으로 받는 애플리케이션 서버의 경우에는 이 메모리 누수 현상이 훨씬 더 많이 발생한다. node.js 의 경우, 엔진의 근간이 되는 구글 크롬 V8 자바스크립트 엔진 자체가 많은 메모리 누수 버그를 가지고 있지만, 애플리케이션에서 발생하는 메모리 누수는 발생하는 양도 크거니와 더 큰 문제를 야기할 수 있다. 이러한 애플리케이션에서의 메모리 누수를 추적하기 위한 방법을 알아보자 node.js의 확장 모듈인 heapdump는..

빠르게 훝어 보는 node.js - mongoose 스키마와 유용한 기능

빠르게 훝어 보는 node.js - mongoose 스키마와 유용한 기능 조대협 (http://bcho.tistory.com) 지난번 mongoose 에 대한 간략한 소개 글 http://bcho.tistory.com/1094 에 이어서 오늘은 mongoose 스키마와, 기타 유용한 기능에 대해서 소개하고자 한다. 쿼리 간단한 삽입,삭제,수정,조회 쿼리이외에 조금 더 향상된 쿼리를 살펴보자.자세한 쿼리 사용 방법은 http://mongoosejs.com/docs/documents.html 를 참고하면 된다. 몇 가지 쿼리들을 살펴보면 var mongoose = require('mongoose'); mongoose.connect('mongodb://localhost:27017/mydb'); var user..