일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- ORM
- Di
- 해시맵
- hibernate
- 뷰
- java
- programmers
- 코딩테스트연습
- Spring
- JPA
- builder-pattern
- k8s
- SpringMVC
- DevOps
- 자바
- Kubernetes
- superBuilder
- CI
- 프로그래머스
- dabase
- docker
- Vue
- 알고리즘
- CI/CD
- map
- Oracle
- IntelliJ
- vuejs
- CKA
- cd
- Today
- Total
목록전체 글 (110)
문홍의 공부장
1. 어쩌다보니 Devops: 진짜 어쩌다보니... 이렇게까지..... DevOps 역할도 궁금하다고 생각했던 지난 날의 내가 미쳤지 생각하며... 하면 할수록 나는 엔지니어보다는 개발자가 맞는 것 같다는 생각이 들고.... 그래도 덕분에 정말 다양한 에러를... 만나면서 새로운 영역의 트러블슈팅을 겪고, 또 기록하고 있다. 꼬박꼬박 제대로 기록해 놓으면 미래의 내가 감사해 할 날이 오겠지... 덕분에 loki, grafana, prometheus 등 모니터링 오픈소스에 대해서도 공부하고 좋은 기회였다. 2. AWS X GIT 멘토링 프로그램 5주간의 짧고도 짧은 멘토링 프로그램이 끝났다. 시작할 때에도 정말 짧은 기간이라고 생각했는데, 정말 가는 시간을 붙잡고 싶을 만큼 시간이 짧게 느껴졌고, 그만큼 ..
## 1. 어쩌다보니 데브옵스 그... 백엔드 개발자로서 데브옵스에 관심이 있기는 했는데 갑자기 이렇게까지 실무에 깊게 들어오게 될 줄은 몰랐구요..? 여하튼 CI/CD 파이프라인 구축 과제를 진행 중이다. 리서치 할 겸, 개인적으로 DockerHub + GitHub Actions + ArgoCD 를 이용하여 파이프라인을 구축하였는데, 최종적으로 내부 과제에는 Harbor + Jenkins + ArgoCD 를 이용하는 것으로 결정되었다. 하루가 다르게 새로운 이슈로 맨땅에 헤딩중.. 머리 다 까지겟어요 이러다가 ㅠ 뭐.. 덕분에 어렴풋한 개념만 알고 있던 SSL 에 대해 제대로 알게 되는 계기가 되기도 하였고, 기초 수준의 practice 만 진행했던 Kubernetes 도 좀 더 자세히 알게 되지.. ..
회고가 밀렸군.. 허허.. 기억을 더듬어 적어보는 7월 회고. ## 1. 프로젝트 종료 프로젝트가 끝났다. 아니 정확하게 표현하자면 프로젝트가 접혔다. 개발도 다했는데.. QA 도 거의 다 했는데.. 진짜 몇 걸음 안 남았는데.. 회사에서 서비스의 상품성 여부에 대하여 재논의가 들어가며 결국 우리의 프로젝트는 릴리즈를 하지 못한 채 접히고 말았다. 나름 애정(애증?)을 가지고 진행했고, 욕심 낸 부분이 많은만큼 고민도 많이 했고 해결해나가는 과정도 의미가 있었다고 생각했는데, 이렇게 빛을 보지 못하고 끝나버리니 너무 아쉬웠다. 프로젝트 회고를 진행하면서도 아쉬웠던 점도 많이 이야기 했지만, 좋았던 점에 대하여도 여러 이야기를 나눴다. 부분적으로 시스템 설계와 DB 설계를 진행했다는 점이 이번 프로젝트에서..
회원 서비스를 개발하면서, 회원을 초대하여 가입시키는 프로세스를 진행하였다. 초대 메일 발송 시에 회원 가입 링크를 보내, 유저가 링크를 클릭하여 나머지 프로세스를 진행할 수 있도록 하는 것이었다. 모든 프로세스가 완료 되어야만 회원 테이블에 저장되도록 구조를 잡았는데, 그렇기 때문에 2가지 문제가 발생했다. 초대할 회원 정보를 모두 메일 링크에 포함하게 되면, 링크가 길어질 뿐 아니라 중요 정보들이 모두 노출되게 된다. 메일 발송 내용을 DB 에 저장하고 저장한 시퀀스를 메일 링크에 포함하게 되면, 시퀀스를 통해 메일 발송 순서를 추정할 수 있게 된다. 위 두 가지 문제점을 해결하기 위해, 메일 발송 시퀀스를 암호화 한 shorten URL 을 생성하여 메일 링크가 길어지는 문제점과, 시퀀스 번호가 그..
헉... 벌써 6월 회고라니 1년이 정말로 절반이 지나갔단 말인가 ## 1. WWCS 하프타임 다녀오다 [함수형 패러다임 - 메서드를 활용하여 비즈니스 로직의 예외 처리까지] 세션이 가장 인상깊었다. 이번 행사에서 가장 인커리지가 되었던 것은... 마이크로소프트 한국 본사의.. 뷰... 이런 공간에서 일하는 건 어떤 기분일까? 정말 멋지더라. 나도 그렇게 하고 싶다. ## 2. 같아요 안쓰기 운동 ~같아요. 라는 말투가 안좋다는 건 알고 있고, 그래서 의식적으로 안쓰려고 노력하는 편인데 회사의 거의 모든 팀원이 같아요 체를 쓰고 있어서 나도 자꾸 쓰게 된다. 같아요. 보다는 ~라고 생각한다. ~로 파악하였다. 등등 좀 더 확실한 어투를 사용하자..!! ## 3. 컨퍼런스 다녀오다 참가 자격으로 컨퍼런스에..
금융 도메인이나 정산 시스템을 개발할 때에는, 무엇보다 가장 중요한 것이 숫자의 정합성이다. 돈에 가장 민감한 도메인이기에, 1원 단위의 오차로 인한 개발 건 수정이 잦게 일어났던 경험이 있다. 비용 관련 프로그램을 개발하면서 처음 마주한 것이 BigDecimal 이라는 클래스였다. 자바는 IEEE 754 부동 소수점 방식을 사용하여, 정확한 실수를 저장하지 않고 근사치 값을 저장한다. 때문에 float, double 은 소수점의 정밀도가 정확하지 않아 오차가 발생하게 된다. Type 범위 float 1.4E-45 ~ 3.4028235E38 double 4.9E~324 ~ 1.7976931348623157E308 이과 달리, BigDecimal 은 부동 소수점 방식이 아닌, 정수를 이용해 실수를 표현한다..
본 글은 atlassian 의 Git Tutorials - Merging vs. Rebasing 을 번역한 글임을 밝힙니다. git rebase 명령어는 초보자가 멀리해야할 마법의 Git hocus pocus 라는 명성이 있지만, 주의하여 잘 사용한다면 개발 팀의 삶을 훨씬 더 쉽게 만들 수 있다. 이 글에서는, git rebase 와 git merge 명령을 비교하고, rebase 를 전형적인 Git workflow 에서 통합할 수 있는 모든 잠재적인 기회를 알아보도록 하겠다. 개념 가장 먼저 이해해야 하는 것은, git rebase 와 git merge 는 같은 문제를 해결한다는 것이다. 이 두 명령어는, 하나의 브랜치에서 다른 브랜치로부터의 변경 내용을 통합하기 위해 설계되었다. 하지만, 이 둘은 ..
프로젝트에서 커스텀 헤더를 사용하여야 하는 건이 있어, API 호출 시 커스텀 헤더 값을 넣어 요청을 보내는 기능을 개발하였다. 커스텀 등록 헤더에 'X-' 를 prefix 로 붙이는 관례가 폐기된 지 오래라 하여, 'X-' 를 붙이지 않고 커스텀 헤더를 만들었다. 커스텀 등록 헤더는 'X-'를 앞에 붙여 추가될 수 있지만, 이 관례는 RFC 6648에서 비표준 필드가 표준이 되었을때 불편함을 유발하는 이유로 2012년 6월에 폐기되었습니다. 다른것들은 IANA 레지스트리에 나열되어 있으며, 원본 컨텐츠는 RFC 4229에서 정의되었습니다. IANA는 또한 제안된 새로운 메시지 헤더의 레지스트리도 관리합니다. Custom proprietary headers have historically been use..