본문 바로가기

Back-End44

[AWS] Ec2 Amazon Linux java 설치하기 설치 가능한 자바 확인 sudo yum list | grep java 설치 가능한 패키지 목록 중 java 이름이 들어간 것들만 조회한다. 그럼 이런식으로 나오는데, 나는 java 11을 설치해보겠다. 자바 11 설치 sudo yum install -y java-11-amazon-corretto-devel 그럼 위와 같이 정상적으로 설치가 될 것이다. 자바 버전 확인 java -version 정상적으로 설치가 됐는지 자바 버전을 확인해야한다. 내가 설치한 버전은 자바 컴파일러가 포함된 버전이라 추가적으로 설치하지 않아도 된다. 환경변수 설정 1. 자바 설치 경로 확인 which java # /usr/bin/java readlink -f /usr/bin/java # /usr/lib/jvm/java-11-a.. 2023. 7. 22.
[리팩토링] 코드 리팩토링이란 ? 서론 과거에는 기능구현이 더욱 중요했지만, 현재는 코드 가독성의 중요성이 점점 더 부각되고 있다. 과거 프로젝트를 리팩토링하며 리팩토링에 대한 개념을 정리하고자 한다. 리팩토링이란 ? ? 리팩토링이란 코드의 구조와 디자인을 개선하는 작업이다. 기능에는 영향을 주지 않으면서 가독성을 높이고 유지보수를 용이하게 만드는 것이다. 즉, 코드의 품질을 향상시키고 버그를 줄이며, 향후 개발과 유지보수를 보다 효율적으로 할 수 있다. 리팩토링 과정 1. 코드의 이해 -> 코드의 기능, 구조, 의존성 등을 판단하여 어느 부분을 개선해야 할지 판단해야 한다. 2. 테스트 작성 -> 리팩토링 전,후 에 테스트 결과가 변함이 없어야 한다. 3. 작은 단위로 분리 -> 큰 변경사항을 한번에 적용하지 않고, 쪼개서 적용하며 테.. 2023. 7. 22.
AWS RDS 생성 및 접속 AWS RDS 생성 AWS RDS 서비스에 접속해서 DB를 생성해보자 RDS 탭 - 대시보드 DB 종류 및 버전 선택 표준 생성 선택 - Mysql 선택(사용하는 DB 선택) - 버전 선택 먼저 아래와 같이 내 PC의 Mysql이 어떤 버전인지 확인하고 근접한 버전을 선택한다. 프리티어를 사용중이면 꼭 선택해야 한다 ! DB 정보 생성 DB 인스턴스 식별자 : AWS에서 DB를 구분할 수 있는 고유 이름 마스터 사용자 이름 : DB의 root 권한을 가진 ID 마스터 암호 : 해당 ID의 비밀번호 인스턴스 구성 기본값 그대로 쓰면 된다. 어차피 프리티어라 몇개 못쓴다.... 좀 더 성능 좋은걸 쓰고싶다면 db.t4g.micro 선택 스토리지 설정 이것도 기본값 그대로 쓰면된다. 어차피 20G를 가득 채.. 2023. 7. 16.
AWS 인스턴스 생성 후 SSH로 접속하기 인스턴스 생성 먼저 로그인 후 가상 머신 시작 버튼을 클릭해줍니다. 못 찾으시는 분들을 위해 링크 첨부합니다. (인스턴스 생성 페이지 바로가기) 그 후 적절한 이름 입력 후 아래와 같이 선택해 줍니다. 저는 Amozon Linux의 2023 AMI를 사용해보겠습니다. 인스턴스 유형 그 후 인스턴스 유형을 t2.micro를 선택해 줍니다. 그 외 인스턴스 선택 시 요금이 발생할 수 있습니다. 키 페어 생성 키 페어는 EC2 인스턴스에 원격으로 접속할 때 필수적으로 필요하므로 생성해줘야 합니다. 또한, 키 페어는 한번 생성하면 두번다시 다운로드 받을 수 없기 때문에 주의해서 보관해야 합니다. 키페어 이름을 설정해준 뒤 키 페어 생성을 눌러 생성된 키 페어를 다운받아 주도록 합시다. 네트워크 설정 방화벽(보.. 2023. 7. 15.
[rabbitMQ] M2칩 환경 SpringBoot + rabbitMQ 연동 RabbitMq 사용하는 이유? -> 먼저 한 프로젝트를 진행한다고 가정해보자. 서버를 분할하지않고 한 서버에서만 프로젝트를 구상한다면 미니프로젝트에는 영향이 없겠지만, 조금이라도 규모가 커진다면 성능 및 사용성을 고려해야 한다. LoL이라고 가정을 해보자. 1. 게임을 하고 있는유저 2. 로그인을 하고 있는유저 두 유저가 있다. 로그인 쪽 어떠한 이슈로 인해 서버가 터졌다. 여기서 만약 서버가 전부 통합 서버라면?... 게임을 하고 있던 사람도 멈추고 게임을 찾고 있던 사람도 멈추고 로그인 하려던 사람도 멈추게 된다. 이러한 현상을 방지하고자 분산 서비스 시스템을 이용하는 것이다. 서버를 분산하였다면 ? 로그인 하는 서버만 터졌으면 게임을 진행하고 있던 유저는 아무런 피해없이 진행할 수 있을것이다. 대.. 2022. 8. 23.
[spring] 예외처리? Exception Handling? 개발자라면 누구나 한번쯤 예외처리에 대해 깊게 공부해야 할 때가 온다. 단순히 throw, try-catch로 예외처리 했던 과거와는 다르게 좀 더 깊게 알아보자. 에러는 크게 두 종류로 나뉜다. Error 해결(?) 할 수 없는 에러이다. OutOfMemoryError, AssertionError, StackOverflowError, IOError, NoClassDefFoundError 종류는 위와 같이 대표적인 것들이 있다. Exception 예방할 수 있는 에러이다. 실무에서 가장 중요한건 예외처리?.. 엄청난 성능을 가진 로직이나 기똥찬 코드도 에러 한방이면 무용지물이다.(고객의 신뢰도 하락 ..) 예외처리는 기본중에 기본이고, 최대한 여러 방면으로 방어해야 한다. 2022. 8. 17.