HTTP와 HTTPS의 차이점 HTTP는 웹에서 데이터를 주고받기 위한 통신 규약으로 서버가 클라이언트의 상태를 보존하지 않는 무상태성과 연결을 유지하지 않는 비연결성의 특징을 갖는다. 기존 HTTP가 전송계층의 TCP에서 동작한다면, HTTPS는 SSL이라는 보안소켓계층 위에서 보안이 보장된 통신을 하는 프로토콜이며 검색엔진 최적화(SEO)에서도 HTTPS가 유리하다. 인터넷 주소창에 www.naver.com 을 치면 일어나는 일 www.naver.com은 도메인 네임이기 때문에 DNS에 도메인을 검색하기 위한 요청을 보낸다. DNS는 도메인에 대응하는 IP주소를 찾아서 응답한다. 받은 IP주소로 TCP통신을 통해 IP서버에 요청을 보낸다. 요청 받은 서버는 응답 메시지를 TCP 통신에게 보내고 브라우..
WS와 WAS 웹서버(WS)는 apache나 nginx처럼 클라이언트와 직접 통신하는 서버로, 클라이언트의 요청을 받아서 정적인 데이터를 처리하고 동적인 데이터 처리가 필요하면 WAS에게 처리를 요청하고 처리 결과를 클라이언트에게 응답한다. 웹애플리케이션서버(WAS)는 tomcat처럼 DB에 접근하거나 어떤 로직을 수행해야 하는 동적인 처리가 필요할 때 웹서버의 요청을 받아서 처리한다. WAS 또한 WS처럼 정적 리소스를 제공할 수 있지만 굳이 둘을 나누는 이유는, WAS가 정적 리소스까지 모두 처리하게 된다면 중요 애플리케이션 로직이 정적 리소스 처리 때문에 방해를 받을 수도 있고 웹서버가 로드밸런싱 역할을 해서 서버 부하를 줄여줄 수도 있으며 또한 DB정보나 주요 로직들이 WAS에 있기 때문에 WS를..
싱글톤 패턴(singleton pattern) 객체의 인스턴스가 오로지 한 개만 생성되도록 설계하는 패턴으로 private을 이용해 외부에서 인스턴스를 생성하지 못하도록 막고, static을 이용해 어느 영역에서든 접근이 가능하도록 설계한다. 객체가 생성된 이후에는 호출이 되었을 때 최초로 생성된 인스턴스를 사용하기 때문에 메모리 낭비를 막을 수 있다. 싱글톤 패턴은 구현 코드가 많고 내부속성 변경이 어려운 등 유연성이 떨어지며 OCP(개방폐쇄원칙, 기존의 코드를 변경하지 않으면서 기능을 추가할 수 있어야 한다)와 DIP(의존역전원칙)을 위반하기 쉬운데 이러한 단점을 해결해주는 것이 스프링 컨테이너이다. 스프링 컨테이너는 싱글톤 패턴을 적용하지 않아도 객체 인스턴스를 싱글톤으로 관리하는데 이 때 객체 인..
AOP 로그를 남긴다거나 권한을 체크하는 등 일종의 부가기능들은 애플리케이션 전역에서 나타날 수 있는데, 이것을 핵심 기능인 비즈니스 로직에 넣게 되면 중복코드가 많아지고 유지보수가 어려워진다. 로깅이나 권한 검사와 같은 부가기능들은 하나의 관심사를 갖게 되는데 비즈니스 로직을 수행할 때 이러한 관심사들이 비즈니스 로직마다 중복이 되어 횡단으로 나타나기 때문에 이것을 횡단 관심사라고 한다. AOP는 관점지향프로그래밍으로, 핵심 기능인 비즈니스 로직과 부가기능을 분리해서 부가기능인 횡단관심사들을 모듈화해서 객체지향을 보완할 수 있도록 하는 것이 목적이다. 서비스 로직을 하나의 트랜잭션으로 만들 때 원래는 로직의 시작점에 트랜잭션을 열어주고 끝날 때 트랜잭션을 커밋하는 코드가 들어가야 하는데 @Transac..
문제링크 📝 문제 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의 길이를 k라 했을 때, 그 변에 길이가 k인 정삼각형을 추가한다. 파도반 수열 P(N)은 나선에 있는 정삼각형의 변의 길이이다. P(1)부터 P(10)까지 첫 10개 숫자는 1, 1, 1, 2, 2, 3, 4, 5, 7, 9이다. N이 주어졌을 때, P(N)을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, N이 주어진다. (1 ≤ N ≤ 100) 출력 각 테스트 케이스마다 P(N)을 출력한다. 예제 입력 1 2 6 12 ..
- Total
- Today
- Yesterday
- SQLD
- 자바
- java
- 이분탐색
- 자바dp
- JavaScript
- Spring
- SQL
- 스프링
- JPA
- CS
- 프로그래머스
- 자바bfs
- 백준
- 해시맵
- BFS
- Comparator
- 스프링부트
- 형변환
- 자바트리
- 자바스크립트
- 리액트
- Queue
- Nest
- dfs
- 정렬
- 알고리즘
- 타입스크립트
- DP
- Algorithm
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |