대체재 Mail 70년대 발명, SMTP 프로토콜 사용 소통을 위해선 또다시 메일을 보내야한다. - 사일로의 주 원인 사일로: 조직 부서간 협력하지 않고 부서간 담을쌓고 내부 이익만을 추구 ...
스프링 인 액션 - 1. 스프링 기초 - 2. 웹 애플리케이션 개발하기
스프링으로 정보 보여주기 : 작성할 애플리케이션의 도메인을 이해하고, 애플리케이션의 관심사를 Domain으로 나눠 구분한다. Lombok 라이브러리 사용 스프링 라이브러리는 아니지만 Java + Spring에서 유용하게 쓰인다. getter, setter 등 boilerplate를 줄여주고, 다양한 형태의 생성자, 로깅, 빌더를 지원...
자바의정석 - 07장 추상클래스와 인터페이스
추상 클래스와 인터페이스의 공통점 자식클래스는 부모 클래스의 모든 것을 구현해주어야 한다. 하나라도 안된다면 자식 클래스(자식 인터페이스) 역시 추상클래스여야 한다. 그 자체만으로 인스턴스 생성은 불가능하다. 추상 클래스란? : 클래스의 구현부 없는 미완성의 형태. 미완성 설계도. 메소드 몸통이 있을 수 있다. 추상클래스...
자바의정석 - 07장 다형성
: 여러가지 형태를 가져 다양한 동작을 할 수 있는 능력이고, 상속과 함께 객체지향의 가장 중요한 특징 중 하나이다. 자바에서의 다형성 : 자바에서는 한 타입의 참조변수로 여러 타입의 객체를 참조할 수 있도록 했다. List를 예로 생각해보면, List 참조변수로 ArrayList, LinkedList 타입을 받을 수 있다. 참조변수와 형...
스프링 인 액션 - 1. 스프링 기초 - 1. 스프링 시작하기
: 애플리케이션의 모든 기반을 자동으로 구성해주고, 이 것을 통해 개발자는 애플리케이션의 비즈니스 로직에만 집중할 수 있다. 용어 컨테이너 (스프링 애플리케이션 컨텍스트) : 빈 객체를 관리한다. 빈 생성, 관리를 하고, 필요한 곳에 (생성자와 같은 방법을 통해) 주입(연결)시켜준다. 컴포넌트: 빈 객체. 다른 애플리케이션 구성요소와 ...
쿠버네티스를 사용하는 이유
: 여러 컨테이너 오케스트레이션 기법 중 쿠버네티스를 사용하는 이유 컨테이너 오케스트레이션이 필요한 이유 : 많은 컨테이너를 더 편리하게 관리하기 위한 목적 도커 기반 컨테이너 환경이 등장하면서 애플리케이션 배포과정이 쉬워졌다. 그러나, 여전히 많은 컨테이너를 직접 관리해줘야 한다는 불편한 점이 있다. 여러 호스트에 걸쳐 띄워진 컨테...
쿠버네티스 아키텍처
쿠버네티스란? : (k8s, kube, …) 컨테이너된 애플리케이션을 자동으로 배포, 스케일링, 관리 컨테이너를 쉽게 관리하기 위해 논리적으로 그룹화(노드 or 파드 or service 등으로 추상화) 아키텍처 쿠버의 특징: Desired state : Observe 상태 체크 -> Diff 발견 -> Act 조치...
DB 접근 통제와 작업 요청
DB에 접근하는 일반적인 방법 : Client Tool(SQL developer, mysql workbench) 이용 or DB 콘솔로 직접 접근 DB 접근 통제 시스템이란? : 해당 DB에 접근 권한을 보유하고 있는지, 권한이 어느정도까지인지 제어하는 것. Client tool과 DB 사이의 통제 agent가 게이트웨이 역할을 수...
취약점과 대응방안
취약점이란? : 1. 소프트웨어의 결함 2. 공격자의 접근 3. 악용 가능성 세가지 모두 제거하려는 노력을 해야한다. 어떠한 경우라도 완벽하게 제거했다고 말하기 어렵기 때문 여러 취약점들이 계속해서 생기고 있다. 보안 관련 진단을 주기적으로 계속 해야한다. 다양한 사례 Local Web Pro...
RESTful과 Rest 유니폼 인터페이스(Uniform Interface)
HTTP API HTTP를 사용해서 서로 정해둔 스펙으로 통신 넓은 의미의 Rest API REST API(Restful) : http api와 같으나 추가적으로 Restful한 네가지 특징을 갖고 일관된 인터페이스를 만들어야 한다. 1. 자원 식별: 각각의 리소스는 URI를 통해 식별 가능해야한다. e.g) GET ...