| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 인스턴스
- Spring API
- 백엔드공부
- 카카오사용자정보가져오기
- jenkins
- 엔티티 매니저
- 엔티티 생명주기
- 백엔드스쿨
- 백엔드 로드맵
- spring
- oAuth2
- ci/cd
- 카카오인가코드받기
- feignClient
- html
- Docker
- tag
- Interface
- static
- Java
- MIND 2023 #후기
- 예외
- 제로베이스
- GitHub_Actions
- form
- 카카오인증토큰받기
- button
- 상속
- 어떤 개발자?
- input
- Today
- Total
목록전체 글 (85)
HiDevelop
GitHub_Action GitHub Actions은 마치 자동차 자동 조립라인처럼 소프트웨어 배포 과정을 자동화하는 도구이다. 소프트웨어를 배포하고 운영하는 과정에서 여러 작업을 수행해서 코드를 테스트하고 배포까지 해줄 수 있다. 어렵게 생각할 필요 없이, 자동차가 만들어지면, 그것을 원하는 고객한테 가기전, 자동차의 테스트를 진행하고 고객의 위치까지 자동으로 배달되어진다고 생각하면 된다. GitHub_Action과 같이 자동으로 배포와 테스트를 해주는 도구들 CI/CD TOOL이라고 부른다. GitHub_Action 친구들로는(CI/CD TOOL 제품들) Jenkins, AWS CodePipeline 등등이 있다. GitHub_Action의 핵심 개념 Event -> 코드 변경, 풀 요청, 배포 등 ..
현재 진행하고 있는 DailySchool이라는 팀프로젝트를 진행하고 있다. 여기서 내 함수에서의 내가 만든 문제점을 발견했다 문제의 로직들 1. 비밀번호 재설정 시도를 위해 이메일을 통해 인증번호를 확인하는 절차안에서 redis에 {이메일 : 인증번호} 형식으로 저장하게 된다. 2.본인 인증 절차가 완료되면, redis에 {이메일 : verifeid} 형식으로 기존의 값에 verifeid를 덮어 씌운다 이게 왜 문제일까? 아래 코드를 보자 -- 비밀번호 재설정 코드를 레디스에 저장하기 위한 함수이다. public void savePasswordResetVerificationCodeToRedis(String to, String passwordResetVerificationCode){ try{ //redis..
구글에게 물어보면 HashTable은 아래와 같이 답변해준다. "해시 테이블은 key : value로 데이터를 저장하는 자료구조 중 하나로 데이터를 빠르게 검색할 수 있는 자료구조 " 해시 테이블은 왜 데이터를 빠르게 검색할 수 있을까? 라는 의문이 들었다. 이에 대하여 물어보면, - 내부적으로 배열( 버킷 )을 사용하여 데이터를 저장하기 때문 - 해시함수를 사용해 각각의 Key값에 해시함수를 적용해 배열의 고유한 Index로 활용하기 때문 그럼 버킷과 해시함수는 뭐야? 일단 그림을 통해 이해해보면 쉽다. 그림으로 보아하니, - 해시함수는 John Smith라는 키를 "2"라는 버켓의 인덱스로 바꿔주는 함수 - 버켓은 데이터가 저장되는 배열 그럼 해시 테이블은 데이터를 어떻게 저장하고 조회하는가? 일련..
Fork한 레포에 지속적으로 contribution 해야해서, 최신화 하는 방법에 대해 기록할려고 합니다. 1. 원본 repository를 remote repository에 추가하기 git remote -v 위 명령어를 통해 현재 remote로 등록되어있는 repository를 확인한다. 대부분 아래와 같이 origin이 뜰 것입니다. origin https://github.com/~~~~~~~/dasdsqwerapi.git (fetch) origin https://github.com/~~~~~~~/dasdsqwerapi.git (push) 현재 remote repository에 연결되어있는 repo들 입니다.(보통은 자신의 github repo입니다.) 원본 repository를 remote repo에..
2023년의 마지막 달의 중순에 접어 들었다. 올해를 마무리하면서, 인턴 기간동안 겪었던 이야기들을 정리해볼까 한다. 인턴의 시작 2023년 하반기 대학교에서 진행하는 장기현장실습(IPP)로 신재생에너지 모니터링 어플리케이션을 서비스하는 회사로 입사하게되었다. 입사 첫 당시 간단한 게시판 만들기 프로젝트를 만들고, 개발 팀장님과 면담을 진행헀다. 면담내용은 ERD 설계, 어플리케이션 서버 구현/운영 경험(당연힌 구현경험은 있지만, 운영경험은 없었다..ㅠ), 배포 등 서버를 구현하는데 필요했던 기술들에 대해 물어보셨다. 나는 내가 아는 선에서 배포했던 방식과 어떤 식으로 구현했는지에 말씀 드렸다. 이야기를 들으시고는 , 현재 회사는 주로 정부에서 주는 신재생에너지 사업을 맡아서 하는 회사였는데, 이번에 민..
인턴 기간중에 새로운 프로젝트의 무중단 배포환경을 구축하여, 이에 대해 기록하고자 남기는 공간입니다 🥹 환경 - Amazone Linux2 (EC2) 무중단 배포란 무엇일까요..? 어플리케이션을 배포 과정을 자동화하여 어플리케이션을 지속적으로 업데이트하고 배포하는 방법으로 서비스가 중단되지 않고 배포되는 환경을 말합니다. 무중단 배포환경에 대한 방법론 무중단 배포환경에는 크게 3가지의 방법이 있습니다. 롤링 무중단 배포 새롭게 어플리케이샨을 업데이트 할 때, 서버 클러스터의 여러 인스턴스에 순차적으로 배포하여 전체 서비스 중단을 최소화하는 배포방식입니다. 새로운 버전을 전체 시스템에 동시에 배포하는 대신, 클러스터의 일부 노드나 인스턴스에 먼저 배포하는 방식으로, 이를 통해 전체 서비스의 중단없이 일부 ..
이번 포스팅은 인턴 기간 동안 맡은 프로젝트의 ci/cd를 구축하고 이를 팀원들에게 공유하기 전, 지식과 기술을 다듬기 위한 포스팅입니다. 앞 포스팅에서 docker를 활용해 jenkins를 구축하는 포스팅이 있으니 관심이 있으신 분은 참고해주세요!! 😃 Jenkins와 Docker를 이용한 CI/CD - 1편 Jenkins와 Docker를 이용한 CI/CD - 1편 인턴 기간 중 맡은 프로젝트에서 CI/CD를 구축하고 이를 팀원들에게 공유하기 전, 스스로 개념과 과정을 익히고자 블로그에 관련 글을 포스팅 하고자 합니다😃 CI/CD 구축을 위한 환경 제가 구축 hidevelop.tistory.com 1. Jenkins 필요 라이브러리 설치 Plugin Manager에 접속하여 필요한 플러그인들을 설치한다..
인턴 기간 중 맡은 프로젝트에서 CI/CD를 구축하고 이를 팀원들에게 공유하기 전, 스스로 개념과 과정을 익히고자 블로그에 관련 글을 포스팅 하고자 합니다😃 CI/CD 구축을 위한 환경 제가 구축하려는 시스템 아키텍쳐입니다. 환경은 bitbucket과 AWS Ec2 환경에서 진행하였습니다. 1. Dokcer 설치(Jenkins 서버/CI 서버) CI Server에서 다음과 같이 Docker를 설치해줍니다. // 모든 패키지 업데이트 $sudo yum update -y // Dokcer 설치 $sudo yum install docker -y 위 명령어를 통해 Docker를 설치하셨다면 //docker 버전 확인 $docker -v 버전을 확인해 docker가 잘 설치되어있는 지 확인해주세요! 그 후에 do..
이번 인턴으로 맡게 된 프로젝트의 CI/CD 서버를 구축하고, 팀원들에게 구축에 대한 환경을 공유하기로 하여, 그 전에 블로그를 통해 개념을 정리하고자 합니다.🥹 CI/CD 애플리케이션 개발 단계를 자동화하여 애플리케이션을 더욱 짧은 주기로 고객에게 제공하는 방법 기본 개념은 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포 애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르는 애플리케이션의 라이프 사이클 전체에 걸쳐 지속적인 자동화와 모니터링을 제공 CI(Continuous Integration) 개발자를 위한 자동화 프로세스인 지속적인 통합을 의미 애플리케이션 코드의 새로운 변경 사항이 정기적으로 빌드 및 테스트를 거쳐 '공유'(develop branch) 레포지토리에 병합 여러 명의..
aws를 시작하기 전에 알면 좋은 지식들!! 모르고 사용해도 크게 큰 영향은 없지만, 아 이게 그거였구나 하는 지식들입니다 :) AWS의 구조 AWS는 크게 2가지 가용영역, 리전으로 나뉩니다. 리전 리전은 aws의 서비스가 제공되는 서버의 물리적 위치로 전 세계에 흩어져 있습니다. 각 리전에는 고유 코드가 있습니다. 우리 한국같은 경우에는 서울: ap-northeast-2의 고유코드를 가지고 있습니다. 아마 새로운 기능을 출시하는 일이나 각 지역마다 필요로 하는 기능이 다르기 때문에, 각 리전에 따라 제공하는 서비스가 다릅니다. (대부분의 필요로하는 기능은 모든 서비스에서 기능을 제공하고 있으니 안심하셔도 됩니다.) 가용영역(Availavility Zone) 리전의 하부 단위입니다. 즉, 리전이라는 영..