。゚(*´□`)゚。

코딩의 즐거움과 도전, 그리고 일상의 소소한 순간들이 어우러진 블로그

분류 전체보기 397

[DevOps-Docker] 10. 기타 /쿠버네티스, Podman

1. 도커 스웜과 쿠버네티스 - 컨테이너 오케스트레이션 - 도커 스웜 vs 쿠버네티스 2. 도커 대체제 PODMAN 1. 도커 스웜과 쿠버네티스 컨테이너 오케스트레이션 일반적으로 애플리케이션은 의도에 따라 애플리케이션이 실행되게 하기 위해 네트워킹 수준에서 정리가 필요한 개별적으로 컨테이너화된 구성 요소(주로 마이크로 서비스로 칭함)로 구성됩니다. 이러한 방식으로 다수의 컨테이너를 정리하는 프로세스를 컨테이너 오케스트레이션이라고 합니다. 간단한 어플리케이션 스케일 아웃: 서비스를 하다보면 사용자가 많아 프론트엔드를 여러 개, 백앤드는 상대 적으로 적게 띄워야할때 서비스 규모가 더 커져서 프론트 , 백 더 띄우고, 데이터를 별도로 보관해야하는 상황이 오면 더 많은 컨테이너가 필요하다. 하나의 머신에 처리할..

[SQL] WHERE 절 안에 WHERE ,,!

SELECT CATEGORY, PRICE AS MAX_PRICE, PRODUCT_NAME FROM FOOD_PRODUCT WHERE (CATEGORY, PRICE) IN ( SELECT CATEGORY, MAX(PRICE) FROM FOOD_PRODUCT WHERE CATEGORY IN ('과자', '국', '김치', '식용유') GROUP BY CATEGORY ) ORDER BY PRICE DESC 위 WHERE 절은 다음을 의미합니다: CATEGORY와 PRICE 컬럼의 값이 서브쿼리에서 반환된 결과에 포함되어야 합니다. 서브쿼리는 다음 작업을 수행합니다: '과자', '국', '김치', '식용유' 카테고리 중에서 각 카테고리별로 최고 가격을 찾습니다. 결과는 카테고리와 해당 카테고리의 최고 가격으로 ..

ㅋㅌ 2023.09.14

9/13

#use case 식별 기본 가이드 use-case Diag - usecase (=Actor가 시스템을 통해 달성하고자 하는 업무 목표 ) 업무 목표: 개발관리가 쉽도록 적당한 크기로 쪼개는 방법. 1. 한사람 -> 한 순간 수행 1-2. 업무의 시작과 끝이 명확 1-3. 카운트 가능 2. 업무여야한다. 3. 시스템을 통해 실행해야 한다. use-case Diag - usecase 확장가이드 Actor와 상속 Use-case - include / extend(확장) 관계 use case Diagram 1. primary actor 식별 , secondary Actor 식별 - > 2. Actor 간의 상속 관계 정의 3. Actor 별 uc 식별 - > 4. Actor별 uc를 확장 가이드에 따라 정리 ..

9/12

*필터 첫 번째 필터(서블릿 API) : 서블릿컨테이너와 디스팻쳐 사이에 꽂는// 디스팻쳐 실행 전 두 번째 필터 (Interceptor 스프링): 디스패쳐와 컨트롤러사이(컨트롤러 실행 전) , 디스패쳐와 jsp 사이(jsp 실행 후 리턴때) // 무언가 작업을 삽입하고 싶을 때 AOP 필터(프록시 기술): 서비스나 dao의 메서드 호출 전 후 꽂는거 , 모든 객체의 매서드 호출 전 / 원래 객체를 건들지 않고도 그 객체의 기능을 사용할 수 있음. *Interceptor // 인터셉터 만들기 // => 프론트 컨트롤러와 페이지 컨트롤러 사이에 코드를 삽입하는 기술 // => 프론트 컨트롤러와 뷰 컴포넌트 사이에 코드를 삽입하는 기술 // 인터셉터를 배치하기 // => 프론트 컨트롤러의 IoC 설정 파일에..

[SQL] FLOOR

SELECT (FLOOR(PRICE / 10000) * 10000) AS PRICE_GROUP, COUNT(*) AS PRODUCTS FROM PRODUCT GROUP BY PRICE_GROUP ORDER BY PRICE_GROUP; FLOOR(PRICE / 10000)은 PRICE를 10000으로 나눈 후 소수점 이하를 버린 정수값을 반환합니다. 즉, 가격을 만원 단위로 나눈 후 그 값의 소수점 이하를 버립니다. 예를 들어, 23000원이라면 2.3가 되고, FLOOR 함수를 적용하면 2가 됩니다. 그리고 이후에 * 10000을 하면 다시 10000을 곱해줌으로써, 버린 소수점 아래 자리를 없애고 10000의 배수로 만듭니다. 이를 통해 원하는 가격대의 최소 금액을 얻을 수 있습니다. 예를 들어, 23..

ㅋㅌ 2023.09.11

[NC7기-95일차(9월11일)] - 웹프로그래밍 76일차

3-1 // 세션 다루기 - HttpSession 직접 사용하기 // 세션 다루기 - HttpSession 직접 사용하기 package bitcamp.app2; import javax.servlet.http.HttpSession; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bin..

[DevOps-Docker] 3. 도커의 동작 원리 //3. 도커 컨테이너의 생애주기와 데이터 저장

1. 도커 컨테이너 생애주기 2. 도커 데이터 저장 3. 도커의 장단점 4. 도커 이미지 종류 1. 도커 컨테이너 생애주기 도커 컨테이너는 "쓰고 버리는" 일회용품 -> 오래된 컨테이너를 버리고 새로운 이미지로부터 새로운 컨테이너를 만들어 갈아타는 방식 (계속 업데이트) -> 도커 허브에서 이미지를 다운 받고 계속 업데이트 컨테이너를 만들고(create) -> 실행하고 (run) -> 종료하고(stop) -> 폐기(rm) 2. 도커 데이터 저장 도커가 설치된 물리적 서버(호스트pc)의 디스크를 마운트해 데이터를 저장 컨테이너가 있어도 데이터를 별도로 관리. 운영체제 + 소프트웨어 -> 컨테이너 형태 도커구조와 성질 * 환경을 격리할 수 있다. 1. 독립된 환경 - 프로그램을 여러개 띄울 수 있다. 2. ..