캐시에 대해서는 두 번이나 정리한 적이 있으므로, 오늘은 바로 본론으로 들어간다. 2022.12.11 - [Development/Technical Interview] - [면접 준비 - Java?]Primary Memory [면접 준비 - Java?]Primary Memory 어제오늘 JVM의 메모리 구조를 공부하다가 속도와 용량, 일처리 속도의 최적화에 대해 조금 더 알고 싶어서 찾아보게 되었다. 당연하게도 관련 자료가 매우 많고 논문까지 쌓여있는(...) 수준이라 gnidinger.tistory.com 2023.01.14 - [Development/Database] - [Redis]캐시(Cache), 그리고 레디스(Redis) [Redis]캐시(Cache), 그리고 레디스(Redis) Cache 전에..
목차 [면접 준비 - Network]CORS에 대하여 - 2 CORS 교차 출처 리소스 공유(Cross-Origin Resource Sharing, CORS)는 추가 HTTP 헤더를 사용하여 웹 애플리케이션이 다른 출처의 선택한 리소스에 접근할 수 있는 권한을 부여하도록 브라우저에 알려주는 메커니즘이다. 여기서 다른 출처란 프로토콜, 도메인, 포트가 다른 곳을 가리킨다. 계속해서 CORS 정책을 지킨 요청이란 대상 리소스에서 올바른 CORS 헤더가 담긴 응답을 받는 요청이라 할 수 있다. 참고로 교차 출처 요청이 발생할 시 브라우저는 요청 헤더에 Origin을 담아서 보낸다. 또한 올바른 CORS 헤더란 보통 아래와 같은 "Access-Control-Allow-Origin:" 헤더를 말하며 HTTP/1...
면접 답변용으로 간결하게 정리. Java를 사용하는 이유 객체지향 진영의 대표적인 언어이다. 캡슐화(데이터를 클래스로 묶어 사용, 제한자를 통한 정보 은닉), 상속(재사용성 증가, 단일 상속만 가능- 죽음의 다이아몬드) 추상화(쉽게 말해 상속의 반대, 공통사항을 추출 - 중복 코드 제거), 다형성(오버라이딩@Override, 오버로딩) JVM을 이용해 운영체제에 독립적으로 구현 및 실행할 수 있다. 역시 운영체제에 독립적인, 자바API를 사용한 멀티스레드 구현 GC를 통한 자동 메모리 관리 -> 개발속도의 증가 -> 비용 감소 자바, 리눅스, MySQL등이 기본적으로 무료이기 때문에 비용이 적게 든다. 수많은 레퍼런스에서 보장받는 안전성 및 JVM의 직접적인 메모리 관리에 따른 높은 보안 Spring을 ..
목차 Spring Boot 스프링 부트는 복잡한 세팅과 구성을 개발자 대신 간결하게 처리하는 스프링 프로젝트 중 하나다. 구체적으로는 복잡한 .xml 파일에서 .yml 파일로의 전환 build.gradle을 통한 의존 라이브러리 버전 자동 관리 starter 모듈 의존 라이브러리를 통한 앱 및 앱을 띄울 서블릿 컨테이너 자동 구성 .jar 파일로의 빌드를 통해 바로 실행 가능한 파일 생성 내장 WAS(Web Application Server, 혹은 서블릿 컨테이너)를 통한 손쉬운 배포 가 그 특징이라고 할 수 있다. +) 서블릿 컨테이너 - 클라이언트의 요청을 처리하고 반환하는 서블릿의 실행 및 생명주기를 관리하는 역할 Spring AOP AOP(Aspect Oriented Programming)는 직역..
섹션 4가 끝났다. 이상하리만치 빨리 끝나버린 섹션 4 기간 동안 머리와 수염이 자랐고 손 끝이 여러 번 베였고 카누 라이트 로스팅을 알게 되었으며 지식은 좀처럼 늘지 않았다. 요약 어제 동기 중 한 분 덕분에 알게 된 경과 날짜 총 119일의 요약은 아래와 같다. 다행스럽게도 공부하다가 지치는 밤이면 위와 같은 짤을 만들며 보내서인지 그리 외롭진 않았던 것 같다. 하지만 해결되지 않는 에러로 가득 찬 인텔리제이 화면이나 풀지 못해 쌓여버린 데일리 코딩이나 가끔은 아이패드로 열리지 않는 유어 클래스 컨텐츠와 다가올 프로젝트 팀원들에 대한 미안함이 겹치는 날이면 나도 모르게 하차 생각을 하기도 했다. 가끔 반 정도는 세상에 대한 반항심으로 가득해 응~ 하차하면 그만이야~ 를 되뇌며 새벽까지 맥북을 잡고 씨..
프로젝트 리액터(Project Reactor), 혹은 리액터는 리액티브 스트림즈의 구현체다. 로고와 이름부터 원자로, 아이언맨을 떠오르게 만드는 리액터는 2014년에 태어난 현대적인 기술로 2022년 현재 3.4.24 버전까지 릴리즈 되어있다. 스프링 MVC와 비교했을 때 가장 큰 차이점은 논 블로킹 통신을 지원한다는 점이며, 명령형이 아닌 선언형 프로그래밍으로 이루어졌다는 것 역시 큰 차이점이다. 지난 글에서 리액터를 사용한 리액티브 프로그래밍의 기초와 용어에 대해 보았으니, 2022.10.13 - [Development/Spring] - [Spring]리액티브 프로그래밍 시작하기, 용어 정리 [Spring]리액티브 프로그래밍 시작하기, 용어 정리 지난 글에서 리액티브 프로그래밍과 리액티브 스트림즈, ..
지난 글에서 리액티브 프로그래밍과 리액티브 스트림즈, 그 구현체인 프로젝트 리액터에 대해 알아보았다. 2022.10.12 - [Development/Spring] - [Spring]리액티브 프로그래밍(Reactive Programming) 2022.10.12 - [Development/Spring] - [Spring]리액티브 스트림즈(Reactive Streams) [Spring]리액티브 스트림즈(Reactive Streams) 지난 글에서 리액티브 시스템이란 쉽게 말해 반응 속도가 빠른 프로그램을 설계하는 원칙이며 리액티브 프로그래밍은 그 원칙을 구현하는 논 블로킹, 비동기 방식의 선언형 개발 패러다임이라 gnidinger.tistory.com 짧게 요약하면 아래와 같은 내용이다. 리액티브 프로그래밍 ..
목차 지난 글에서 리액티브 시스템이란 쉽게 말해 반응 속도가 빠른 프로그램을 설계하는 원칙이며 리액티브 프로그래밍은 그 원칙을 구현하는 논 블로킹, 비동기 방식의 선언형 개발 패러다임이라 했었다. 2022.10.12 - [Development/Spring] - [Spring]리액티브 프로그래밍(Reactive Programming) [Spring]리액티브 프로그래밍(Reactive Programming) 리액티브 프로그래밍(Reactive Programming)이란 논 블로킹, 비동기 데이터 흐름 및 새로운 정보의 가용성에 기반을 둔 선언형 개발 패러다임이다. 또는 리액티브 시스템을 구현하는 방법이자 하위 개 gnidinger.tistory.com 이번 글에선 리액티브 프로그래밍의 표준 사양인 리액티브 ..
목차 리액티브 프로그래밍(Reactive Programming)이란 논 블로킹, 비동기 데이터 흐름 및 새로운 정보의 가용성에 기반을 둔 선언형 개발 패러다임이다. 또는 리액티브 시스템을 구현하는 방법이자 하위 개념이라고 볼 수도 있다. 정의에 사용된 단어에 대한 뜻은 잠시 후에 알아보기로 하고, 우선 리액티브 시스템이 무엇인지 정리하고 가자. Reactive System 리액티브 시스템이란 '반응이 좋은, 민감한' 시스템이란 뜻이다. 이렇게 말해선 잘 와닿지 않을 수도 있으니, 조금 더 직관적으로 말하자면 리액티브란 한 마디로 입력이 발생했을 때 최대한 빠른 시간에 응답하도록 하는 설계 원칙이라고 할 수 있다. 이는 웹 앱에서 굉장히 중요한 원칙인데, 고객들이 대체로 느린 반응속도를 기다려주지 않기 때..
- Total
- Today
- Yesterday
- 유럽
- 맛집
- 리스트
- 세계여행
- BOJ
- Backjoon
- Python
- 남미
- 칼이사
- 지지
- 유럽여행
- 야경
- Algorithm
- 백준
- 세계일주
- 면접 준비
- 스트림
- a6000
- 세모
- 파이썬
- 동적계획법
- 자바
- 스프링
- 기술면접
- 중남미
- spring
- RX100M5
- 여행
- java
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |