Sangrak Choi

Sangrak Choi

20 posts
PHP

MongoDB: oplog.rs 를 이용해 직접 리플리케이션 만들기

MySQL처럼 Replication 기능이 존재하지 않는 MongoDB에서, 동일한 기능을 구현하고 싶은 이를 위해 mongo-connector를 소개한다. 이 어플리케이션은 아래와 같이 생겨먹은 config 파일을 통해 특정 서버에서 원하는 서버의 원하는 데이터베이스, 혹은 원하는 컬렉션 등으로 데이터를 지속해서 동기화해주는 도구이다. 원리는 local.oplog.rs 을 tailable 기능을 통해

Ordinary

Mattress Comparison between Tempur and Tempur-PEDIC

매트리스의 종류 템퍼페딕(미국 내수용)과 템퍼(아시아 수출용)는 매트리스 종류별로 부르는 이름이 다르다. 워낙에 가격에 대해서 왈가왈부가 많기 때문에 일부러 구분 한 것인지는 모르겠다. 결과적으로 거의 비슷한 매트리스를 팔고 있으며 어떤 것이 서로 비슷한 매트리스인지 구분을 하는 방법은 그리 어렵지 않다. 쉽게는,

Retrospective

별로 유명하지 않은 템플릿 엔진을 써온 결과

예전에, PHP 에서 유명한 Template Engine 인 Smarty 를 사용하다가 Raintpl 로 변경 한 적이 있었다. 변경 한 이유는 성능 문제. 수십개에 달하는 html 페이지들을 모두 raintpl 으로 변경하는 작업을 한 뒤에, 실제로 성능 향상은 있었지만 작업량에 비하여 기대한 만큼의 성능 향상은 아니었다. 그래도

Browser

(Untitled)

몇일 전부터 크롬의 폰트 렌더링이 바뀌었다 생각했는데, 확대해서 보니 진짜 바뀐게 맞았었다. 순수 폰트 색상에 여러 색상이 섞인 것을 보니 좀 더 부드러운 폰트를 위한 렌더링 같다. 정확한 이름은 'DirectWrite'. 자료를 찾아보니 얼마전까지만 해도 한국어등에서의 문제가 꽤나 있었던 것 같은데, 어찌됐든 정식버전에 적용을 한

Dev

Cassandra CQL3 에서 대/소문자 구별하여 테이블과 필드를 생성하기

Cassandra 의 CQL3 에서는 기본적으로 대소문자 구별을 하지 않고 무조건 소문자를 쓰도록 하고 있다. 대문자를 쓰더라도 자동으로 소문자로 컨버팅된다. 대소문자를 구분하여 쓰려면 아래와 같이 " 를 덮으면 된다. 다른 언어에서는 ` (악센트)를 이용하는데, 여기서는 쌍따옴표를 이용한다. DROP TABLE "Users"; CREATE TABLE "

Linux

OpenJDK 대신 Orable JDK를 설치하기

우분투에서 기본적으로 apt-get 으로 바로 쉽게 설치가 가능한 OpenJDK 보다는 Oracle 에서 제공하는 JDK가 성능이 좀 더 우위에 있다. 공식 홈페이지에서 시스템에 맞는 JDK를 다운로드하여 서버에 업로드한다. 아래 명령어에 버전명은 알아서 채워 넣으면 된다. 설치하기 $ tar zxvf jdk-7u7-linux-*.gz $ mkdir -p /usr/lib/jvm/