본문 바로가기

DevOps/용어

(3)
API (Application Programming Interface) 란? # API 등장 배경 API는1960년대 서로다른 하드웨어 부품마다 개발자가 하나하나 프로그램을 새롭게 작성하는것 보다 같은 일을 하는 하드웨어를 추상화 시켜 함수를 한번 사용하여 서로다른 화면에 출력하는 일을 쉽게 사용해주기 위해 생겨난 개념이다. 1980년대 "개인용 컴퓨터"의 명칭이 일반화 되기 시작하였고 그래픽 사용자 인터페이스 개념을 크게 보급시키는 데 성공시켜 windowOS나 macOS등 운영체제에서는 각각의 운영체제에서 동작할수있는 애플리케이션을 만들기 위하여 제공되었던 응용프로그램들이 API라는 단어로 사용되기 시작되었다. # API 란? API는 애플리케이션 소프트웨어를 구축하고 통합 하기 위한 정의 및 프로토콜 세트로, 애플리케이션 프로그래밍 인터페이스(Application Progr..
CI / CD ( 지속적 통합 / 지속적 제공 ) CI / CD ( 지속적 통합 / 지속적 제공 ) CI : Continuous Integration CD : Continuous Delivery CI/CD는 애플리케이션 개발 단계를 자동화하여 애플리케이션을 보다 짧은 주기로 제공한다. 소스 코드로부터 설치, 실행할 수 있는 제품을 생성하여 배포하는 과정. # CI ( 지속적 통합 ) 란? 개발자를 위한 자동화 프로세스인 지속적인 통합. 애플리케이션에 대한 새로운 코드 변경사항이 정기적으로 빌드 및 테스트되어 공유 리포지토리에 통합되어 여러명의 개발자가 동시에 애플리케이션 개발과 관련된 코드 작업을 할 경우 서로 충돌할 수 있는 문제를 해결할 수 있다. 소프트웨어 개발에서 각 소프트웨어 개발자가 작업한 변경점을 프로젝트의 원래 소스 코드에 자주, 빠르게 ..
모놀리식 아키텍처 vs 마이크로서비스 아키텍처(MSA) 모놀리식 아키텍처와 마이크로 서비스 아키텍처 비교 모놀리식 아키텍처 (Monolithic Architecture) vs 마이크로서비스 아키텍처 (MicroService Architecture) # 모놀리식 아키텍처 (Monolithic Architecture) 전통의 아키텍처를 지칭한다. 소프트웨어의 모든 구성요소가 한 프로젝트에 통합 되어 있는 형태. 모놀리식 아키텍처의 경우 모든 프로세스가 긴밀하게 결합되고 단일 서비스로 실행된다. 따라서 애플리케이션의 한 프로세스에 대한 수요가 급증하면 해당 아키텍처 전체를 확장해야 한다. 코드 베이스가 증가하게 되면 모놀리식 애플리케이션의 기능을 추가하거나 개선하기가 더 복잡해진다. 장점 - 소규모 프로젝트에서는 합리적이다. - 개발, 빌드, 배포, 테스트가 용이..