본문 바로가기

분류 전체보기312

[네트워크] HTTP 기본 모든 것이 HTTPHTTP 메세지에 모든 것을 전송한다.HTML, JSON 등 거의 모든 형태의 데이터를 전송 가능하다 우리가 주로 사용하는 것은 HTTP/1.1 버전이다. 현재 HTTP2, 3이 나왔다. HTTP/1.1, HTTP/2는 TCP를 사용하고, HTTP3은 UDP를 사용한다. HTTP 특징클라이언트 서버 구조무상태 프로토콜, 비연결성HTTP 메시지단순함, 확장가능 클라이언트 서버 구조Request, Response 구조클라이언트는 서버에 요청을 보내고, 응답을 대기서버가 요청에 대한 결과를 만들어서 응답 -> 서로 독립적으로 움직인다는 장점이 있다. Stateful, Stateless 차이상태유지상태유지는 위와 같이 점원(서버)가 클라이언트의 정보를 기억한다.-> 중간에 점원이 바뀌면 안된다.. 2025. 3. 25.
[네트워크] URI와 웹 브라우저 요청 흐름 URIuri는 로케이터, 이름 또는 둘 다 추가로 분류될 수 있다.위와 같은 형태로 되어있고, URN은 리소스에 이름을 부여한 것인데, URN이름만으로 실제 리소스를 찾을 수 있는 방법이 보편화되어있지 않다. uri의 단어 뜻은 이렇다. 자원을 다른 항목과 구분하는데 필요한 정보라는 것을 뜻한다. URL 분석전체적인 구조는 위와 같다. scheme주로 프로토콜을 사용한다.(http, https 등)http는 80포트를 쓰고, https는 443 포트를 사용해서 포트번호는 생략이 가능하다 userinfoURL에 사용자 정보를 포함해서 인증하는 방식인데 거의 사용하지 않는다. host호스트명이다. 도메인명 또는 ip주소를 직접 사용 가능하다 port포트는 접속포트이다. 일반적으로 생략하는데, http는 80.. 2025. 3. 18.
[네트워크] 인터넷 네트워크 인터넷 통신클라이언트와 서버가 어떻게 통신할까? 둘 사이가 멀지 않다면 그냥 통신하면 되지만,만약 거리가 멀다면 인터넷을 통해 통신을 해야한다. IP(인터넷 프로토콜)클라이언트와 서버는 ip주소를 통해 서로 정보를 주고받는다.이때 패킷이라는 통신 단위로 데이터를 전달한다.패킷은 위와 같이 ip주소 등의 데이터를 가지고 있다. 정상적인 패킷의 흐름은 위와 같다.하지만, 서버가 꺼져있거나, 중간에 패킷이 사라지거나, 패킷이 순서대로 오지 않거나, 같은 ip를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이라면 문제가 발생할 수 있다 TCP, UDP인터넷 프로토콜은 위와 같이 4계층으로 이루어져있다. 전체적인 프로토콜 계층은 다음과 같다.애플리케이션 계층에서는 웹브라우저가 있고, 이 소켓을 OS에 전달한다.. 2025. 3. 18.
[Spring] 빈 스코프 빈 스코프란이제까지 배운 내용으로는 빈이 생성되고, 스프링 컨테이너에 저장되고, 스프링 컨테이너가 종료될 때까지 유지된다.이건 빈이 기본적으로 싱글톤 스코프로 생성되기 떄문이다.스코프는 빈이 존재할 수 있는 범위를 뜻한다. 빈 스코프를 지정하는 방법은 다음과 같다.@Scope("prototype") @Componentpublic class HelloBean {} @Scope("prototype") @Bean PrototypeBean HelloBean() { return new HelloBean(); } 프로토타입 스코프싱글톤 스코프 빈을 조회하면 항상 같은 빈을 반환한다 반면 프로토타입 스코프를 스프링 컨테이너에 조회하면 스프링 컨테이너는 항상 새로운 인스턴스를 반환한다. 위와같이 프로토타입 스코.. 2025. 3. 11.
[백엔드 프로젝트] Hire Higher Hire Higher 프로젝트는 카카오테크캠퍼스에서 우수상을 수상한 프로젝트이다.현업 개발자님들과 열심히 하는 팀원들 덕분에 참 많이 성장하고 즐거웠던 것 같다. 프로젝트 소개이 프로젝트는 외국인 노동자를 위한 서비스이다.https://ethereal-coder.tistory.com/236 [기획 프로젝트] Hire Higher - 외국인 노동자를 위한 구인구직 서비스카카오테크캠퍼스 3단계를 앞두고 아이디어톤 행사가 열렸다. 아이디어톤 행사 3일 전에 팀이 정해졌고, 아이디어 초안을 정한 후 피드백을 받고 이를 바탕으로 하여 아이디어톤에서 서비스를ethereal-coder.tistory.com자세한 기획은 여기서 확인할 수 있다. 간단하게 설명하자면, 우리는 외국인 노동자를 구인할 때 근로계약서를 작성하.. 2025. 3. 9.
백준 [자바 java] 10986 : 나머지 합 문제설명연속된 수열이 있을 때 이 수열의 부분합이 특정 수로 나누어 떨어지는 경우의 수를 구하여라 풀이처음에는 b로 나누어떨어지는 덩어리를 구해서 이어지는 경우의 수를 구하는 방식으로 문제를 풀었지만 시간초과가 났다.그래서 다른 사람의 풀이를 봤는데 수학적인 부분을 사용해서 풀어야하는 문제임을 깨달았다.난 이런 쪽으로 좀 약한 것 같다... 일단 부분합을 구하는 것까지는 생각했다.12312배열이 있고, 3으로 나누어떨어지는 부분배열의 수를 구해야한다고 했을 때주어진배열12312합배열13679합 나머지배열10010 위와 같이 배열을 만든다.우리가 a에서 b까지의 부분합이 m으로 떨어지느냐를 알려면(합배열[b] - 합배열[a]) % m = 0 인지를 보면 된다. 기존 나의 방식은 이와 같았고, 시간초과가 났.. 2025. 3. 5.