Backend&Devops
[Docker] 도커란? 도커 개념 정리
도커는 컨테이너 기반의 오픈소스 가상화 플랫폼입니다. 도커는 다양한 프로그램, 실행환경을 컨테이너로 추상화하고 동일한 인터페이스를 제공해 프로그램의 배포 및 관리를 단순하게 해줍니다. 백엔드 프로그램, 데이터베이스 서버, 메시지 큐등 프로그램과 관련된 모든 것들을 컨테이너로 추상화할 수 있고, 클라우드 서버에서도 이를 작동시킬 수 있습니다. 쉽게 말해서… 집에서 Maria db를 설치하고, Maria db port를 33306 같은 느낌으로 변경하고, 구성 정보를 기획한 프로그램에 알맞게 변경했다고 합니다. 이 db를 다른 곳에도 설치를 해야 하는데 만약 도커를 사용하지 않는다면 포트 번호를 33306로 변경하고, 구성 정보도 변경해야하고… 귀찮은 작업을 반복해서 해야하는 것이지요. 이를 해결하기 위해 ..
[Jenkins] 젠킨스란?
1. 젠킨스(Jenkins)란? 모든 언어의 조합과 소스 코드 레포지토리에 대한 지속적인 통합(Continuous integration, CI)과 지속적 배포(continuous delivery, CD) 환경을 구축하기 위한 도구다. 빌드, 테스트, 배포 프로세스를 자동화하여 소프트웨어 품질과 개발 생산성을 높일 수 있다. 편리한 설정 웹 기반의 콘솔로 다양한 인증 기반과 결합이 가능하며 권한 관리 기능을 통해 안전한 빌드/배포 환경을 구축할 수 있다. 수많은 플러그인을 사용하여 자동화 할 수 있어 반복되는 작업을 줄일 수 있다. 빌드/배포의 결과에 대해 통지 받을 수 있는 설정이 간편하고 다양한 채널을 통해 빠르게 피드백을 받을 수 있다. 안정적인 빌드/배포 환경 소스 버전 관리 툴과 연동하여 코드 변..
AOP란? (Aspect-Oriented Prgramming, 관점 지향 프로그래밍)
AOP란? (Aspect-Oriented Prgramming, 관점 지향 프로그래밍) AOP 프레임워크는 애플리케이션에서 사용되는 기능을 재사용하고, 다른 관점을 추가해 클래스나 메소드를 수정하지 않고 추가하고자 하는 동작을 추가할 수 있도록 도와주는 프레임워크입니다. AOP는 OOP(객체 지향 프로그래밍)이 가지고 있는 기능에서 새로운 관점(다른 측면)으로 공통된 요소를 추출해서 재사용합니다. 대표적으로 AOP 프로그래밍은 로깅, 유효성 검사, 트랜잭션 처리, 인증/보안에서 활용됩니다. 예를 들자면, 모든 애플리케이션은 아래와 같은 요구사항을 만족할 필요가 생길 수가 있습니다. 응용 프로그램에는 쿼리 또는 업데이트 전에 사용되는 인증 시스템이 있어야 합니다. 데이터는 데이터베이스에 쓰기 전에 유효성을 ..