Go HTTP

Go HTTPWWW(World wide web)은 수억명의 유저가 접근하는 (그리고 역시 수억의 컴퓨터가 연결하는) 가장 큰 분산 시스템다. 그리고 그 중 가장 성공한 서비스는 HTTP 기반의 웹 서비스일 것이다. 웹 브라우저라고 부르는 웹 클라이언트 프로그램을 이용해서 서핑이라는 행위를 하는 정보의 바다 말이다. 현재 HTTP(Hyper-Text Tra...

haproxy

haproxy신뢰성과 고성능을 지향하는 /HTTP 기반의 공개 소프트웨어 로드 밸런서 프로그램이다. 소프트웨어로 간단히 로드밸런서를 구현해야 할 때 주로 사용한다. 다음의 기능을 지원한다. 1. Application Cookie 서버에서 클라이언트로 보내는 cookie 값을 추척한다. 그래서 클라이언트가 proxy 서버로 접속하면, cookie를 발행했...

직접 구현해 보자. oAuth1.0

직접 구현해 보자. oAuth1.0 미완성처음에는 oAuth2 만 살펴보려고 했다. 새로 개발하는 서비스들은 대부분 oAuth2 우선이고, 기존에 oAuth1부터 시작했던 서비스들도 oAuth2로 무게중심을 옮겨가는 와중이니, 굳이 oAuth1을 살펴볼 필요는 없으리라고 생각을 했다.하지만 oAuth1와 oAuth2를 동시에 지원해야 할 일이 생겨서...

REST에 대하여

REST에 대하여나는 PHP 웹 프로그래머로 이 바닥에 들어섰다. 그 후에 시스템/네트워크 프로그래머로 방향을 틀었고, 웹 기반 프로그래밍은 사이트를 유지/보수하는 수준에 머물렀다. 예컨데, 취미생활(moniwiki 커스터마이징)을 영위하기 위한 방편이라고나 할까. 물론 워낙에 프로젝트들이 와 얽혀있는 경우가 많아서, 완전히 손을 떼었다고는 할 수 없는 ...

텍스트 브라우저 w3m 사용자 가이드

텍스트 브라우저 w3m 사용자 가이드w3m은 lynx(정보에 대한 가독성을 높이기 위해서는 필요한 텍스트만 얻어내는 것도 중요하지만 시각적으로 보기 쉽게 정보를 보여줄수 있어야 하며 사용자 친화적인 인터페이스를 제공할 수 있어야 한다.. lynx는 시각적인 면과 편리한 인터페이스를 충족시키지 못한다. w3m은 이를테면 필요한 정보로의 집중 빠른 정보접근 ...

HTTP Cache 제어

HTTP Cache 제어 미완성기본적으로 나는 HTTP 기반 서비스를 만들 때, 성능을 우선 생각하지는 않는다. 우선 중요하게 생각하는 건, 요청에 따라서 탄력적으로 대응할 수 있는지(쉽게 확장 가능한지)와 서버 몇 놈이 뻗더라도 서비스는 문제없이 작동하는 가용성을 중하게 생각한다. 초기에 성능은 유저가 "젠장! 느리잖아?"라는 말이 나오지 않을 수...

QOS - HTTP Submit Process

QOS - HTTP Submit Process다음과 같은 2가지 사항에 대해서 체크한다면, 웹서비스에 대한 기본적인 품질 체크는 가능할 것이다. 1. 페이지 응답체크 1. 페이지 응답시간여기에 덧붙여서 Submit Process까지 체크한다면, 더 나은 품질 모니터링 환경을 만들 수 있을 것이다.어떤 웹서비스가 제대로 작동하는지 확인하고 싶을 경우, PO...

Rack

Rack Rack은 Ruby 기반의 웹 애플리케이션 개발을 위한 인터페이스를 제공하는 소프트웨어다. Rack의 가장 간단한 응용은 웹서버의 요청을 받아서 웹 프레임워크로 전달하고 응답을 웹서버로 전달하는 미들웨어 소프트웨어의 개발이다. Rack는 웹 서버로의 요청을 처리해서 웹 프레임워크로 전달하고, 웹 프레임워크의 응답을 처리해서 웹 서버로 전달하기 위...

Ruby sinatra web freamework

Ruby sinatra web freamework을 지원하는 웹 애플리케이션 서버 개발을 위해서 웹 프레임워크를 선택해야 했다. Ruby, Python, Perl, Java 모두 훌륭한 웹 프레임워크를 가지고 있으며 아마도 거의 비슷한 모습에 비슷한 쓰임새를 가지고 있을 것이다. 해서 웹 프레임워크를 선택하기 전에 언어를 선택하고 해당 언어에서 제공하는 ...

Centos에 sinatra 설치하기

Centos에 sinatra 설치하기미완성 CentOS 6.3 minimal # yum install make# yum install gcc# yum install gcc-c++루비부터 설치해 줘야 한다.# yum install ruby(thin을 빌드하기 위해서)헤더파일도 필요하다. # yum install ruby-develgem을 설치한다.# yum...