본문 바로가기

분류 전체보기

(28)
3Tier Architecture Controller-Service-Repository 패턴 Spring Framework에서 가장 일반적인 아키텍처는 Controller-Service-Repository 패턴이다. 이 패턴은 애플리케이션의 논리적인 계층을 분리해 유지보수성과 확장성을 향상시키는데 도움을 준다. Controller : Controller는 웹 요청을 받아서 해당 요청을 처리할 Service를 호출하고, 그 결과를 다시 View에 전달하는 역할을 한다. Controller는 클라이언트로부터의 입력을 처리하며, Http 요청에 대한 응답을 생성한다. @Controller @RequestMapping("/example") public class ExampleController { private final ExampleServi..
[ AWS ] IAM IAM AWS IAM(Identify and Access Management)는 AWS에서 제공하는 서비스 중 하나로, 사용자 및 리소스에 대한 보안 및 액세스 제어를 관리하는 데 사용된다. IAM을 사용하면 AWS 리소스에 대한 액세스를 안전하게 제어하고 관리할 수 있다. 사용자 관리 : IAM을 사용해 사용자를 생성하고 관리할 수 있다. 각 사용자에게는 고유한 액세스 키, 비밀 액세스 키 및 권한이 부여된다. 그룹 관리 : 그룹을 생성해 사용자를 묶어서 권한을 관리할 수 있다. 그룹에 권한을 할당하면 해당 그룹의 모든 사용자가 해당 권한을 상속한다. 권한 관리 : IAM을 사용해 사용자 및 그룹에 대한 세분화된 권한을 설정할 수 있다. 필요한 권한만을 제공해 보안을 ..
클라우드 컴퓨팅 클라우드 컴퓨팅은 컴퓨팅 파워, 데이터베이스, 스토리지, 애플리케이션 및 기타 IT 리소스를 온디맨드로 인터넷을 통해 제공하고 사용한 만큼만 비용을 지불하는 것이다. 온프레미스 용어와 클라우드 용어 대응관계 (AWS) 여러가지 형태의 인프라 구성 온프레미스 - 일반 데이터 센터 하이브리드 - 클라우드와 온프레미스와 같이 활용해 구성하는것 클라우드- AWS, AZURE, GCP, Naver, NHN, KT 등의 인프라 서비스를 활용하는것 멀티클라우드 - AWS, AZURE, GCP, Naver, NHN, KT 등 여러가지 퍼블릭 클라우드를 섞는 경우 인프라를 표현하는 XaaS 용어 Iaas(Infa as a Service) : 서비스형 인프라로 IT 리소스에 대한 제어 능력이 높다. Paas(Platfor..
HTTP 요청 메서드 ( GET / POST ) Spring Framework는 웹 애플리케이션을 개발할 때 Http 요청과 응답을 다루는 많은 기능을 제공한다. Spring MVC(Spring Web)을 사용하면 Http 요청을 처리하고, 컨트롤러에서 비즈니스 로직을 수행한 후 적절한 HTTP 응답을 생성할 수 있다. Spring MVC에서는 '@RequestMapping', '@GetMapping', '@PostMapping' 등의 애노테이션을 사용해 요청을 처리할 메서드를 지정할 수 있다. GET 메서드 GET 메서드는 서버로부터 정보를 요청할 때 사용된다. 주로 데이터를 서버로 보내지 않고, 서버에서 리소스(예: 웹 페이지, 이미지, 동영상 등)를 요청할 때 사용된다. URL에 데이터를 포함하여 전송한다. 이는 쿼리 문자열(query strin..
Artillery를 활용한 부하 테스트 1. 폴더 생성하기 2. https://www.artillery.io/docs/get-started/get-artillery Welcome – Artillery Docs Learn how to get up and running with Artillery with reference docs, guides, tutorials and other resources www.artillery.io 위의 사이트에서 Artillery 설치구문 복사하기 3. VSCode에서 Terminal 창에 2번에서 받은 설치구문 입력하여 다운 받기 4. cpu-test.yaml 파일 생성 - artillery 사이트에 core concept에 간단한 예시가 있다. - intelli J에서 작성했던 예제 코드를 사용하기 위해 loc..
[객체지향] SOLID 설계원칙 SOLID SRP : 단일책임 원칙 OCP : 개방-폐쇄 원칙 LSP : 리스코프 치환 원칙 ISP : 인터페이스 분리 원칙 DIP : 의존성 역전의 원칙 SOLID 원칙을 사용하면 코드를 확장하고 유지 보수가 쉬워지며, 불필요한 복잡성을 제거해 리팩토링에 소요되는 시간을 줄여 프로젝트 개발의 생산성을 높일 수 있다. 1. SPR(Single Responsibility Principle) : 단일 책임 원칙 : 한 클래스는 단 하나의 책임을 가져야 하며, 클래스가 변경되어야 하는 이유는 단 하나의 이유여야 한다. [ 예제 ] 위의 경우 유효성 검사와 데이터 저장은 사용자 정보와 직접적 연관이 없다. -> 단일 책임 원칙을 지키지 않음 -> 클래스를 더 작은 단위로 분리하여 단일 책임을 부여할 수 있다. ..
Map - HashMap Map : Map은 키-값(key-value)쌍으로 데이터를 저장하는 인터페이스이다. - 데이터를 저장하고 검색하는데 사용된다. - 각각의 키는 유일해야 한다. [ Map 인터페이스의 주요 메서드 ] 1. 객체 추가 기능 - put(K key, V value): 주어진 키와 값을 추가, 정상적으로 저장되면 그 값(value)를 리턴. 2. 객체 검색 기능 - containsKey(Object Key): 주어진 키가 있는지의 여부를 확인. - containsValue(Object value): 주어진 값이 있는지의 여부를 확인. - get(Object key): 주어진 키에 들어있는 값을 리턴한다. 없을 경우 null 반환 - isEmpty(): 컬렉션이 비어있는지의 여부를 확인. - size(): 저장된..
Set - HashSet Set 인터페이스 - Set 인터페이스는 컬렉션 프레임워크에 속하는 인터페이스 중 하나다. - 중복된 원소를 허용하지 않는다. - 순서를 보장하지 않는다. (List는 순서가 보장된다.) - 순서가 유지되지 않기 때문에 인덱스로 꺼내올 수 없으며, 그로 인해 반복자를 사용한다. 반복자(iterator) 는 인터페이스를 구현한 객체를 의미하며 이 객체는 Set 인터페이스의 iterator() 메서드를 호출해 객체를 얻을 수 있다. 아래는 iterator 인터페이스의 주요 메서드이다. hasNext() : 가져올 객체가 있으면 True를, 없으면 false를 리턴한다. next() : 컬렉션에서 하나의 객체를 가져온다. remove() : Set 컬렉션에서 객체를 제거한다. [ Set 주요 메서드 ] 1. ..