일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Enum
- papago
- Java
- ncloud
- Database
- DBDocs
- spring boot
- spring
- mybatis
- OrientalUnity
- 네이버 클라우드
- object storage
- navercloud
- NooBLoL
- Pinpoint
- NCP
- NaverCloudPlatform
- 네이버클라우드
- Scheduler
- 회고
- 에프랩
- Thymeleaf
- F-Lab
- AssertJ
- Naver Cloud
- Naver Cloud Platform
- React
- docker
- junit
- ngrinder
- Today
- Total
목록전체 글 (83)
DevJong12

목차 해당 프로젝트의 경우 CI 와 CD를 전부 Github Actions를 활용하였다. CI와 CD에 사용된 Github WorkFlows를 작성해 보고자 한다. 먼저 사전에 도움이 되라고, 내 프로젝트의 아키텍쳐이미지를 남겨논다. 1) CI 먼저 CI가 해당 프로젝트에서 왜 필요했을 까?부터 정의를 해보고자 한다. 필자의 프로젝트는 6명이 팀으로 있었고, 대부분이 Git에 미숙한 상황이었다. 하지만 Merge는 안전하게 진행해야 한다고 판단을 내렸으며 이에 따라, Build가 되지 않고 파일이 증발하는등의 위험한 PR을 솎아 내야 한다는 문제가 있었다. 해당 문제를 해결하고자 CI를 도입하였고, Build가 되지 않으면 CodeReview를 Approve하지 않고 Merge를 진행하지 않는 방법을 채..

목차 와이어 프레임과 디자인을 정말 허접하게 한채로 진행하였다... 일단 내 목표는 프로젝트 경과에 대한 기록들이기 때문에 글들을 올려두긴 하는데... 많이 민망하다... 그렇기에 아무 내용없이 이미지만 올리도록 하겠다... (도망쳐) 해당 챕터는 재미로 봐주면 좋을 것 같다. ㅎㅎ;;;; 메인페이지 회원가입 경매품 등록 및 경매품의 관리자 승인 페이지 경매품의 상세 정보 및 입찰 페이지 포인트 전환(결재) 마이페이지 및 내 경매 내역에 대한 조회 많이 민망한 페이지인데... 6명 팀인데 6명모두 백엔드의 피가 흘럿나보다... 디자인이 모두 젬병이었다..흑흑흑... 이쁘게 꾸미는 사람들... 필자는 개인적으로 존경한다...

목차 프로젝트 링크 Picasso 경매 예정작 NEW more picasso.jong1.com GitHub - donsonioc2010/picasso: temp name temp name. Contribute to donsonioc2010/picasso development by creating an account on GitHub. github.com 1) 계기 및 개요 내가 코드에 대해 재밌는 요소를 많이 많들어 볼 수 있을만한 소재의 토이프로젝트로, 간단한 미술품 경매 사이트를 만들어 보는것을 해봤다. 해커톤의 개념으로 짧은 기간 개발을 진행해야 했고, 전체적인 팀의 코드관리까지 도맡아 진행했었다. 2) 개발 기간 및 역할 23년 09월 13일 부터 시작하여 23년 09월 27일까지 정확히 약 2주..
지난번 Load Balancer작업 이후 그냥 간단한 프로젝트니까 CD를 쉽게 구축할 생각을 하면서 NCP를 계속 알아보고 있는 상황이다. 사실 AWS를 사용할떄야 CI / CD를 구축할 떄 Travis CI에서부터 연결되서 CD까지의 구축이 매우 쉽게 가능하고 참고할 수 있는 Reference가 많아서 매우 편한것이 사실이다. 이걸 NCP로 바꿔보려고 하면.. 참 고민이 많아 질 수 밖에 없는 것 같다. Travis CI로 작업을 시작하게 되면 너무 복잡해 지고 참고할 수 있는 Reference가 거의 전무해서 시간도 오래 소비되는게 참.. 일단 알아보는게 크게 4가지가 될것 같은데.. Github Actions를 통한 배포. 이거 근데 스크립트 일일이 내가 작성해야 해서 이럴꺼면 왜 하나 싶은 생각을..

