1. EBS란? Elastic Block Store(EBS)는 EC2 인스턴스에 장착하여 사용할 수 있는 가상 저장 장치다. EC2 인스턴스가 제공하는 기본 용량으로는 부족한 경우, OS를 중단하지 않고 용량을 늘려야 하는 경우, 영구적인 데이터 보관이 필요한 경우 등 여러 상황에서 사용할 수 있다. EBS는 일반적인 하드디스크는 SSD로 인식되어 원하는 크기, 성능, 수치를 설정할 수 있다. 또한 사용자가 삭제하기 전까지 데이터를 안전하게 유지한다. 아래는 주요 용어 정리다. Block Device: Unix/Linux 계열 OS에서 일정한 크기(Block) 단위로 읽고 쓰는 저장 장치를 말한다. SSD, HDD 등이 있다. Volume: EBS의 가장 기본적인 형태로 OS에서 바로 사용 가능한 형태를..
BackEnd
1. PuTTY란? SSH 프로토콜은 웨 호스팅 혹은 리눅스 서버에 접속하기 위해 사용하는 원격 접속 툴이다. 이때 PuTTY는 리눅스 혹은 유닉스 계열 서버에 원격으로 접속할 수 있는 클라이언트 프로그램이다. PuTTY는 윈도우에서 리눅스로 SSH 프로토콜을 이용하여 접속할 때 많이 사용한다. 2. Windows에서 PuTTY로 접속하기 먼저 아래 URL로 접속하자. https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html Download PuTTY: latest release (0.78) This page contains download links for the latest released version of PuTTY. Currently thi..
1. EC2란? EC2는 AWS에서 가장 기본적이면서 널리 쓰이는 인프라이며 인터넷에 연결된 가상 서버를 제공한다. EC2를 사용하면 클릭 몇 번으로도 서버를 생성할 수 있어 실제 서버를 구축하는 것보다 훨씬 간편하고 효율적이다. 또한 사용한 만큼만 요금을 지불하므로 비용도 절감된다. 2. 인스턴스 유형 인스턴스랑 EC2에서 생성한 가상 서버를 말한다. 우리 컴퓨터들도 얼만큼의 성능을 내는지를 사양을 통해 알려준다. EC2도 마찬가지다. 우리는 이러한 사양을 보고 사용량이 많다면 높은 사양을 사용하고 적다면 낮은 사양을 사용하면 된다. 이때 t2.micro, m3.medium과 같이 사양을 표현하는데 t, m과 같은 것들을 인스턴스 패밀리라고 부르고 뒤에 있는 숫자를 세대(Generation)라고 부른다..
1. p Namespace란? p Namespace를 사용하면 Setter Injection을 좀 더 효율적으로 DI를 처리할 수 있다. p Namespace는 아래와 같이 Namespace만 선언하면 사용할 수 있다. xmlns:p="http://www.springframework.org/schema/p" 위와 같이 p Namespace를 선언하면 아래와 같이 참조형 변수에 참조할 객체를 할당할 수 있다. p:(Variable Name)-ref="참조할 객체의 이름 혹은 아이디" 기본 데이터 타입은 아래와 같이 직접 값을 설정할 수 있다. p:(Variable Name)="설정할 값" 2. 사용 예시 Setter Injection을 p Namespace를 활용하지 않으면 아래와 같이 태그를 사용해야 한..
1. Setter Injection이란? Construction Injection은 생성자를 사용해 의존성을 처리했다. Setter Injection은 Setter 메소드를 통해 DI를 처리한다. Construction Injection와 Setter Injection 중 무엇을 사용하든 상관은 없지만 코딩 컨벤션에 따라 한 가지로 통일해서 사용한다. 대부분 Setter Injection을 사용한다고 한다. 2. Setter Injection 기본 사용법 다음과 같이 Car 클래스가 구현되었다. # Car 클래스 public class Car { private Engine engine; private int seats; public Car() { System.out.println("기본 생성자로 Car ..
1. 초기화 할 멤버가 하나인 경우 Construction Injection을 통해 초기화할 멤버가 하나인 경우는 아래 방식을 통해 수행하면 된다. [Spring] Constructor Injection 기본 사용법 1. Constructor Injection 스프링 컨테이너는 bean 객체 생성시 Default 생성자를 호출하여 객체를 생성한다. 이때 기본 생성자가 아닌 매개변수를 가지는 생성자를 통해 호출하도록 할 수 있는데 이 기능 ngp9440.tistory.com 2. 초기화 할 멤버가 여러 개인 경우 만약 초기화해야할 멤버가 여러 개라면 먼저 생성자에서 해당 하는 매개변수를 모두 받아와야 한다. 만약 Car 클래스가 있다면 아래와 같이 Engine 객체와 int형 변수 seats를 가질 수 있..
1. 의존관계 변경 의존 관계에 있는 객체를 다른 객체로 교체해야 하는 경우가 있을 수 있다. 예를 들어, 자동차의 엔진을 A에서 B로 갈아야하는 경우가 이에 해당한다. 만약 Spring을 사용하지 않고 의존관계에 있는 객체를 변경하려면 Java 코드를 직접 수정해야 한다. 하지만 Spring을 사용하면 그럴 필요 없이 xml 파일만 수정하면 교체가 가능하다. 먼저 Engine 인터페이스, EngineA, EngineB 클래스는 다음과 같다. # Engine 인터페이스 public interface Engine { void sound(); } # EngineA 클래스 public class EngineA implements Engine { public EngineA() { System.out.printl..
1. Constructor Injection 스프링 컨테이너는 bean 객체 생성시 Default 생성자를 호출하여 객체를 생성한다. 이때 기본 생성자가 아닌 매개변수를 가지는 생성자를 통해 호출하도록 할 수 있는데 이 기능을 사용하여 Construction Injection을 처리할 수 있다. 먼저 아래와 같이 Car, Engine, Main 클래스가 있다고 하자. # Engine 클래스 public class Engine { public Engine() { System.out.println("Engine 생성"); } public void sound() { System.out.println("Brrrrrrr!!!"); } } # Car 클래스 public class Car { private Engin..