목록전체 글 (518)
개발놀이터
Q. CAP 정리에 대해서 설명해주세요. A. CAP 정리는 분산시스템에서 Consistency, Availability, Partition tolerance 이 세가지 속성을 모두 만족시키는 데이터베이스는 없다는 정리입니다. Consistency는 같은 시간에 클라이언트가 같은 데이터를 봐야 한다는 정합성이고, Availability는 모든 노드가 요청에의한 응답을 할 수 있어야 한다는 가용성이고, Partition tolerance는 장애 상황에서도 애플이케이션이 작동해야 한다는 장애 허용입니다. Q. CAP정리에서 RDBMS는 어디에 속하나요? (충분히 물어볼 수 있음) A. RDBMS는 분산시스템이 아니고, CAP정리는 분산시스템을 기반으로한 정리이기 때문에 RDBMS를 CAP정리로 설명하는 것은..
redundancy : 여분, 잉여 -> CS에선 "필요한 양보다 더 많은 양을 준비해 안정성을 올린다" 라는 뜻 reliability : 신뢰성 subtract : 빼다, 덜다, 공제하다 lessen : 경감하다 inspect : 면밀하게 살피다 / 점검하다 specialized : 전문의 / 분화된 criteria : 기준 account : 계좌, 계정 / (이유를) 밝히다 / 설명하다 A load balancer acts as the “traffic cop” sitting in front of your servers and routing client requests across all servers capable of fulfilling those requests in a manner that ma..
이번 포스팅에서는 로드 밸런싱에 대해서 알아볼 예정입니다. 로드 밸런싱이란 쉽게 말해서 트래픽을 분산 처리 해주는 시스템인데요. 이름 그대로 짐 (Load) 을 나눠주는 (Balancing) 시스템이죠. 요즘 IT 대기업을 필두로 엄청난 트래픽이 유발되고 있죠? 점심시간에 폭주하는 트래픽을 감당해야 하는 배달의 민족이나 명절 때 엄청난 트래픽을 감당해야 하는 쿠팡까지 로드 밸런싱을 사용하지 않는 기업은 없을 것 같은데요. 우리는 이번 포스팅에서 로드 밸런싱이 무엇인지, 로드 밸런싱을 구현한 알고리즘은 뭐가 있는지, 로드 밸런싱에는 어떤 것들이 있는지에 대해서 알아보도록 하겠습니다. 로드 밸런싱 (Load Balancing)로드 밸런싱은 둘 이상의 컴퓨터 사이에서 작업을 분산시켜주는 작업을 뜻합니다..
임홍택 저자의 "90년생이 온다"를 읽었다. 군대에서 읽었던 책 중 하나이고 집 책장에 꽂아놨는데 무슨 내용인지 까먹어서 다시 읽은 책이다. 사실 군대에서는 서평에 미쳤어서 내용은 딱히 중요하게 생각 안하고 읽었던 터라 그랬던 듯 하다. 내용은 제목 그대로 90년생이 온다는 내용이고 도입부는 공시생이 역대 최대를 찍었다는 내용으로 시작한다. 합격률은 1.8퍼센트 하지만 응시자는 30만명이 넘어가는 이 상황, 무엇이 90년생들을 이렇게 몰아넣었을까 하는 의문으로 이 책은 시작된다. 이 책에서는 세대를 어떻게 나눌 것인지 기준을 세우고, 90년생들이 처한 현재 상황, 90년생의 특징, 90년생이 사회로 나온 지금 기존 세대들과 갈등이 생긴 원인, 90년생이 주 소비층이 되는 사회에서 눈여겨봐야할 점 등을 다..
요근래 공부를 정말 열심히 했는데 얼마전 공부가 전혀 머리에 들어오지 않고 오히려 공부하기가 싫은 날이 있었다. 알고리즘 문제는 집중이 안됐으며, 영어로 된 문서들은 해석이 안되고, 인강은 귀에 들어오지 않는 이상황... 이날 나는 너무 공부를 많이한 것에 대한 반작용으로 결론짓고 공부를 하루 쉬자고 마음먹었다. 근데...공부를 쉬면 쉬는시간엔 뭘하지? 머릿속에 수많은 취미생활들이 스쳐지나갔다. 유튜브, 게임, 애니메이션, 넷플릭스 등등 근데...유튜브는 볼게 없고 게임은 한번 빠지면 헤어나오질 못해 손대기가 무섭고 애니메이션은 재밌는건 다 봤으며 넷플릭스는 시간을 오래 잡아먹으니 취미생활도 뭐하나 손에 잡히는게 없었다. 그때 문득 든 생각 "책이나 읽어볼까?" 나는 어릴때부터 책 읽는걸 싫어하지 않았고..
stakeholders : 제삼자 seamless : 원할한 Manipulation : 조작 notorious : 악명높은 around : ~중심에서 growing number : 점덤 더 많은 ensure : 확인하다 / 보장하다 ingestion : 섭취 enrichment : 강화 / 농축 / 풍부 aggregate : 집계 this translates to a faster, more seamless flow. 이러한 작업이 더 빠르고 더 원할한 흐름을 가져다 준다. Elasticsearch and the ecosystem of components that’s grown around it called the “Elastic Stack” has been used for a growing number ..
이번 포스팅에서는 Elasticsearch에 대해서 알아보겠습니다. Elasticsearch가 뭐야? 라고 물으면 "index 아냐?", "검색 엔진이잖아", "데이터베이스 분석하는 툴이지", 구글같은거?" 이런 많은 대답이 오고 갈 수 있는 이유는 Elasticsearch가 위의 모든 내용을 포함하고 있기 때문입니다. Elasticsearch는 웹사이트나 document에서 간단한 검색부터, 로그데이터를 분석하고 모으는 일이나, 데이터를 분석하고 시각화해주는 똑똑한 비즈니스 툴이죠. 이번 포스팅에서는 Elasticsearch가 어쩌다 가장 인기있는 엔터프라이즈 검색 엔진이 되었는지 그리고 가장 인기있는 DBMS 탑10에 이름을 올리게 되었는지에 대해서 설명해보겠습니다. Elasticsearch가 뭐야?..
이번 포스팅에선 동기화 프로그래밍, 비동기화 프로그래밍에 대해서 알아보도록 하겠습니다. 동기화 프로그래밍과 비동기화 프로그래밍은 네트워크 공부를 하다보면 쉽게 접할 수 있는 주제입니다. 그만큼 중요한 주제이기도 하죠. 이번 포스팅에선 동기화, 비동기화 프로그래밍이 무엇인지, 둘의 차이는 무엇인지, 둘의 장단점은 무엇인지, 둘의 사용처는 어디인지에 대해서 자세히 알아보도록 하겠습니다. 동기화, 비동기화의 특징 동기화 동기는 Synchronous 줄여서는 sync라고도 부릅니다. 동기는 Blocking Architecture라고도 불리고 반응형 시스템을 위한 프로그래밍을 할 때 사용하면 좋습니다. 동기는 굉장히 엄격한 순서를 가지고 동작하는데 request한번 response한번 이렇게 한 세트로 동작하는데..
desire : 열망 / 원하다 incorporates : 통합하다 reply to : 응답하다 it is not available because the nodes in the other partition do not provide an answer to the queries they receive. 가용성은 아니다 왜냐하면 다른 파티션안에서 노드들이 서버가 받은 쿼리에대한 응답을 제공하지 않기 때문이다.
이번 포스팅에서는 Brewer (브루어)의 CAP정리에 대해서 알아보도록 하겠습니다. CAP정리가 20년도 더 된 정리이기 때문에 그걸 보완한 PACELC 정리에 대해서도 알아보겠습니다. CAP에 대해서 구글링을 해보면 많은 분들이 CAP이론이라고 하시는데 이론과 정리는 엄연히 다릅니다. 이론은 증명되지 않은 생각? 주장? 에 가깝고 (e.g 일반 상대성 이론) 정리는 증명이 완료된 이론을 정리라고 합니다 (페르마의 마지막 정리). 정확히 말하면 CAP는 이론이었다가 증명이 완료된 후 정리가 된것입니다. 정식 영문 명칭도 theory가 아닌 theorem으로 되어있습니다. p.s 저도 CAP이론이라고 말하는게 더 멋있어서 이론이라고 부르고 싶은데... 이론이 아닌걸 이론이라고 부르면 아무래도 잘못된 ..