개요 인프런의 강의를 들으면서 Vue를 활용하는 예제를 보고싶어서 강의를 보던 중, AWS배포 과정이 영상으로 있길래, 현재 금액이 발생하는 AWS를 사용하는 것보다는, 현재 내가 무료로 사용할 수 있는 Naver Cloud를 활용해 보기로 마음을 먹었다. 또한 과거에 구매했던 도메인을 활용하여 도메인을 통한 접속으로 AWS로 치면 EC2인 Server에 접속하도록 아키텍쳐를 구상하던 중, Load Balancer부분에서 많은 에로사항이 있었어 가지고, 기록해 두고자 글을 남겨둔다. 개요에서 미리 적어두지만 모든 과정을 nginx로도 처리가 가능하다. 단지 필자의 경우 구매한 도메인인 jong1.com을 dev.devlog.jong1.com, prod.devlog.jong1.com 등등 여러 도메인으로..

왜 글을 작성하게 되었을까? 사실 필자는 과거에 DBDiagram과 DBDocs에 대한 소개를 한 적이 있다. DBDiagram에 대한 소개 : https://devjong12.tistory.com/67 DBDocs를 통한 문서화 방법 : https://devjong12.tistory.com/68 문서화한 프로젝트를 DBDocs로 CD구축하는 방법 : https://devjong12.tistory.com/69 사실 해당 포스트를 적을 때만 사용했을 떄만 하더라도 갓 시작할떄라 와 좋다하면서 호다닥 글을 썻던 기억이 난다. 하지만 이제 사용기간이 좀 되고, 다양한 경험을 하고 저 글을 보니, 많이 밋밋하다는 느낌을 받고 리뉴얼차원의 글을 작성해 보고자 한다. 추가적으로 나는 현재 유료로 구독을 해서 사용하..

아티클 주제 우리가 데이터를 대조해서 조회를 할 때 !=, =, like, not like, is Null, Null 다음과 같은 연산자를 많이 사용한다. 해당 포스트는 해당 연산자중에서 !=, not like 와 관련한 내용이다. 해당 문제는 처음 겪은건 Oracle이지만, Maria, Mysql도 문제는 동일하다 이슈내용 전 환경 설명 당시 재직중이던 회사에서 나는 유지보수 업무를 하고 있었다. 고객사가 여러곳이었다보니 다양한 DB벤더를 접할 수 있었는데, 이슈가 발생한 고객사의 DB Vendor는 Oralcle을 활용중이었다. 해당 아티클은 연산자의 문제답게 일단 컬럼에 대해서 설명을 해야 한다. 문제가 발생한 테이블은 아래의 구조를 가지고있다고 가정해보며, 아래의 테이블에서 status컬럼 nul..

작성 개요 JWT관련 영상보는데 너무 이해가 안되서 공식문서 보면서 학습한 내용들.... 다시 영상보자.. JWT란? JSON Web Token의 약자로, JWT Introduction Docs페이지로 공식홈페이지에서 소개하고 있는 원문에서 알수 있었다. JWT에 대한 공개문서의 소개 JWT는 개방형 표준(공개표준, Open Standard) RFC7519로서, 당사자(서로 개체)간에 JSON 객체를 사용해 안전하게 전송하기 위한 소형(compact) 및 자가수용적 (self-contained) 방식이다. 또한 정보는 디지털 서명이 되어있어, 신뢰가 가능하며 JWT는 HMAC알고리즘을 사용하거나 또는 RSA, ECDSA를 사용해 공개 / 개인 키를 쌍으로 사용하여 서명이 가능하다. 당사자 간에 비밀 유지..
제작 계기 수업 방식이 Virtual Box로만 물리적인 설치를 통해서 진행을 하는 방식이었으나 내장비는 M1.... 가상머신돌릴라면 돌릴수야 있지만 귀찮은 환경이었다. 나는 그냥 말로 하는 설명을 듣기만되는 입장이라 문제가 없지만... 혹시나 Mac을 사용해 수업을 듣고싶고 편하게 날리고 재설치하는걸 희망하는 분들을 위한 컨테이너를 제작해봤다. Git Repo https://github.com/donsonioc2010/ubuntu_study_for_dev GitHub - donsonioc2010/ubuntu_study_for_dev: 리눅스를 처음 사용해보는 사람을 위해서 개발시 자주 사용하 리눅스를 처음 사용해보는 사람을 위해서 개발시 자주 사용하는 패키지를 Base로 설정한 docker-compos..

개요 이력서를 내가 직접 작성하는 과정에서 Develop, Main Branch에 Push가 발생되는 경우 Pages에 자동으로 배포가 되도록 설정을 진행하는 과정에서, React의 모든 참조파일들이 아래처럼 Not Founds가 발생되는 문제에 대한 기록이다. 개발환경 React Github Pages Actions를 통한 배포가 아닌 Deploy from a Branch 방식을 통한 배포를 진행하였다. 이슈사항 Pages에서 Resume프로젝트에 접속하기 위한 링크는 아래의 스크린 샷과 같은 명칭과 같이 github.io/My-Resume/~로 진행되었다. 하지만 참조가 되야하는 파일들은 github.io/static~으로 경로가 달랐고, 파일 경로가 다르다 보니 실제 404, NotFounds를 출..

