분류 전체보기

· 일기
2023년 3월 17일 부터 10월 10일까지 약 7개월의 길다면 긴 교육과정이 끝났다. 막연하게 ‘전공자니까 졸업하면 개발자로 취직하겠지’라는 생각을 한게 엊그제 같은데, 아직 한참 부족하긴 하지만 이제 나만의 간단한 서비스는 만들 정도의 실력은 가지게 된 것 같다. 내가 7개월간의 교육을 통해 무엇을 얻었고 앞으로 무엇을 얻어갈 것인지 정리해보려 한다. 내가 얻은 것들 공부하는 방법, 습관 “기초부터 탄탄하게 공부해야한다.”, “기본이 중요하다.” 공부를 했다면 누구나 한번 쯤은 들어봤던 말일 것이다. 나는 내가 직접 겪지 않으면 남이 하는 말이 와닿지 않는다. 위의 말들도 그랬다. 왜? 기초부터 탄탄하게 공부해야하지? 아주 예전 자바에 대해 아무것도 몰랐을 때, 간단한 콘솔 프로그램을 개발하며 잦은..
2023년 3월 17일 부터 10월 10일까지 약 7개월의 길다면 긴 교육과정이 끝났다. 좋은 사람도 많이 만났고, 좋은 강의도 많이 들었다. 물론 반대의 경우도 있었다. 교육과정을 종료하며 간단한 회고를 작성해보려 한다. 파이널 프로젝트 1등! 고생끝에 유종의 미를 거둔 식스센스의 모든 팀원들께 감사의 말을 전하고 싶다. 백엔드 팀에서는 사용자 측면을 생각하며 최대한 안정성과 신뢰성을 가진 서버를 만들었다고 생각한다. 실 개발 일정이 2주정도 밖에 되지 않았기에 빡빡한 일정임에도 불구하고 꼼꼼하고 책임감 있게 자신이 만든 기능의 테스트 코드를 작성해주신 팀원들에게 너무 감사하고 배워간다. 모두가 열심히 노력한 결과 공동 목표였던 테스트 커버리지 50% 달성, GitHub Action CI/CD 파이프라..
https://github.com/livable-final/server/pull/159 목표 달성 포인트 획득 기능 개선 완료 by hyunsb · Pull Request #159 · livable-final/server 목표 달성 포인트 획득 기능을 개선하려 한다. #145 기존의 로직에서 발생하던 4번의 IO를 2번 발생으로 개선했다. DB에서 처리되던 로직을 애플리케이션 코드단에서 처리함으로 인해 성능의 큰 차 github.com 프로젝트를 진행하며 특정 목표를 달성하면 포인트를 지급하는 기능을 구현했다. 해당 기능은 총 4번의 유효성 검사를 필요로 하는데 각 검사는 아래와 같다. 토큰으로 추출된 유저 식별자가 유효한가 금일 이미 목표 달성 포인트를 받았는가 포인트를 받을 수 있는 목표를 달성했는가..
드디어 부트캠프의 마지막 단계인 기업연계 프로젝트가 시작되었다. 기업연계 프로젝트는 패스트캠퍼스의 기획, UI/UX, 프론트엔드, 백엔드와 외부 기업이 함께 진행하는 프로젝트이다. 솔직히 패스트캠퍼스 들어오기 전에도 기업연계 프로젝트가 제일 눈에 띄어서 들어오긴 했다. 각 기업이 본인의 문제점 혹은 새로 개발하고 싶은 방향성을 제시하고, 지원할 수 있는 범위 내에 수강생들을 지원한다. (우리팀은 프로젝트에 필요한 데이터와 EC2 계정을 지원받았다.) 첫 5주는 기획팀과 UI/UX팀이 기업과 소통하며 프로젝트의 방향성을 잡고 설계를 진행한다. 5주동안 백엔드팀은 뭔가 일정이 텅 비어버린 느낌이라 가끔씩 기획팀 회의에 들어가서 설계에 참여하고, 각자 개인공부를 진행했다. 우리팀은 개발 기간이 오면 바로 코드..
이리5조 패스트캠퍼스 미니프로젝트 5팀. 이리5조 has 6 repositories available. Follow their code on GitHub. github.com 기업연계 파이널 프로젝트를 진행하기 전 프론트엔드와 백엔드의 협업 프로젝트인 미니프로젝트가 진행되었습니다. 기간은 2주 남짓, 프론트엔드와의 첫 협업이라 회의에 많은 시간을 쏟았고 실제 개발 기간은 1주일이었습니다. 저는 프로젝트에서 백엔드 팀장을 맡았고, 백엔드 입장을 중점으로 회고를 풀어보겠습니다. 프로젝트 환경 먼저 패스트캠퍼스에서 프로젝트와 관련하여 제공하는 것은 아래와 같습니다. 배포 및 협업관련 특강 오프라인 , 온라인 회의 장소 제공 전체적인 협업 프로세스 노션 템플릿 각 파트 별 2번의 멘토링 지속적인 매니지먼트 특강..
도커(Docker) 볼륨은 도커 컨테이너와 호스트 머신 간 데이터를 영속적으로 저장하고 공유하기 위한 기능이다. 컨테이너는 일시적인 존재이다. 컨테이너 내부에서 생성된 데이터는 컨테이너가 종료(종료 상태)되면 사라지진 않지만, 컨테이너를 삭제(종료 상태에서 rm)한다면 볼륨도 함께 삭제된다. 실제 애플리케이션에서는 데이터의 영속성과 지속성이 중요한 요소이다. 이런 경우에 도커 볼륨을 사용하여 데이터를 컨테이너 외부에 저장하고 관리할 수 있습니다. 그럼 컨테이너를 삭제하고 다시 생성해도 같은 볼륨에 연결되게 하려면 어떻게 해야할까 호스트 디렉터리를 볼륨으로 사용하기 host 시스템에 디렉터리를 만들어두고 해당 디렉터리를 볼륨으로 사용해야한다. docker run -d -v {호스트 디렉터리}:{컨테이너 디..
어? 스프링부트 프로젝트를 실행시켜 놓은 상태라 로컬에서 톰캣이 8080포트 차지하고 돌아가는 상황인데 도커 컨테이너 톰캣도 8080으로 잘 돌아간다. 스프링부트 톰캣 서버는 host 운영체제에서 돌아가지만 컨테이너는 다른 네트워크 구성을 가지고 있다. (포트가 격리되어 있다.) 그럼 컨테이너에서 실행중인 톰캣의 8080포트는 어떻게 들어가냐? 호스트 운영체제(localhost:8080)를 타고 컨테이너의 8080 으로 포트포워딩 해야한다. docker run -d -p 8080:80 tomcat 이렇게 하면 localhost의 8080포트로 접근했을 때 포트포워딩으로 컨테이너의 80포트로 연결된다.
이미지 관련 docker images // 도커 이미지 리스트를 확인함 docker rmi // 이름에 해당하는 이미지 삭제 (이름이 같으면 ID 값으로 삭제) 실행 관련 docker run // 이미지를 실행 docker run -d // 백그라운드에서 이미지를 실행 (데몬프로세스로 실행) docker run -p // 8080:80: 8080포트를 80포트로 포트포워딩 하겠다. 컨테이너 관련 docker ps // 실행중인 컨테이너를 확인함 docker ps -a // 종료된 컨테이너도 볼 수 있음 docker stop // 컨테이너를 종료함. docker rm // 종료된 컨테이너를 삭제함. 컨테이너 전체 삭제하는 방법 (이미지 까지) docker stop $(docker ps -q) // 컨테이너..
도커? 도커 컨테이너 → 하나의 프로그램이라고 생각 도커 컴포즈 → 둘 이상의 컨테이너를 조합하여 새로운 프로그램을 생성 도커 허브 → 저장소 내가 스프링부트로 제작한 프로그램 하나가 있다고 생각해보자. 해당 프로그램은 내 로컬 개발환경에서 완벽에게 돌아간다. MySQL 8.0, SpringBoot 2.7.14 버전으로 만들어졌고 해당 버전에서만 정상적으로 동작한다. 친구가 내 프로그램이 마음에 들어서 가져다 쓰려고 한다. 근데 친구 컴퓨터에 설치되어 있는 MySQL이 나랑 버전이 다른 것이다. 그래서 정상적으로 동작하지 않는 문제가 발생했다. 그럼 친구는 내 프로그램을 사용하기 위해 MySQL버전을 바꾸는 번거로운 일을 해야한다. 에잇! 안하고 말지 이런 문제를 해결할 수 있는 것이 도커, 가상화 기술..
hyunsb
'분류 전체보기' 카테고리의 글 목록 (11 Page)