사무엘상 17장 1절 ~ 45절유명한 다윗과 골리앗의 이야기이다. 우리는 때때로 인생에서의 골리앗을 만날 때가 있다.우울감, 무기력감, 압도되는 감정 등 여러가지가 있다."해보면 이길 수 있지 않을까?"라는 생각조차 들지 않는 것들이다. 다윗은 두려워하지 않는다. 내가 생각하는 전형적인 강한 사람이다.다윗은 키가 292CM나 되는 골리앗을 두려워하지 않았다.골리앗과 1대1로 싸워서 이기기까지 했다.결과 때문에 아니다. 그의 마음가짐은 내가 원하는 것이기 때문이다. 때는, 블레셋 사람들과 이스라엘 사람들이 싸울 준비를 하고 있을 때,블레셋 사람들이 유다 땅인 엘라 골짜기 한편에 진을 치고 있었다.이스라엘 사람들 역시 엘라 골짜기 반대 편에 진을 치고 있었다.즉, 이스라엘의 땅에서 진을 치고 있던 것이다. ..
분류 전체보기
https://www.acmicpc.net/problem/2096 메모리가 4MB이다.빡세다. 이런 문제는 풀지 말자. 코테에 안나온다.import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main { static int N; static int[] max_dp; static int[] min_dp; static StringTokenizer stringTokenizer; static BufferedReader bufferedReader = new BufferedReader(new InputS..

일반적으로, 애플리케이션 계층에서는 전송 계층까지만 직접 닿을 수 있다.하지만, 잘 알고 있는 애플리케이션 계층과는 다르게, 전송 계층까지는 그리 잘 알지 못한다.TCP를 파헤쳐보자...1. TCP. 전송 계층에서 사용하는 세그먼트 구조헤더 필드+데이터 필드세그먼트는 위와 같이 구성된다.MSS : 세그먼트에 담길 수 있는 데이터의 최대 크기이다.MTU : 네트워크 계층에서 패킷의 최대 크기이다.ex) MSS = MTU - IP 패킷 헤더 크기**보통 MTU는 1500 바이트, MSS는 1460 바이트라고 한다. 그러면, IP 패킷 헤더는 40이겠지?** 2. MSS(1000바이트)의 상황에서 이보다 큰 파일을 TCP를 통해 전송한다면?500000바이트의 파일을 보낸다고 가정해보자.MSS는 1000바이트이..
1. 내가 브라우저를 클릭 : 내 컴퓨터(OS가) 브라우저 Process를 시작윈도우 커널이 브라우저 스크립트를 로드, 메모리에 올림브라우저 Process 생성 Main() 함수 호출(브라우저 프로그램 시작)2. 브라우저의 네트워크 I/O 초기화브라우저 Process의 Main() 내부에서 네트워크 서브 시스템을 초기화한다.이제부터, 네트워크 영역의 I/O(네트워크 I/O)의 시작이다.어플리케이션 영역에서 아래 계층으로 내려간다.3. DHCP 프로토콜의 동작DHCP란 내 컴퓨터(호스트)가 네트워크에 접속할 때, 자동으로 IP 주소 및 네트워크 설정 정보를 할당받도록 하는 프로토콜이다.**주의할 점은 ARP와 DHCP는 다르다는 것이다.****DHCP의 주 관심사는 IP의 할당이다.****DHCP에서 내 ..
https://www.acmicpc.net/problem/17144 이 문제는 노가다 문제였다.딱 1시간 걸렸는데, 순환 부분에서 다른 사람들이 어떻게 처리했는지 확인하면 좋을 듯 하다.import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.List;import java.util.StringTokenizer;public class Main { static int R, C, T; static List airConditioner = new ArrayList(); static int[][] map; stat..
프로젝트를 진행하며, 엔티티 별 응집된프로젝트를 진행하며, 엔티티 별 결합도에 대한 불편함을 느꼈다.예를 들어, 1. 엔티티 별 도메인으로 나누기OrderUserProduct라는 엔티티가 존재하고 이 엔티티 별 도메인으로 나누었다. 2. 각각에 대한 서비스 추가하기서비스 API들은 아래와 같다.-주문하기-주문 확인하기-상품 조회하기 3. 하나의 서비스에 대한 요구사항 확인해보기-주문하기=> 주문하기 위해서는 유저를 확인해야한다.=> 주문하면 상품 엔티티의 재고를 업데이트 해야한다.=> 주문하면 유저를 확인해서 Order를 추가해주어야한다.-유저 마이페이지=> 유저는 자신의 주문을 확인할 수 있다.=> 유저는 Order라는 엔티티를 조회한다. 4. 문제 상황 발생A 팀원이 주문하기 API 코드를 작성하며,..

학습 목표이번 프로젝트에서 하나의 인스턴스에 레디스와 스프링 서버를 같이 띄우는 과정이 있었다.하나의 도커 엔진에 각각의 컨테이너를 포함시키고 이를 EC2에 올렸다.나는 윈도우를 사용 중이어서 윈도우에 가상머신(리눅스)를 띄워 테스트를 했다.이 포스팅으로1. 윈도우 스프링 서버 + 가상머신 레디스 2. 도커(스프링 컨테이너 + 레디스 컨테이너)3. EC2(스프링) + EC2(레디스)4. EC2(스프링) + ElastiCache(레디스)5. JMeter에서 각각의 요청들을 각각의 TCP로 할당(??)하는 과정 이 5가지 환경에 대해 비교해보고자 한다.1. 윈도우 스프링 서버 + 가상머신 레디스 일단 위의 그림처럼 송신자와 수신자가 네트워크 I/O를 거친다. 그렇다면, 가상 머신과의 통신에서도 이러한 일련의..