생활코딩 강의를 들으면서 react-redux를 따라 해보고 있었는데, Store를 생성하려 할 대 @deprecated 선언이 되어있어, 기능상 문제가 있는 것인가 하여, 주석 docs를 보고 알게 되었다. redux의 경우 기본 redux를 import하고 있었으며 Redux Tool Kit을 활용한 store생성이 아니다. 먼저 첫번째로 확인한 것은, Redux Github에서 확인을 하였으며, https://github.com/reduxjs/redux/releases 에서 확인이 가능하다. 22. 04. 19에 남긴 v4.2.0 버전의 Tag로, 하단의 버전에서 작업을 진행한 것으로 보인다... 문제 요약 WE ARE NOT GOING TO ACTUALLY REMOVE THE createStore..

개요 및 기존 코드 React에서 발생되던 오류로 Input태그와 관련해서 사용을 잘못해서 나는오류... 공부하면서..뇌뺴고 공부하다보니.. 오류문구를 읽을 생각을 안해버려서.. 확실히 기억하고자 남긴다.. 일단 학습을 진행하고있는 영상은 다음의 링크영상이었다 : https://www.youtube.com/watch?v=OZPRKFqPWG4&list=PLuHgQVnccGMCOGstdDZvH41x0Vtvwyxu7&index=10 소스코드는 다음과 같이 작성했었다...틀린줄도모르고,.. 오류내용 첫번째 오류 The above error occurred in the component: at input at li at ul at div at App (http://localhost:3000/main.ffb5a62..

우연히도 2월부터 입사를 해서 백엔드 개발자로서 근무를 하면서 면접과 입사를 할 떄부터 2월까지 있던 일에 대해서 기록을 해보고자 한다. 현재 다니는 회사는 차량유지관련으로 서비스를 준비하고 있는 스타트업이다. 현재 다니고 있는 이 회사가 면접 당시부터 많은 임팩트가 있었는데 다음과 같은 상황에 놓여있었다. 회사는 역삼에 있는 스타트업(??) 인데, 이미 면접볼 당시에는 많은 회사를 붙었던 상황이어서 "굳이 이 회사를 올 필요가 있을까?" 라는 생각이 많았던 상황이었다. 면접날인 경우에도 "면접조차도 아 귀찮은데 굳이 면접을 보러 가야하나?" 라는 생각이 많았었다. 면접이후 2시간만에 같이 일하자는 연락을 받았다. 이 연락을 받았을 떄는 말했던 처우를 낮추면서 제안을 했었고, 굳이 메리트가 있을까 깊게 ..
테스트 코드에 대한 소개 TDD에 대해서 1.TDD와 단위 테스트(Unit Test)는 다르다. 2. TDD는 테스트가 주도하는 개발로 테스트 코드를 먼저 작성하는 것에서부터 시작한다. TDD의 사이클링 순서 Red - 항상 실패하는 테스트를 먼저 작성 Green - 테스트가 통과하는 프로덕션 코드를 작성 Refactor - 테스트가 통과하면 프로덕션 코드의 리팩토링 단위 테스트 기능 단위의 테스트 코드를 작성하는 것 TDD와 다르게 테스트코드를 먼저 작성하지도 않으며 리팩토링도 포함되지 않고 순수히 테스트 코드만 만드는 것을 의미한다. 테스트 코드를 작성하는 이유 단위 테스트는 개발단계 초기에 문제를 발견하도록 도와준다. 단위테스트는 개발자가 나중에 코드를 리팩토링 하거나 라이브러리에 업그레이드등에서 ..
옛날부터 .gitignore에 커밋한 이후에도 나오면 안되는 파일이 나오는 경우가 많아서 불편하다고 생각했었다. 이게 문제라는 생각을 크게 안하고 살았는데... 책을 읽다가 보니 이게 캐시문제라는걸 알게되었다... 해결법은 https://jojoldu.tistory.com/307 을 참고하였다. 자주 사용해야할 수도 있을 것 같아서 코드째로 복사해놓는다... git rm -r --cached . git add . git commit -m "fixed untracked files"

