본문 바로가기

분류 전체보기74

[AWS] EC2 생성 - Spring Boot 배포(1) 목표 AWS EC2 인스턴스 생성 후 EC2 내부에서 Spring Boot 서버를 실행 하는것이 최종 목표입니다. CI/CD 인프라 시스템을 구축하는것이 아닙니다. (단순 EC2 단일 배포) - 배포시 유의할 부분 고정 IP 주소를 사용합니다. (탄력적 IP : 이부분 설정을 넘기셔도 됩니다.) 터미널에서 SSH 클라이언트를 통해 EC2에 접속합니다. Git 방식이 아닌, FileZila 를 통해 프로젝트를 이동합니다. 프리티어(무료)를 이용합니다. - 사전 필요 작업 AWS 계정 생성. pem 키 발급. FileZila(for Mac) 프로그램 설치. (파일전송) jar 파일 build AWS Region 설정 (Asia/Seoul) AWS Console 우측 상단에서 설정 가능! 목차 보안그룹 설정 .. 2023. 2. 15.
[AWS] nohup - EC2 SSH 접속종료시 서버 유지 방법 AWS (EC2) 서버 유지 방법. - EC2에 SSH 접속이 종료 되면, 프로세스가 종료되고, 서버 또한 종료 되게 된다. (터미널 종료) - 하지만 서버는 SSH 연결이 끊기더라도 켜져 있어야 한다. (SSH를 계속 연결해놓을 이유가 없다..) - 백그라운드에서 실행할 수 있게 하는 nohup 명령어를 사용하여 서버를 유지 시켜 보자. *서버 유지와 더불어 React(npm), SpringBoot(Java)를 동시에 EC2 하나에서 사용 할 수 있다.(권장하지는 않는다.) * 해당 포스트에서는 Spring Boot 기반으로 작성된다. nohup - 사용법 1. 명령어 - 기본 nohup java -jar build/libs/test-0.0.1-SNAPSHOT.jar & [옵션] - 기본 명령어는 위의.. 2023. 2. 15.
[AWS] EC2 포트 포워딩 (Port forwarding) - 포트연결 AWS EC2 포트 포워딩 - 포트 포워딩(port forwarding)이란? 외부에서 접속한 (IP주소 : 포트)를 내부의 port로 연결(매핑)하는것을 의미한다. 즉 기본포트인 80으로 접속하게 된다면, 내가 설정한 port로 요청되는것을 말한다. 예) Client 접속 (IP주소:8080) -> 내부적으로 매핑 -> port: 3000번으로 Redirect ○ 사용상황 필자의 경우 EC2 인스턴스 1개에 Spring-boot, React(Front) 2개의 서버가 구동 되고, 무엇을 호출하던간에 3000(React)포트로 포워딩을 해야 했다. (8080(SpringBoot)포트는 외부에서는 접근이 안되는 port로 지정해주었다.) 포트 포워딩 설정 ○ 명령어 sudo iptables -t nat -.. 2023. 2. 14.
[Spring] Spring-Container(IoC 컨테이너)에 관리되는 Bean 목록 확인 Spring Container가 관리하는 Bean 목록 확인 하기. - Spring의 Bean은 Spring-Container(IoC Container)가 관리하고 있으며, 객체 생성, 객체 주입 같은 것들을 개발자가 아닌 Container에서 수행하게 된다. - Spring IoC, DI, Container 에 관한 개념을 좀 더 알고싶다면 아래 링크에서 공부하고 와도 좋을것 같다. https://lucas-owner.tistory.com/39 [Spring] Spring-Container, IoC, DI, Singleton 개념 정리 목차 IoC 란? Spring Container (스프링 컨테이너) DI(Dependency Injection) 란? Singleton 패턴이란? IoC 란? IoC 란.. 2023. 2. 8.
[Spring] Spring-Container, IoC, DI, Singleton 개념 정리 목차 IoC 란? Spring Container (스프링 컨테이너) DI(Dependency Injection) 란? Singleton 패턴이란? IoC 란? IoC 란 Inversion Of Control의 약자이며, 제어의 역전 이라고 한다. 프로그래머와 프레임워크의 주체가 바뀌었다고 표현한다. 일반적인 경우라면 '개발자'가 미리 정한 순서에 따라 생성, 실행을 주도, 의도 했다면(개발자가 제어권을 가졌다.) IoC 가 등장한 이후는 객체의 생성, 생명주기, 관리까지 모든 객체에 대한 주도권을 프레임워크가 가진것이다.(프레임워크가 관리) IoC 를 통해 Application을 구성하는 객체 간의 낮은 결합도를 유지할 수 있다. IoC 의 역할을 담당하는것이 Spring Container 이다. (Sp.. 2023. 2. 8.
[Java] Java 메모리 영역(stack, heap, static), JVM, JAVA 변수 종류 목차 JVM 이란? Java의 메모리 영역 Java 변수 종류 Static(Method) 영역 Heap 영역 Stack 영역 JVM 메모리 구조중, (Stack, Heap, Static)메모리 영역과 JVM, Java 변수 종류에 대해서 알아보자. JVM 이란? - 메모리 영역을 공부하기전 간단하게 JVM에 대해서 알아보자. JVM 이란 Java Virtual Machine의 약자이며, 자바 가상 머신이라고 불리운다. Java의 바이트 코드를 해석하고 실행하는 역할을 한다. OS에 상관없이 실행할 수 있는것이 장점이다. (JVM 설치만 하면 어떤 운영체제에서든 java 파일을 실행할 수 있다.) ○ JVM 실행 순서 .java 파일을 컴파일러(Compiler)를 통해 .class 파일로 변환한다. .cl.. 2023. 2. 7.
[Git] git add, commit, push 취소, (amend, commit message 변경) 목차 목표 git add 취소 git commit 취소 git amend (commit message 변경) git push 취소 목표 - 해당 글 에서는 git add, commit, push 를 취소하는 방법을 활용 해 볼것이다. 만약 개념적인 부분을 좀 더 보고싶다면 아래의 링크들에서 확인해보세요. - reset, revert 개념 https://lucas-owner.tistory.com/35 [Git] Git (reset, revert) 정리 및 개념 Git 명령어 - reset, revert 개념 및 정리 - git 을 사용하다 보면 다양한 상황이 발생하는데, 그중에서는 정말 무시무시한 일이 발생 할 수도 있다. 예를 들자면, RollBack을 해야 한다거나, Conflict 가 났 lucas-.. 2023. 2. 2.
[JPA] 영속성 컨텍스트(Persistence Context), Entity Manager 목차 JPA 영속성 컨텍스트란? 영속성 컨텍스트(Persistence Context) Entity Manager(엔티티 매니저) Entity 생명주기 flush, 변경감지(Dirty Checking) JPA 영속성 컨텍스트란?(Persistence Context) - JPA에서 가장 중요한 개념인 영속성 컨텍스트(Persistence Context)에 대해서 알아보자. - JPA는 Entity Manager, 영속성 컨텍스트를 통해 데이터의 상태변화를 감지하고 상황에 맞는 쿼리를 수행한다. ○ 영속성 컨텍스트 (Persistence Context) Entity를 영구 저장하는 환경. JAVA 영역에서 데이터를 관리하며 DB 접근을 역할을 수행한다. 어플리케이션과 DB 사이에서 객체를 보관, 저장하는 개념.. 2023. 2. 2.
[Git] Git (reset, revert) 정리 및 개념 Git 명령어 - reset, revert 개념 및 정리 - git 을 사용하다 보면 다양한 상황이 발생하는데, 그중에서는 정말 무시무시한 일이 발생 할 수도 있다. 예를 들자면, RollBack을 해야 한다거나, Conflict 가 났다거나.. 혹은 Commit 을 취소하고 싶다거나 이럴때 사용하는 git 명령어인 reset, revert의 개념에 대해 알아 보자! git reset : 커밋 취소 - reset 명령어는 대표적으로 커밋을 취소하는 명령어이다, 또한 Staging(스테이징) 취소 가능하다. 옵션에 따라 디테일한 설정을 할 수 있다. - 옵션을 적지 않고 - git reset 할 경우 스테이징 취소. ○ 옵션 --soft: 커밋 취소, Staging 상태 유지(add) --mixed: 커밋.. 2023. 2. 1.