본문 바로가기

programming_kr/other10

window 환경 tomcat + apache 연동하기 이번에는 window 환경에서 tomcat과 apache를 연동해보겠습니다. 1. 필요 프로그램 설치 우선 tomcat, apache, jk_mok을 다운받습니다. 톰캣 다운로드 apache 다운로드, jk_mok다운로드 다운받은 파일들을 압축풀고 mod_jk.so 파일을 복사하고 Apache 폴더의 modules 하위에 복사를 합니다. Apache 경로안에 있는 폴더 중 아래를 중요하게 보시면 됩니다. bin : 아파치 실행관련 파일 conf : 아파치 설정관련 파일 htdocs : 정적인 파일 logs : 아파치 관련 로그 파일 modules : 모듈 관련 파일 (Tocat과 연동을 위한 모듈 포함) 이어서 Apache 폴더에 있는 conf 폴더로 들어가 httpd.conf 파일을 수정합니다. 2. .. 2022. 11. 19.
로드밸런싱과 클러스터링 로드밸런싱(Loadbalancing) 로드 밸런싱이란 부하 분산을 위해서 가상(virtual) IP를 통해 여러 서버에 접속하도록 분배하는 기능을 말한다. 하나의 인터넷 서비스가 발생하는 트래픽이 많을 때 여러 대의 서버가 분산처리하여 서버의 로드율 증가, 부하량, 속도 저하 등을 고려하여 적절히 분산처리하여 해결해 주는 서비스입니다. 로드밸런싱은 하나의 서비스를 하나 이상의 노드가 처리하는 식으로 작동합니다. 서버의 로드를 클러스터링된 서버별로 균등하게 나누어 주는 서버를 말합니다. 로드밸런싱을 이용하면 한 서버가 다운되더라도 이중화시킨 다른 서버에서 서비스를 지속하여, 사용자들이 문제를 인지하지 못하게 할 수 있습니다. 로드밸런싱을 위한 서비스 요청 처리 알고리즘은 다양합니다. 랜덤, 라운드 로빈, .. 2022. 11. 5.
OAUTH 2.0 이란? OAuth 2.0(Open Authorization 2.0)은 인증을 위한 개방형 표준 프로토콜입니다. 이 프로토콜에서는 Third-Party 프로그램에게 리소스 소유자를 대신하여 리소스 서버에서 제공하는 자원에 대한 접근 권한을 위임하는 방식을 제공합니다. ​ 구글, 페이스북, 카카오, 네이버 등에서 제공하는 간편 로그인 기능도 OAuth2 프로토콜 기반의 사용자 인증 기능을 제공하고 있습니다. OAuth 2.0 주요 용어 Authentication 인증, 접근 자격이 있는지 검증하는 단계를 말합니다. Authorization 인가, 자원에 접근할 권한을 부여하는 것입니다. 인가가 완료되면 리소스 접근 권한이 담긴 Access Token이 클라이언트에게 부여됩니다. Access Token 리소스 서버에.. 2022. 10. 22.
REST API란? REST API의 탄생 REST는 Representational State Transfer라는 용어의 약자로서 2000년도에 로이 필딩 (Roy Fielding)의 박사학위 논문에서 최초로 소개되었습니다. 로이 필딩은 HTTP의 주요 저자 중 한 사람으로 그 당시 웹(HTTP) 설계의 우수성에 비해 제대로 사용되어지지 못하는 모습에 안타까워하며 웹의 장점을 최대한 활용할 수 있는 아키텍처로써 REST를 발표했다고 합니다. REST 구성 자원 (RESOURCE) - URI 행위 (Verb) - HTTP METHOD 표현 (Representations) REST 의 특징 1. Uniform (유니폼 인터페이스) Uniform Interface는 URI로 지정한 리소스에 대한 조작을 통일되고 한정적인 인터페이.. 2022. 9. 3.
애자일(Agile Methodology) 방법론이란? 애자일(Agile) 방법론은 구체적인 개발 프로세스가 아닌 개발 지침, 철학에 가깝습니다. 변화를 수용하고 협업과 제품의 빠른 인도를 강조하는 반복적 개발 방법입니다. 문서화보다 코드, 프로그램, 소프트웨어 자체를 중요시 합니다. 요구사항의 변화는 불가피하며 이에 대응하는 것이 현실적입니다. 기존의 개발 프로세스는 설계 기간이 길며, 재 작업시 오버헤드가 큽니다. 환경의 빠른 변화에 대응하는 것이 중요합니다. 애자일 방법론의 종류 익스트림 프로그래밍(Extreme Programming, XP) 짝 프로그래밍(Pair Programming) 테스트 주도 개발(Test Driven Development, TDD) 스크럼(Scrum) 애자일 방법론의 진행 과정 계획 및 분석 : 고객과 사용자가 원하는 바를 파.. 2022. 8. 11.
DevOps란? 개발담당자와 운영담당자가 연계하여 협력하는 개발 방법론 'DevOps'는 'development(개발)'와 'operations(운영)'가 합쳐진 단어이지만, 단순히 각각의 용어를 결합한 것 이상의 포괄적인 아이디어와 방식을 나타냅니다. DevOps에는 보안, 협업 방식, 데이터 분석을 비롯해 기타 여러 요소가 포함됩니다. 그렇다면 DevOps가 구체적으로 무엇을 의미하는 것일까요? DevOps는 하나의 아이디어(새로운 소프트웨어 기능, 개선 요청 또는 버그 수정 등)가 사용자에게 가치를 제공할 수 있도록 운영 환경에서 개발로부터 배포로 진행되는 프로세스의 속도를 높이는 접근 방식을 의미합니다. 이러한 접근 방식을 적용하려면 개발 팀과 운영 팀이 자주 커뮤니케이션하고 팀원들과 공감하면서 업무에 접근해야 .. 2022. 8. 8.