문제내용 많은 포스트를 봤고, 슬라이딩윈도우와 Deque를 사용해서 풀어야 하는지 '문제풀이' 에 대한 글이 없어서 남겨 보고자한다. 개인적으로 국어능력이 너무 부족해서 내가 문제를 이해하는게 너무 힘들었어서 내가 알아보기 위해서 기록으로 남겨놓고자 한다. 제한시간의 경우 2.4초,Java기준 2.6초이며 N의 범위가 5,000,000까지 가기 때문에 정렬인 nlogn을 사용하는 순간 시간을 넘겨버린다. 따라서 O(N)을 사용해야 한다. 첫째줄에는 N과 L이 주어진다. N의 경우에는 숫자가 주어질 총 갯수이며 L의 경우에는 슬라이딩 윈도우의 범위이다. Di = Ai-L+1 ~ Ai 중의 최솟값이라고 할 때, D에 저장된 수를 출력 이 말이 잘 이해가 되지를 않았었으나 풀어보자면 1 5 2 3 6 2 3 ..
멘토링이 끝나고 내가 나가야 할 학습 방향성을 잡지 못해 방향성을 지속적으로 잡아가고자 작성하는 포스트 매일 알고리즘 Java, Spring [책, 강의]Effective Java [책] http://www.yes24.com/Product/Goods/65551284 [강의 1편] https://www.inflearn.com/course/%EC%9D%B4%ED%8E%99%ED%8B%B0%EB%B8%8C-%EC%9E%90%EB%B0%94-1 [강의 2편] https://www.inflearn.com/course/%EC%9D%B4%ED%8E%99%ED%8B%B0%EB%B8%8C-%EC%9E%90%EB%B0%94-2 Spring-Cloud Spring-Batch Kotlin Kotlin을 왜 사용하는가? 왜 사..
이번주 월요일, 22. 10. 31부로 F-Lab 멘토링 프로그램의 종료를 하였다. 처음 F-Lab을 시작했을때는 와 6개월 너무 긴데 끝낼수있나? 라는 생각을 했었다. 더군다나 멘토링 초기에 멘토님께서 DeepDive하게 물어보는 질문들을 받을 때는 이거 완주 가능할까...? 인 생각 뿐이었고, 멘티가 없이 단독으로 멘토님과 단독으로 멘토링을 진행하다 보니 더 많은 노력이 필요했었던 것 같다. 해당 문제와 관련해서는 프로젝트에서 아쉬움이 남는데 아래에 기록하기로 한다. 멘토링이 끝이 났다는게 정말 기쁘긴 하지만 나 자신한테 많이 아쉽고 한심하다고 생각하기도 한다... 멘토링을 신청하게 된 계기 내가 F-Lab을 수강하게 된 계기는 내가 Java개발자로 일을 하는데 코어 지식을 너무 모른다는 생각을 많이..

nGrinder의 경우 SVN을 활용해서 테스트케이스의 제작이 가능하다. 또한 nGrinder에서 SVN을 자체적으로 지원하고 있기 때문에 편하게 연동이 가능하다. 그래서 SVN을 실행하고자 하였으며, Intellij를 활용해서 소스코드를 제작해보고자 한다. 0. 링크 확인 최초에 nGrinder에서 Script를 들어오게되면 SVN에 링크가 표시가 된다. 1. SVN연결 Repository를 가져오고자 위와 같이 오류가 발생하였다. * 오류의 경우에는 Intellij의 경우 2018.03월부터 발생되는 오류로 Subversion command-line client를 별도 설치해 해결이 가능하다고 한다. 필자의 경우 mac m1 air를 사용하고 있기 떄문에 homebrew를 통해 설치를 진행하였다. I..

해당 기록은 서버의 ScaleUp의 기록입니다. 여러편으로의 작성이 될 수도 있고, 1편으로 종료될 수도 있는 글입니다. 1. 기존에 사용하던 개발서버는 Micro서버로 프리티어 서버였으며, 싱글코어 CPU + 1G의 메모리 였다. 최초에 사양을 변경하게 된 것은, 어플리케이션(NooBLoL)을 실행하는데 까지는 문제가 없지만 이후에 핀포인트를 설치 후 실행을 해보면서 Scale Up이 필요하다 생각하게 되었다. 핀포인트를 실행할때 Agent, Collector, Web 세개를 실행시켜야 하는데 세개를 모두 같은 서버에 두려고 하다보니까 CPU와 메모리가 모두 부족한 상황이 생겨버렸다. Collector와 Agent를 분리는 할 수 있었지만, 분리를 한다는 것은 추가적인 금액을 소요한다는 것이기 때문에 ..