본문 바로가기

반응형

전체 글

jsp WAS는 웹 브라우저로부터 JSP에 대한 요청을 받게 되면, JSP 코드를 서블릿 소스코드로 변환한 후 컴파일 하여 실행되게 됩니다. 서블릿으로 컴파일되어 실행될 때 상황에 따라서 어떤 메소드들이 실행되는지 잘 알아야, JSP를 알맞게 작성할 수 있다. JSP란(java server page) JSP는 서블릿 기술을 사용 JSP의 실행 순서(JSP 코드가 Servlet으로 변환될 때)--> Q. html부분만 변경되었다면? 브라우저가 웹서버에 JSP에 대한 요청 전보를 전달 브라우저가 요청한 JSP가 최초로 요청했을 경우만 JSP로 작성된 코드가 서블릿으로 코드로 변환함.(java 파일 생성) 서블릿 코드를 컴파일해서 실행가능한 bytecode로 변환함(class 파일 생성) 서블릿 클래스를 로딩하고 인.. 더보기
웹 개발 기본 지식 HTTP(Hyper text Transfer Protocol) 작동 방식 HTTP 는 서버/클라이언트 모델을 따른다 장점 불특정 다수를 대상으로 하는 서비스에 적합 클라이언트와 서버가 계속 연결된 형태가 아니기 때문에 클라이언트와 서버 간의 최대 연결 수보다 훨씬 많은 요청과 응답 처리 가능 단점 무상태의 특징으로 클라이언트의 이전 상황을 알 수 없음 정보를 유지하기 위해서 Cookie 와 같은 기술이 등장했음 HTTP vs. HTTPS HTTPS(Hypertext Transfer Protocol Secure) HTTP 프로토콜의 문제점은 서버에서부터 브라우저로 전송되는 정보가 암호화 되지 않는 것 HTTPS프로토콜은 SSL(보안 소켓 계층)을 사용함 SSL은 서버와 브라우저 사이에 안전하게 암호화된 연.. 더보기
Pod 배포 전략 및 기법 Kubernetes Autoscaling Pods layer autoscale Horizontal Pod Autoscaler(HPA): pod의 replica 갯수를 조정 HPA 는 Pod의 메트릭 값을 30초 마다 한번씩 check. 할당한 CPU나 메모리의 사용량이 증가하여 HPA에 적용한 한계치를 넘으면 HPA는 주로 deployment 또는 replicaset을 추가로 포드를 생성 Vertical Pod Autoscaler(VPA) 메트릭값을 10초 간격으로 지속적으로 확인 VPA는 할당된 메모리 또는 CPU의 임계치를 넘으면 Pod 할당 값을 변경하는데, 이를 위해 VPA는 주로 deployment나 replicaset으로 설정된 POD 리소스 업데이트 Cluster level scalabili.. 더보기
쿠버네티스 개요 Kubernetes 가 필요한 이유 Monolithic 어플리케이션 환경에서 MS(Microservice)로 전환이 되면서 worker node가 많아짐으로 인해 container 관리자가 필요하게 되었다. 쿠버네티스는 컨테이너 중심의 관리 환경을 제공한다. 이 환경은 사용자 워크로드를 위해서 컴퓨팅, 네트워킹 및 스토리지ㅣ 인프라 스트럭처를 오케스트레이션 한다. Container Ecosystem Layer 1(Physical Infrastructure): 네트워크, 스토리지 장비와 같은 하드웨어 및 Bare metal 환경 Layer 2(Virtual Infrastructure) Layer 3(Operating System) Layer 4(Container Engine) : Docker, Rocket.. 더보기
Go 언어 공부해보기 다운로드 Go 홈페이지 를 통해 OS 에 맞는 Go language 다운로드 go practice Go 언어 사용을 위해 VS code를 사용하였고, VS code에서 요구하는 Go tools 설치를 진행하였다. $ go build go_practice.go $ ./go_practice 빌드는 첫번째 줄과 같이 go build '프로그램이름' 명령어를 입력하면 빌드된다. env 설정 go env: 환경변수 셋팅을 볼 수 있음 $ go env -w GOBIN=/somewhere/else/bin $ go env -u GOBIN go env -w 로 새로운 환경변수를 설정하고, 이를 사용하기 위해 -u 옵션을 이용함 go 실행하기 export PATH=$PATH:$(dirname $(go lis.. 더보기
MongoDB 와 Spring 연동설정 MongoDB Download(MacOS) 다운로드참조페이지 위를 참조하여 mongoDB 다운로드 이후, mongod 실행시켜준다. test계정생성 위를 참조하여 테스트할 계정 및 데이터베이스와 콜렉션을 생성해준다. pom.xml 수정 몽고디비와의 연결을 위해서는 라이브러리를 사용해야 한다. 기본적으로 아래의 두 개의 라이브러리 설정을 해준다. org.mongodb mongo-java-driver 3.2.2 org.springframework.data spring-data-mongodb 2.2.6.RELEASE context.xml 2개의 라이브러리를 추가한뒤에 설정파일을 추가하여 준다. 필자는 resources에 context-mongo.xml로 저장하였다. credentials라는 부분에는 "사용자아.. 더보기
MongoDB (root) 계정 만들기 MongoDB 에서 admin 계정 만들기 >use admin switched to db admin >db.createUser( { user: "mongo", ... pwd: "password123", ... roles: ["root"] } ... ) Successfully added user: { "user" : "mongo", "roles" : [ "root" ] } MongoDB 사용자 조회 >use admin switched to db admin >db.system.users.find().pretty() MongoDB DB 접속 >mongo -u 'mongo' -p 'password123' --authenticationDatabase 'admin' mongo DB database 생성 >use m.. 더보기
macOS mongoDB 설정 download mongoDB MongoDB mongoDB 홈페이지에서 MongoDB Server를 tgz 확장자로 다운을 받는다. tgz 파일 이동 tgz 압축 해제 후 원하고자 하는 폴더에 다운받은 tgz파일을 옮긴다. 필자는 mongo 디렉토리를 별도로 만들었다. tar xvfz mongodb-osx-x86_64-3.2.22.tgz mv mongodb-osx-x86_64-3.2.22/ /Users/ibohyeon/Desktop/project/mongo 폴더 이름 변경 mv mongodb-osx-x86_64-3.2.22/ mongodb/ 데이터 폴더 생성 mkdir data cd data mkdir db tree . 명령어를 통해 확인해보면 아래와 같은 구조 입니다. . ├── GNU-AGPL-3.0.. 더보기

반응형