I leaned/Etc

· I leaned/Etc
Redis란? Key, Value 구조의 비정형 데이터를 저장하고 관리하기 위한 오픈 소스 기반의 비관계형 데이터 베이스 관리 시스템 (DBMS)이다. 데이터베이스, 캐시, 메세지 브로커로 사용되며 인메모리 데이터 구조를 가진 저장소이다. 왜 필요한가? 데이터베이스는 물리디스크에 직접 쓰기 때문에 데이터가 쉽게 손실되지 않는다. 하지만 사용자가 많아질수록 부하가 많아져 느려질 수 있다. 캐시를 이용하여 데이터베이스의 과부화를 막을 수 있다. jwt방식으로 로그인기능 구현시 보다 Refresh토큰과 로그아웃을 효율적으로 구현할 수 있다. jwt방식은 만료시간이 적힌 입장 티켓을 클라이언트에게 발급해주는 방식이다. 이 방식은 한번 발급해주면 서버에서는 더이상 토큰내용을 수정할 수 없다. 그래서 access토..
· I leaned/Etc
웹의 기본 아키텍처 웹의 복잡도가 증가함에 따라 변화해왔다. 3가지관점 관심사의 분리 관측가능한 시스템 효율적인 리소스 사용 대용량 시스템의 모습 대용량시스템은 왜 병목인가 병목의 뜻 병목(영어: bottleneck) 현상은 전체 시스템의 성능이나 용량이 하나의 구성 요소로 인해 제한을 받는 현상을 말한다. "병목"이라는 용어는 물이 병 밖으로 빠져나갈 때 병의 몸통보다 병의 목부분의 내부 지름이 좁아서 물이 상대적으로 천천히 쏟아지는 것에 비유한 것이다. 스케일 업과 스케일 아웃 스케일업: 서버의 크기자체를 늘려서 성능을 높이는 것 스케일 아웃: 서버를 여러대두어 성능을 높이는 것 스케일업 스케일 아웃 유지보수 및 관리 쉬움 여러노드에 적절히 부하분산 필요 확장성 제약이 있음 스케일업에 비해 자유로움 ..
· I leaned/Etc
도커 컨테이너 기반의 가상화 플래폼 격리 된 공간에서 프로세스를 실행하는 느낌 가볍다. vs 하이퍼바이저 기반의 가상화(OS 가상화) 호스트 자원을 사용하기 위해 게스트OS를 거쳐야함 -> 느리다. 도커허브 도커에서 제공하는 이미지 저장소 https://hub.docker.com/ Docker Hub Container Image Library | App Containerization Deliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by millions of Docker users worldwide. hub...
· I leaned/Etc
바이너리 파일 문자와 숫자가 저장되어 있는 파일 이미지 파일등을 메모장으로 열면 깨져서 보인다. 데이터를 있는 그대로 읽고 쓴다. 쓰기: 문자 → 문자, 숫자 →숫자 읽기: 문자 → 문자, 숫자 → 숫자 텍스트 파일 문자만 저장되어 있는 파일 사람이 읽기 쉽다. 숫자를 문자로 변환 후 쓴다. 쓰기: 문자 → 문자, 숫자 → 문자 읽기: 문자 → 문자 12같은 경우에는 4바이트에서 2바이트로 줄고 12.625의 경우 바이트가 4바이트에서 6바이트로 커진다. 경우에 따라 다르다. MIME Multipurpose Internet Mail Extensions 텍스트 기반 프로토콜에 바이너리 데이터 전송하기 위해 고안 HTTP의 Content-Type헤더에 사용, 데이터의 타입을 명시 아래그림은는 대표적인 타입만..
· I leaned/Etc
HTTP Hyper Text Transfer Protocol 프로토콜 서로간의 통신을 위한 약속 규칙 주고 받을 데이터에 대한 형식을 정의한 것 단순하고 읽기 쉽다. 텍스트 기반의 프로토콜 stateless(상태를 유지하지 않는다.)- 클라이언트 정보를 저장X → 같은 컴퓨터인지 구별 못함 → 이를 보완하기위해 쿠키,세션 사용 헤더는 대소문자 구분x, :문자 바로 뒤 공백 무시확장 가능하다. → 커스텀 헤더 추가 가능 HTTP 응답 메시지 상태코드( HTTP/1.1 200 OK) 에서 중간 숫자가 코드, OK는 설명, 설명은 바뀔 수 있다. 100번대- 클라이언트_서버간의정보통신 200번대- 성공 300번대- 다른 URL로 요청해라 400/500번대- 에러 HTTP에서 헤더와 바디를 빈줄로 구분한다. H..
· I leaned/Etc
1. JAR? WAR? 기본적으로 JAR, WAR 모두 Java의 jar 옵션 (java -jar)을 이용해 생성된 압축(아카이브) 파일로, 애플리케이션을 쉽게 배포하고 동작시킬 수 있도록 관련 파일(리소스, 속성 파일 등)을 패키징 한 것 JAR (Java Archive) JAVA 어플리케이션이 동작할 수 있도록 자바 프로젝트를 압축한 파일 Class (JAVA리소스, 속성 파일), 라이브러리 파일을 포함함 JRE(JAVA Runtime Environment)만 있어도 실행 가능함 (java -jar 프로젝트네임.jar) WAR (Web Application Archive) Servlet / Jsp 컨테이너에 배치할 수 있는 웹 애플리케이션(Web Application) 압축파일 포맷 웹 관련 자원을 ..
· I leaned/Etc
TDD란? TDD란 Test Driven Development의 약자로 ‘테스트 주도 개발’이라고 한다. 반복 테스트를 이용한 소프트웨어 방법론으로 작은 단위의 테스트 케이스를 작성하고 이를 통과하는 코드를 추가하는 단계를 반복하여 구현한다. 짧은 개발 주기의 반복에 의존하는 개발 프로세스이며, 애자일 방법론 중 하나인 eXtream Programming(XP)의 ‘Test-First’ 개념에 기반을 둔 단순한 설계를 중요시한다. XP(eXtream Programming)란? 미래에 대한 예측을 최대한 하지 않고 지속적으로 프로토타입을 완성하는 애자일 기방법론 중 하나이다. 이 방법론은 추가 요구사항이 생기더라도 실시간으로 반영할 수 있다. 단위 테스트란(unit Test)? 한 단위만을 테스트 하는것,..
· I leaned/Etc
DevOps = Development + Operations DevOps 개발과 운영의 합성어 Dev: Plan - Code - Build - Test Ops: Release - Deploy - Operate - Monitor Cross Functional Team: 개발과 운영을 한 팀으로 묶어 프로세스의 자동, 단일화 CI/CD Tool 이용하여 Build, Test, Deploy 자동화 Pros 커뮤니케이션 리소스 개선 개발, 배포 속도가 빨라짐 프로세스 간소화 짧은 릴리즈 주기 CI/CD Continuos Integratio / Continous Delivery(지속적인 통합, 배포) CI/CD (Continuous Integration/Continuous Delivery)는 애플리케이션 개발 단..
윤재에요
'I leaned/Etc' 카테고리의 글 목록 (3 Page)