본문 바로가기
반응형

컴퓨터공학 기초55

[인프라 도전기] ec2 에 배포하기 - 5부(외장톰캣 이용하여 배포하기) gradle 및 소스 설정 변경 war 파일생성 bootwar를 클릭하게 되면 war파일이 생성된다. /opt/톰캣경로/webapps 하위에 해당파일을 옮긴다. tomcat 설정변경 /opt/apache-tomcat-9.0.0.M22/conf/server.xml jar 파일 추가 java 9버전이상부터 아래 jar파일을 추가해야한다. javax.annotation-api-1.3.2.jar javax.xml.soap-api-1.4.0.jar jaxb-api-2.3.1.jar jaxws-api-2.3.1.jar 파일을 /opt/apache-tomcat-9.0.0.M22/lib 경로에 추가 tomcat 실행 cd /opt/apache-tomcat-9.0.0.M22/bin sh startup.sh 2020. 10. 11.
[인프라 도전기] ec2 에 배포하기 - 4부(tomcat9 설치하기) 설치할 폴더로 이동한다. cd /opt tomcat 설치 (설치 명령어) wget http://archive.apache.org/dist/tomcat/tomcat-9/v9.0.0.M22/bin/apache-tomcat-9.0.0.M22.tar.gz permission denied가 뜨면 sudo su 명령어를 실행 후 다시 진행한다. 압축풀기 tar -zxf apache-tomcat-9.0.0.M22.tar.gz firewalld 설치 yum install firewalld systemctl start firewalld systemctl enable firewalld firewall-cmd —permanent —zone=public —add-port=80/tcp firewall-cmd —permanent.. 2020. 9. 27.
[인프라 도전기] ec2 에 배포하기 - 3부(spring boot내장톰캣 이용하기) Spring boot는 내장톰캣을 가지고있다. Spring boot를 이용하여 배포하는 순서는 아래와 같다. 1. git repository를 생성하여 Spring boot로 작성한 소스코드를 업로드한다. 2. ec2에서 해당 repository를 clone한다. 3. clone한 폴더로 이동한다. 4. sudo ./gradlew build 명령어로 build 한다. 5. build를 하면 /build/libs 에 jar파일이 생성됐을것이다. java -jar /build/libs/-.jar (-.jar는 생성된 파일 이름)명령어를 실행하면 spring boot로 작성한 Application이 실행된다. 6. 결과확인 2020. 9. 21.
[인프라 도전기] ec2 에 배포하기 - 2부(java 설치하기) 1. putty를 이용하여 ec2에 접근한다. 2. sudo su 명령어로 root 권한에 접근한다. 3. sudo amazon-linux-extras install java-openjdk11 명령어를 사용하여 java를 설치한다. (본인은 11 version에서 코딩하므로 11로 설치) 4. java —version 명령어 실행 결과가 정상적으로 나온다면 설치가 정상적으로 이루어진것이다. 5. JAVA 위치 확인 which java 2020. 9. 21.
[인프라 도전기] ec2 에 배포하기 - 1부(ec2 생성하기) 회사일을 하다가 인프라를 모르면 제약이 많을것 같다는 느낌을 받았다. 그렇기에 인프라 공부를 틈틈히 해보기로 마음먹었다. 제일 처음으로 Linux에 WAS를 띄워보고자한다. WAS는 여러가지 종류가 있지만 제일만만한 tomcat으로 설치해보도록 한다. tomcat을 설치하기 위해서는 아래 세가지 일을 해야한다. ec2 생성하기 java 설치하기 tomcat 설치하기 1부에서는 ec2 생성을 하도록 하겠다. AWS 홈페이지를 접속하여 EC2 메뉴로 이동한다. EC2 메뉴로 이동하면 아래와같은 화면이 보인다 이 글을 쓰는 날짜 기준으로 오른쪽위에 인스턴스 시작이라는 버튼이 있다. 클릭해준다. 그렇다면 아래와 같은 화면이 나타날것이다. 우리는 WAS + 간단한 애플리케이션을 돌리기 위한 용도이므로 프리티어로 .. 2020. 9. 17.
[AWS] API Gateway 비 프록시 통합모드에서 querystring 받기 오늘은 Amazon API Gateway와 Lambda를 연결해보도록 하겠다. API Gateway 란 ? Amazon API Gateway는 간단하게 설명하자면 규모와 관계 없이 REST 및 WebSocket API를 생성, 게시, 유지, 모니터링 및 보호하기 위한 AWS 서비스입니다. 자세한 설명은 아래사이트에서 확인하실 수 있습니다. https://docs.aws.amazon.com/ko_kr/apigateway/latest/developerguide/welcome.html Amazon API Gateway란 무엇입니까? - Amazon API Gateway Amazon API Gateway란 무엇입니까? Amazon API Gateway는 규모와 관계 없이 REST 및 WebSocket API를 .. 2020. 8. 16.
[AWS] Lambda 생성 후 테스트해보기 AWS에는 Lambda라는것이 있다. Lambda란 무엇인가? 서버를 프로비저닝하거나 관리하지 않고도 코드를 실행할 수 있게 해주는 컴퓨팅 서비스이다. 자세한 내용은 https://docs.aws.amazon.com/ko_kr/lambda/?id=docs_gateway에서 확인할 수 있다. Lambda 생성하기 AWS에 들어간 후 Lambda를 검색해서 클릭한다. 클릭하면 아래와 같은 화면이 나올것이다. 함수생성을 클릭한다. 함수 생성을 클릭하면 아래와 같은 화면이 나올것이다. 함수이름과 런타임시 어떤 언어와 버전으로 실행할것인지 결정한다. 결정한 후 함수생성을 클릭하면 잠시 후 함수가 생성된다. 생성된 화면은 아래와같다. 소스코드를 작성한후 save를 누르면 코드가 저장이되고 Lambda를 호출하면 저.. 2020. 8. 15.
[Linux] yum groupinstall "Development Tools" not working yum groupinstall "Development Tools" 를 실행하면 아래와 같이 뜰 때 yum groupinstall "Development Tools" --setopt=group_package_types=mandatory,default,optional 입력하면 실행된다. 2020. 8. 2.
[Linux] firewalld FirewallD is not running firewalld FirewallD is not running 해결방법 보통의 경우 실행이 안되고 있어서 위와 같은오류가 난다. systemctl start firewalld 으로 실행시켜준후 사용하면 정상적으로 동작한다. 2020. 8. 1.
[데이터베이스] 데이터 저장구조 데이터베이스 저장구조 데이터를 저장하려면 테이블 스페이스를 생성해야한다. 테이블 스페이스를 생성했으면 세그먼트를 생성한다. 그림과 같이 테이블 스페이스에는 여러개의 세그먼트가 존재하고 세그먼트 안에 여러개의 익스텐트로 구성된다. 파티션 구조가 아니라면 테이블, 인덱스가 각각 하나의 세그먼트가 된다. 파티션 구조라면 각 파티션이 하나의 세그먼트가 된다. 데이터를 입력하다가 공간이 부족해지면 테이블스페이스로부터 익스텐트를 추가로 할당받는다. 익스텐트 단위로 공간을 확장하지만, 실제로 저장하는 공간은 데이터 블록이다. 한 블록은 하나의 테이블이 독점한다 = 한 블록에 저장된 레코드는 모두 같은 테이블 레코드이다. 한 익스텐트도 하나의 테이블이 독점한다. = 한 익스텐트에 담긴 블록은 모두 같은 테이블 블록이다.. 2020. 5. 3.
[웹사이트] xss 방지 xss란 개발자가 의도치 않은 악성 스크립트를 삽입하여 공격하는 방법이다. 이런것을 의도치않고 개발했다가 xss공격이 들어오면 난감할 수 있다. 방지하는법은 매우 간단하다. 특수문자를 치환해주면 된다. 예를들어 " 2020. 4. 30.
[데이터베이스] 소프트 파싱과 하드 파싱 SQL 파싱, 최적화, 로우소스 생성 과정을 거쳐 생성된 것을 내부 프로시저라고 한다. 내부 프로시저를 반복, 재사용할 수 있도록 캐싱해두는 메모리 공간을 라이브러리 캐시라고 한다. 라이브러리 캐시는 SGA (System Global Area)의 구성요소이다. SGA는 서버프로세스와 백그라운드 프로세스가 공통으로 액세스 하는 데이터와 제어구조를 캐싱하는 메모리 공간이다. 사용자가 SQL문을 전달하면 SQL을 파싱한 후 라이브러리 캐시에 존재하는지부터 탐색한다. 이때 라이브러리 캐시에 존재해서 바로 실행 하는것을 소프트 파싱 존재하지 않아서 최적화 및 로우소스 생성단계까지 거치는것을 하드 파싱이라고 한다. ※ 라이브러리 캐시 존재이유 매번 하드파싱을 하려면 비용이 어마어마하다. 그렇기때문에 효율적으로 이용.. 2020. 4. 26.