SIP

SIP(Session Initiation Protocol - 세션 개시 프로토콜)은 IETF에서 정의한 시그널링 프로토콜로 음성과 화상 통화 같은 멀티미디어 세션을 제어하기 위해서 사용한다. 시그널링 프로토콜은 전화 또는 VOIP 터미널간의 연결 상태를 식별하기 위한 프로토콜이다. 간단히 말해서 통신 하고자 하는 디바이스를 찾아서 세션의 성립, 유지, 해제...

MVNO

MNO(Mobile network operator)는 wireless service provider, wireless carrier, cellular company, mobile network carrier라고 부르기도 한다. 최종 모바일 통신 사용자에게 통신 서비스를 판매하고 제공하는데 필요한 모든 요소를 소유하거나 제어하는 무선 통신 서비스 공급자다....

AWS SAMLocal

AWS는 서버리스 환경에서의 애플리케이션 구현 모델인 AWS SAM을 개발하고 있다. 여기에는 SAM 사양과 SAM 템플릿을 AWS CloudFormation으로 변환하는 코드, 프로그래밍 예제 등을 포함하고 있다. SAM Local은 SAM의 구현체다. 서비리스 응용 프로그램을 만들려면, 람다함수에 대한 사양을 저장하는 JSON이나 YAML 형식의 SAM...

AWS VPC

클라우드의 기본 개념은 1. 컴퓨팅,네트워크,스토리지 풀을 만들고 1. 유저가 자원을 요청하면 컴퓨팅,네트워크,스토리지를 제공 - IaaS 1. 유저가 소프트웨어를 요청하면 IaaS 위에 소프트웨어를 전개해서 제공 - SaaS 1. 유저가 개발환경을 요청하면 IaaS와 SaaS를 기반으로 개발 환경을 제공 - PaaS이다. 인터넷 공간에 "하드웨어와 ...

Vue.js 이벤트 핸들링

v-on 지시자(directive)로 DOM 이벤트를 듣고 Javascript를 실행 할 수 있다.

API Gateway

몇년 전부터 MSA를 인터넷 서비스에 적용하기 위한 노력을 하고 있다. 특히 컨테이너를 기반으로 하는 MSA에 관심이 있다. MSA는 클라우드 환경이 일반화되면서 주도적인 개발모델이 됐다. 클라우드는 네트워크, 컴퓨터 메모리를 통합해서 하나의 컴퓨터처럼 보이게 한다. 기존에 서버 단위로 실행되는 애플리케이션들은 클라우드 환경에서 마치 프로세스처럼 작동을 한...

Go에서의 HTTP Session 관리

웹 브라우저를 이용한 HTTP 기반의 데이터 통신에서, 서버는 클라이언트의 상태를 유지하기 위해서 쿠키(cookie)를 사용한다. 세션(session)은 쿠키의 사용 방식 중 하나다. 서버는 클라이언트의 상태를 유지하기 위해서(예컨데 로그인 상태인지, 어떤 상품을 구매했는지, 이전에 어떤 페이지에 머물렀는지 등) 쿠키를 사용한다. 좋은 방법이긴 하지만, 중...

TDD - Test Driven Development

툴을 완벽하게 다루지 않더라도 쓸모가 있을 수 있다. 어떤 툴은 대략 다루는 정도로도 큰 쓸모가 있을 수 있다. 테스트 주도 개발(Test-driven development)라고 부르는 TDD가 그렇다. 소프트웨어는 유동적이고 예측하기 어렵다. 시장이 어떤 방식으로 변할지 모르기 때문에, 변화에 대응하면서 짧은 주기로 완성된 소프트웨어를 시장에 내놓을 수 ...

공유 자동차

라이드쉐어링은 흔히 카풀(carpooling)이라고 알려져 있다. 이왕 자동차를 몰고 나왔으니, 목적지가 같은 사람을 태워서 가자는 거다. 처음에는 비슷한 동네에 사는 직장 동료들끼리 친목도 도모할 겸, 기름 값도 아끼고 환경도 보호하는 공동체 운동에 가까운 활동이었다. 스마트폰과 소셜 서비스가 나오기 전에는 사실 적당히 아는 사람외에 카풀을 하는게 쉽지 ...

도커와 DevOps

컨테이너 기술이 필요한가 ? 라고 묻는 다면 마땅한 답이 생각나지 않을 것이다. 기술적으로는 "가상머신 보다 빠르게 실행 할 수 있다", "메모리와 CPU를 효과적으로 사용 할 수 있다"는 장점이 있다고 말 할 수 있겠다. 하지만 그게 그렇게 중요한 특징인가 ? 예컨데, 가상머신 기반의 시스템의 변경, 개발에서 배포 프로세스의 재 설계, 혹은 컨테이너 기반...