전체 글(196)
-
Jenkins
Jenkins란 Jenkis란 소프트웨어 개발 시 지속적으로 통합 서비스를 제공하는 툴입니다. 다수의 개발자들이 하나의 프로그램을 개발할 때 버전 충돌을 방지하기 위해 각자 작업한 내용을 공유 영역에 있는 저장소에 빈번히 업로드함으로써 지속적 통합이 가능하도록 해줍니다. 그리고 프로젝트 빌드, 테스트 실행 배포 등의 통합을 자동화하는 기능도 포함하고 있습니다. Jenkins의 이점 프로젝트 표준 컴파일 환경에서의 컴파일 오류 검출 정적 코드 분석에 의한 코딩 규약 준수여부 체크 결합 테스트 환경에 대한 배포작업 각종 배치 작업의 간략화: 과거에는 CLI(Command Line Interface)로 실행되던 작업들이 Jenkins덕분에 웹 인터페이스로 쉽게 이용할 수 있게 됨 Build 자동화의 확립: J..
2020.03.19 -
배포와 CI/CD
배포란 배포란 배포 환경을 구성하고, 구현이 된 애플리케이션의 소스 검증 및 빌드를 수행하여 서버에 올리는 것을 말합니다. 과거에는 일련의 과정을 수작업으로 했으나 쵝느에는 다양한 프로그램들을 이용해 자동으로 배포하고 있습니다. CI/CD Continuous Integeration(CI) 개발자를 위한 자동화 프로세스인 지속적인 통합이다. 애플리케이션에 대한 새로운 코드 변경 사항이 정기적으로 빌드 및 테스트되어 공유 리포지토리에 병합됩니다. 이는 여러 명의 개발자가 동시에 애플리케이션 개발과 관련된 코드 작업을 할 경우 서로 충돌할 수 있는 문제를 해결할 수 있습니다. Continuous Delivery(CD) 개발자들이 앞서 애플리케이션에 적용한 사항이 버그 테스트를 거쳐 리포지토리에 자동으로 업로드..
2020.03.19 -
Apache와 Tomcat의 연동
Apache와 Tomcat을 연동하는 이유 WAS만 사용할 경우, 정적 데이터 처리로 인해 동적 데이터에 대한 처리가 늦어질 수도 있습니다. 그래서 Tomcat서버는 서블릿 컨테이너의 역할만 하고, Apache는 웹서버의 역할을 하도록 각각의 기능을 분리하기 위해 사용합니다. 대규모 사용자가 사용하는 시스템을 구축할 때, 하나의 웹서버에 여러 개의 톰캣을 연결해서 부하를 분산시키는 로드 밸런싱을 구현하기 위해 사용할 수 있습니다. 연동 과정 아파치 웹서버의 httpd.conf에 톰캣 연동을 위한 설정을 추가하고 톰캣에서 처리할 요청을 지정 사용자는 아파치 웹서버에 접속해 요청 아파치 웹서버는 사용자의 요청이 동적 처리가 필요한 요청일 경우 AJP포트에 접속해 요청을 전달 톰캣은 아파치 웹서버로부터 요청을..
2020.03.18 -
Apache & Tomcat
Apache Apache란 Apache란 Apache 소프트웨어 재단에서 관리하는 HTTP 웹 서버입니다. Apache는 오픈 소스이기 때문에 누구든지 수정, 재배포가 가능합니다. 게다가 Apache는 다양한 기능을 제공하고 다른 웹 서버들에 구축이 쉽다는 이유로 많이 사용되고 있습니다. 웹 서버란 클라이언트가 GET, POST 등의 메소드를 이용해 전송한 요청을 받아 HTML이나 오브젝트를 HTTP 프로토콜을 이용해 전송하는 프로그램입니다. 웹 서버는 웹 페이지, 이미지 등의 정적인 컨텐츠만 제공할 수 있습니다. 이미지 출처: https://developer.mozilla.org/ko/docs/Learn/Common_questions/What_is_a_web_server 웹 서버가 필요한 이유 웹 프로..
2020.03.18