🌐 IT Knowledge/General Web Knolwdge 8

클러스터링, 레플리카, 그리고 샤딩

클러스터링 예시를 하나 들어보자. DB를 한 대만 운영 할 경우 문제점은, DB 서버가 죽으면 관련된 서비스 전체가 중단된다는 점이다. 이에 대한 가장 간단한 방안으로 DB 클러스터(Cluster)가 있다. 동일한 DB 서버를 두 대를 묶고 두 DB 서버를 Active-Active 상태로 운영하면, 하나의 DB서버가 죽더라도 나머지 DB 서버가 살아있기 때문에 정상적으로 서비스가 가능하다. 또한 이전에 하나의 서버가 부담하던 부하를 두 개의 DB에 나눠서 감당하므로 CPU, Memory 관리 차원에서 효율적이다. 단점으로는 DB 스토리지를 두 DB 서버가 공유하기 때문에 병목이 발생할 수 있다는 점이다. 그리고 DB를 1개만 사용하는 것 보다는 2대 이상을 운용하는 것이 더 많은 비용이 발생한다. 병목현..

GraphQL과 Swagger(OAS), 그리고 RAML(RESTful API Modeling Language)

Swagger(OAS = Open API specification)과 RAML은 REST API 문서화, 즉, RESTful API 개발이라는 공통점을 가지고 있다. 디테일한 설명들은 아래의 영문 링크들을 참고하자. The link 1 : https://www.educba.com/raml-vs-swagger/ RAML vs Swagger | Top 25 Differences You Should Know with Infographics Guide to RAML vs Swagger. Here we discuss the difference between RAML vs Swagger along with key differences, infographics and comparison table. www.educb..

Glboal API Searching Site

The link : https://www.programmableweb.com/apis/directory Discover New APIs Search the Largest API Directory on the Web www.programmableweb.com 전 세계의 어지간한 대형 사이트에서 제공하는 API를 검색할 수 있는 웹 사이트. 대부분 REST API를 제공한 다는 것이 특징이며, 모든 source는 영어로 기술되어있다. 필요한 API를 찾고 싶을 때 국내 API외에 해외 API를 써보고 싶다면 이 사이트를 활용하자.

OOTB, Configured, 그리고 Customized

OOTB (Out-of-the-Box) : 소프트웨어 벤더로부터 다이렉트로 전달되는 기능, 혹은 사업체 단위에의해서 쉽게 컴퓨터 환경이 설정될 수 있는 기능 (IT 유저가 아닌 일반 사업체 유저 단위에 의해서). 이때 workflow tool, template, 또는 벤더에 의해 다이렉트로 제공되는 실행 과정이 포함되어 전달되기도 한다. -> 쉬운 요약 : 말 그대로 IT 유저가 아닌 일반인들도 쉽게 접근할 수 있도록, 복잡한 환경 설정 및 심화지식이 없어도 필요한 요소들이 자동 셋팅되어있음을 뜻함. Out of the box를 직역하면 박스에서 그대로 꺼낸걸 의미하며, 이미 완제품으로 배송이 되어있음을 뜻한다. 동시에 가치 창출을 위해 가장 빠르고 쉬운 방법을 제공하는 기본 모델을 뜻하기도 한다. Co..

Monolithic, SOA, 그리고 MSA

[총괄 개념 정리] 핵심 정리 사이트 [세부 개념 정리] SOA와 MSA (1) SOA와 MSA (2) [함께 알면 좋은 개념] EAI, ESB, API 게이트 웨이,서비스 매쉬 [SOA와 MSA의 개념 요약] MSA and SOA comprison(Written in English) Microservices Architecture (MSA) Service-Oriented Architecture (SOA) Protocol 가벼운 프로토콜 사용 (ex : HTTP, REST) 멀티 메세지 프로토콜 지원 Focus 탈동조화 = Decoupling (작동에 있어서 서비스와 서비스의 상관관계를 최소화) 어플리케이션 서비스의 재사용성 Approach 가능한 최소한으로 공유하는 아키텍쳐 접근법 가능한 최대한으로 공..

REST, RESTful, 그리고 RESTful API

REST란? Representational State Transfer : 자원의 상태 전달이며, 일종의 네트워크 아키텍처다. 일반적으로 아래에서 언급되는 6가지의 아키텍처를 잘 지켰느냐에 따라 Restful하다, REST API라고 말한다. RESTful API 설계를 위한 6개의 핵심 아키텍처 Client - Server - Client와 Server가 서로 분리되어야 하며, 서로 독립적으로 개발되어야한다. - 자원이 있는 쪽을 Server라 칭하며, 자원을 요청하는 쪽이 Client가 된다. - REST서버는 API를 제공하고 클라이언트는 사용자 인증에 관련된 일들을 직접 관리한다. Stateless - 요청에 대해서 클라이언트의 상태를 서버에 저장하지 않는다. - REST API는 Stateless..

SMTP vs IMAP vs POP3

POP3 IMAP SMTP 기능 메일 수신 메일 발신 서버 부담 낮음 높음 트래픽 상황에 따라 달라짐 동기화 여부 X O 해당 안됨 포트번호 (일반적인 경우) 110 143 25 출처 및 참고 블로그 (디테일한 차이점 확인 가능) : blog.naver.com/virq/222212181769 [네트워크] POP3, IMAP, SMTP 개념 및 차이점 비교 우리는 구글, 네이버, 다음과 같은 포털 사이트와 직장에서 발급 받은 여러 이메일 계정들을 가지고 있다. ... blog.naver.com

Web Server vs WAS(Web Application Server)

1. Web Server - 정적인 페이지들을 표현하기 위한 서버로, HTML, JPG, GIF같은 이미지를 HTTP 프로토콜을 통해 웹 브라우저로 제공하는 서버 - 사용자가 클라이언트로 요청을 보내면 그 명령에 대한 처리를 실행하고 다시 사용자에게 답변을 보내주는 역할을 수행 - 정적인 데이터를 처리하게 되며, 다양한 동적인 데이터를 요청하게 되면 WAS 서버로 데이터를 넘겨주게 됨 ex : 회사 소개 홈페이지 (별도로 데이터를 입력받을 필요 없이 만들어둔 html만을 그대로 내보내면 된다) - 종류 : Apache, MS IIS, tMaX, WebtoB, nginx 등 2. WAS (Web Application Server) - 동적인 페이지를(jsp, php, asp)등을 표현하기 위한 서버 ex ..