전체 글

전체 글

    HTTP 란?

    HTTP 란?

    HTTP(Hyper Text Transfer Protocol) Request, Response 구조이다 Client + Server 구조로 생각할 수도 있고, 현재 Meta인 (React + springboot) 같은 구조에 적합하다. 서버가 클라이언트의 상태를 모르는 Stateless 구조이다. 서버를 물고 있지 않기 때문에 scale in-out 에 유리하다. 로그인 후에 작업들에 대해서 상태 유지에 불리하다. 구조 HTTP Method --> 행위를 지정 GET: 데이터의 조회 POST: 데이터 등록, 프로세스 처리 PUT: 데이터의 덮어쓰기 DELETE: 데이터의 삭제 PATCH: 데이터의 일부분 수정 REST API 설계시 URI 고민 회원 관리 시스템 API URI 설계를 고민해보겠습니다. 회..

    네트워크 개념 정리(TCP/UDP/IP/DNS/URL)

    네트워크 개념 정리(TCP/UDP/IP/DNS/URL)

    Protocol 통신 장비간의 데이터 전송 규약 IP(Internet Protocol) IP를 기준으로 전송하고 패킷이라는 단위로 정보를 주고 받음. 한계 패킷을 받을 상대가 없어도 전송 내 컴퓨터에서 2개 이상의 어플리케이션이 실행시 도착지를 찾을수 없다. 전송 도중 소실되어도 알 수 없음. 패킷의 사이즈가 클 경우 둘로 나누어 지고 도착 순서 보장이 없다. ※NAT : IP 의 개수 부족으로 나온 기술로, 사설IP -> 공인IP / 공인IP -> 사설IP 로 변경해주는 기능 TCP/UDP(Tranmission Control Protocol/User Datagram Protocol) 위에서 언급한 IP 의 한계를 보완하기 위해 나온 프로토콜로 IP와 함께 사용되어진다. 클라이언트에서 서버로 요청시 Ap..

    [OS] 프로세스와 스레드 차이

    [OS] 프로세스와 스레드 차이

    목표 프로세스와 스레드 개념을 설명할 수 있다. 프로세스와 스레드의 차이를 설명할 수 있다. 멀티 프로세스보다 멀티 스레드를 사용하여야 하는 이유 프로그램(Program)이란? 소프트웨어 or 어플리케이션을 의미 Ex) 웹브라우저, IntelliJ, Web Application 등 프로세스(Process) 란? 프로그램을 실행하여 메모리상에 올라간 것을 의미한다. 한개의 프로세는 다른 프로세스 직접 접근이 불가능하다. 스레드(Thread) 란? 프로세스가 일을 하기 위한 일개미 역할이다. stack 영역만 개인으로 쓰고, code, data, heap 영역은 공유한다. 멀티 프로세스 하나의 프로그램을 여러 프로세스로 실행하여 작업을 처리하게 하는것이다. 장점 한개의 프로세스가 문제가 난다고 하여 다른 프..

    Elasticsearch mapping (Feat.wonya)

    Elasticsearch mapping (Feat.wonya)

    mapping 은 RDB 에서 date type 이다. integer, boolean, varchar 등등.. 엘라스틱은 mapping 을 지정하지 않고 insert 시 알아서 자동 맵핑을 해줌. 1. 자동매핑 확인 1번 : Index 생성 2번 : _doc 라는 type 으로 document 하나 insert 3번 : test index 의 자동 mapping 정보 보기 4번 : 자동매핑된 내용 여기서 궁금할만한게 "type" : "text", 밑에 fields 해서 "keyword 가 또 들어간건데 이거는 type 을 text 로도 하고 keyword 로도 하는 다중필드 선언이다. 2. 수동매핑 해보기 1번 : 매핑정보 넣어서 Index 생성(setting은 나중에 개인적으로 테스트해본거임) 2번 :..

    Elasticsearch insert (Feat.wonya)

    Elasticsearch insert (Feat.wonya)

    저번시간에는 INDEX 생성을 해보았다. 오늘은 만든 test DB에 RDB에서는 row, 엘라스틱에서는 document 라는걸 만들어 보겠다. POST /test/_doc?pretty 에 대한 설명 POST -> INSERT 라는 의미 /test -> test DB(인덱스)에 멀 하겠다. /_doc -> _doc 라는 table 에 멀 하겠다. ?pretty -> 출력을 예쁘게 하겠다. 그 다음 select 를 해보겠다. 내가 insert 한 내용들이 잘 insert 되었따. 위에 나오는 types removal 라는 에러에 대해 좀 애기해보겠다. 엘라스틱에서 type이라는 개념이 RDB 에서는 Table 과 매칭이 된다. 그래서 예전에는 저 type 을 원하는 값으로 insert 하여 데이터의 유형을..

    Elasticsearch 테이블 생성 (Feat.wonya)

    Elasticsearch 테이블 생성 (Feat.wonya)

    먼저 엘라스틱의 개념을 알아볼게요~ 검색하면 마니 나오니 다른것도 참고해 보세요. 한눈에 볼수 있는 표가 있어 퍼봤습니다. 출처: https://www.slideshare.net/deview/2d1elasticsearch RDB 에서는 DB를 -> 엘라스틱에서는 인덱스(색인) 이라고 합니다. 허나 RDB 와 엘라스틱은 염연히 차이가 있기에 완벽히 매칭되어 생각하지 말길 바란다. 개인적으로 사용하다 보니 DB + Table -> Index 라는 생각이 든다. 실습이 역시 짱이쥬? 바로 test 라는 이름의 테이블을 생성해보겠습니다. 위와 같은 순서로 해보시면 true 라 뜨시고 확인은 test 테이블을 검색해보는 겁니다. total 갯수가 0 으로 표시되네요 아직 데이터가 아무것도 없어서 ㅇㅅㅇ PUT, ..

    window 환경 elasticsearch 셋팅 (Feat.wonya)

    window 환경 elasticsearch 셋팅 (Feat.wonya)

    https://www.elastic.co/kr/start Get Started with Elasticsearch, Kibana, and the Elastic Stack | Elastic Activate additional features Optional: Unlock Platinum features such as machine learning, security, alerting, graph analytics, and more with a free, 30-day trial. www.elastic.co 위 에 접속하시면 최신 버전의 엘라스틱 + 키바나를 다운 받을수 있습니다. 윈도우로 테스트를 위해서 윈도우에 먼저 세팅 하고 나중에 리눅스를 할려고 합니다. 엘라스틱 : 검색엔진 키바나 : 엘라스틱 정보들을 ..

    elasticsearch 시작하며 (Feat.wonya)

    커뮤니티를 만들고 싶어 검색엔진으로 엘라스틱을 사용해 보려고 이 글을 남깁니다. 엘라스틱서치는 전 회사에서 한번 써봤었는데 그때는 2버전을 썼었는데 기억을 더듬으로 시작~! 먼저 윈도우 환경에서 셋팅을 하고 테스트가 다 끝나면 리눅스에 적용해보겠당

    react onClick Event (Feat.wonya)

    react onClick Event (Feat.wonya)

    아령하세요~~~~IT 다들 create-react-app 은 하셨쥬? 결과부터 보시죠 App.js 에서 진행해 볼게요. import React, { useState } from 'react'; function App() { const [count, setCount] = useState(0); return ( 할룽 할룽 {count} setCount(count + 1)} >증가 ); } export default App; useState 이라는걸 사용해서 첫번째는 변수명 두번째는 그 값을 변경시킬수 있는 변수명을 선언한다고 생각하시면 편한것 같아요. 그래서 클릭할때마다 setCount(count + 1) 함수를 실행시켜서 값을 증가시키고 있어요. 주의사항 react는 onClick 카멜체로 쓴다. clas..

    React Hooks 시작

    사이드 프로젝트로 vue + node 를 공부하고 있었는데 회사에서 react 를 한다고 하여 react + node 로 변경하겠습니다.~ 와~ react 도 얼마전 16.8 패치였나요? class 보다는 functional(Hooks) 로 지원을 할 것 같고 create-react-app 을 해보아도 Hooks 로 기본생성이 되길래 저도 Hooks 로 공부 시작해볼려고 해요