Latest --all
월간 헬스 일지 24년 3월 (F45 후기)
월간 헬스 일지 24년 3월 (F45 후기)
운동
2024.04.11 23:59
변한 것 2월 말에 운동에 대한 중요성을 다시 깨달아서 다짐을 다시 한 뒤로 열심히 해보았다. 그 결과 위처럼 빼곡히 운동으로 차인 나날들로 보냈다. 그리고 중요한 게 있다 !! F45를 시작했다. 1.5개월 동안 사람들도 안만나고 거의 60~70 시간씩 일을 하다가 우울감이 찾아왔는데... 마침 무료 이벤트를 한다고 해서 한 번 참여를 해봤는데 3일만에 멘탈이 아주 빠르게 회복됐다. 이때 정말 진지하게 생각했다. 현재 내 계좌 잔고와 이 회원권 가격을 생각했을때의 비용, 그리고 눈에 띄게 건강해진 내 정신력... 결국 나는 F45를 끊고 말았다. 지금은 아주 만족하면서 다니고 있다. 기록 규칙 이전과 다르게 볼륨 기록을 마지막 무게 포함 3개로 한다. (생각보다 오래 걸린다...) 등 날짜 항목 볼륨 ..
kotlin-jdsl 기여 일기
kotlin-jdsl 기여 일기
Java, Kotlin
2024.04.06 16:10
큰 건 아니지만, 난 지금까지 kotlin-jdsl에 약 3개 정도의 작은 PR을 반영한 적이 있다. 가장 염원한 것은 중위 연산, 연산자 오버로드였지만 아쉽게도 해당 논의건은 승인되지 않았다 .. ㅎ 이 글은 기여하면서 느끼고 배운 것들에 대해 작성했다. 느낀 것 코드 내부가 정말 이쁘다 아름답지 않은가? 얼마 전에 조사한 JPA 내부구조와 비교하면 정말 아름답다.. (미안하다 하이버네이트) 처음보는 데도 어떤 클래스가 무슨 역할을 하는지 지례 짐작하는 것이 어렵지 않았다. 무엇보다 OCP를 바로 떠올릴만큼 확장에 유연했다. 아, 그리고 Lint라던가 Commit 규약이라던가 하나라도 안 맞으면 PR을 못올린다 ㅠ 잘 체크해볼 것! 정성이 담긴 리뷰 우테코 이후 이런 리뷰는 오랜만인 것 같았다. 거기선..
Quiz! 다음 코드에서 JPA가 실행하는 Query는?
Quiz! 다음 코드에서 JPA가 실행하는 Query는?
Spring Boot, JPA
2024.04.04 16:48
운전 면허를 취득하고 알게된 사실은, 되려 경험이 많은 운전자일 수록 도로 법규나 운전 예절에 대해 망각하는 경우가 종종 있다는 것이었다. 최근 나와 JPA의 관계가 그렇게 되었다는 생각이 문득 들었다. 내 JPA에 대한 실무적인 이해도는 어느 정도일까? JPA나 DB를 개발하는 코어 개발자가 아닌 이상 실무에서 사용하는 기술의 이해도와 응용 능력이 보다 더 중요하지 않을까? 대다수의 개발자는 프레임워크나 라이브러리보다는 현실에 존재하는 특정 도메인에 대해 개발하거나 유지보수를 한다. 그래서 이 글을 보는 여러분들도 필자와 같이 JPA의 동작에 대해 다시 한 번 되짚어 보면 좋을 것이라는 생각이 든다. 퀴즈 자, 아래와 같은 코드가 있다고 하자. 그리고 임의의 컨트롤러가 method1을 호출한다고 가정한..
DDD 세미나에서 느낀 것들
DDD 세미나에서 느낀 것들
DDD, Hexagonal ..
2024.03.31 21:09
[주의] 이 글은 Common Sense의 범주에 벗어난 내용들이 일부 있을 수 있음을 알립니다. 그렇게 생각한 항목에 대해선🎃이모지로 표시하겠습니다. 3월에 바쁜 일이 너무 많이 있어서 밀린 포스팅이 한 가득이지만, 우선 DDD 세미나가 가장 최근에 있었기 때문에 여운이 아직 남아있을 떄 올리는 것이 좋다고 생각했다. 나는 DDD를 좋아한다. 그러나 아쉽게도 좋아한 세월에 비해 이해의 정도는 낮은 것 같았다. 공유 커널과 안티 코렙션 계층 등을 이용해서 무언가를 설계해 본적은 없기 때문이다. 이건 내가 코드 레벨에서의 이해도가 낮았기 때문에 도전 조차 못했던 것으로 느껴졌다. 그래서 그런지 평상시 좋아하는 모임에 DDD 강의가 열린다는 소식을 들었을 때는 무척 반가웠다. 발표한 사람은 평상시 모각코에서..
2024. 2~3월의 작은 기록
2024. 2~3월의 작은 기록
기타
2024.03.29 17:25
열심히 달린 것 같다. 하지만, 잘 못 쉬면서 달린 것 같다. 주변 사람들은 걱정을 했고 나는 그저 달리기에 바빴다. 그제서야 알았다. 아 내가 조금씩 나사가 풀리다 못해, 몇개는 잃어버렸다는 사실을.. 블로그 포스팅과 토이 프로젝트를 잠자는 시간을 거의 제외하고 하기도 했고 잠시 프리랜서 일을 할 때는 주 7일 동안 한 달이 넘게 일하기도 하였다. 이렇게 해서 생긴 내 변화는 육체적으로 근력 약화로 인해 허리 통증, 목 통증이 생겼고 정신적으로는 많이 예민해진 상태였다. 스트레스에 대한 내성 약화. 3월 중순 이후 여유가 생겨서 다시 운동을 시작했고, 못 만난 지인들을 만나기 시작했다. 다행히 약 열흘에 걸쳐서 내 멘탈과 건강은 빠르게 회복했다. 이때 내가한 것은 아래와 같다. - 코딩하는 시간 줄이기..
월간 헬스 일지 24년 2월
월간 헬스 일지 24년 2월
운동
2024.03.11 23:44
느낀점과 반성한 점 몸담은 프로젝트 일이 상당히 바빠지면서 운동을 하지 못한 날들이 많아졌다... 그래서 기록을 지금한다 ㅠ 덩달아서 컨디션도 안좋아진 것 같다.. 3월 초-중순부터 다시 운동을 하면서 정신력도 강화되고 컨디션도 좋아지기 시작했다 운동은 시간이 날때 하는게 아니라 무조건 내서 해야한다는 것을 다시 한 번 깨달았다 (특히 유산소) 규칙 볼륨은 마지막 4세트의 기록만을 남긴다 (변경 사항) 세트수는 되도록 4세트 이상을 하며, 최소 3세트 이상을 가져간다 (가벼운 무게의 세트수가 많으면 쉬는 시간도 길어지고 루즈해지는 것을 느꼈다... 시간이란 넉넉한 자원이 아니며 항상 부족하다) 등 날짜 항목 볼륨 (부분 기록) 비고 2.1 목 시티드 케이블 로우 20kg * 10set 32kg * 10s..
Latest --picked
[땅굴 조사] JPA 트랜잭션이 수행되기까지
[땅굴 조사] JPA 트랜잭션이 수행되기까지
Spring Boot, JPA
2024.02.01 14:03
조사 계기, 트랜잭션 발원지에 대한 궁금증 @EventListener / @TransactionalEventListener (+ @Async 유무)에서 트랜잭션의 동작에 대해 알아보고 있었다 그러가다 아래 트랜잭션 로그의 발원지가 궁금해졌다 로그를 따라가다 보니 친숙한 얼굴들이 보였다 그만 조금만 보고 나온다는게, 끝을 봐보자는 마음으로 살펴보게 되었다 사전 지식 나는 이미 어느 정도 코드의 내막을 알았지만 처음 본 사람은 어려울테니, 알게된 내용을 미리 정리했다 이걸 보고 들어가면 코드를 읽어나가기 좀 더 수월할 것이다! TransactionAspectSupport (org.springframework.transaction.interceptor) 스프링의 AOP 기능으로 트랜잭션을 처리해주는 역할 실제..
[k8s] 쿠버로 무중단 배포 3종 모두 해보자 (argo없는 Blue Green)
[k8s] 쿠버로 무중단 배포 3종 모두 해보자 (argo없는 Blue Green)
Kubernetes, Docker
2024.01.30 17:59
이 글은 아주 짧습니다 :) 실습 스크립트 및 코드는 이곳에 있습니다. 현재 블루 그린의 경우 무중단 배포가 되지 않습니다! 편의상 쿠버네티스를 k8s 혹은 쿠버라고 표시하겠습니다 :) 눈물 젖은 젠킨스와의 추억 젠킨스에 셸 스크립트 작성하며 눈물 흘리며 지새웠던 지난 밤들의 추억... 쿠버를 사용하면 그 고통의 추억들을 보상받을 수 있다 아래는 내가 작성했던 젠킨스의 파이프라인이다 스케줄링 기능이 본 WAS 2대 중 한 대로 잡혀있는 구조라서 저렇게 다소 복잡하게 짜여진 것도 한 몫을 한다 일반적인 WAS 구조를 가정해서 조금 더 간소화하면 아래와 같다 하지만 쿠버네티스의 경우 아래와 같이 한 단계만이 존재한다 정확히는 yml파일에 배포할 container image를 넣고 아래와 같은 명령어를 기술하..
헥사고날 퐁당 후기
헥사고날 퐁당 후기
DDD, Hexagonal ..
2024.01.29 12:58
샘플 코드는 이곳에 있습니다 (Kotlin + Spring + JPA) 인터넷의 많은 문서들을 읽었으나 클린 아키텍처 등 고전 명서를 정독하지 않고 적은 글입니다 :) 감안 부탁드립니다.. ^^ 마침내 1년 가까이 한 번은 작성후 알아봐야지… 하고 생각만 했던 것을 작성해서 올렸다 (사실 구글링을 조금만 해보면 방대한 예시 코드들이 나온다… 어렵지 않게 공부할 수 있었다) 고대하던 헥사고날 예시코들 작성하면서 느낀 점을 기술한다… 요약 여러 형태의 설명을 해보자면 버전 1 DIP를 이용해서 비즈니스 로직을 클린하게/순수하게 두었음 버전 2 각 레이어간 인터페이스를 두어서 변경에 유연하게 만듬 구조 나처럼 레이어 아키텍처를 알고 있는 사람은 그걸 리펙터링한다고 생각해도 좋을 것 같다 기존의 레이어드 아키텍..
[배포 기록] 도커 역사 및 빠른 재정리 (feat. 삽질 ..)
[배포 기록] 도커 역사 및 빠른 재정리 (feat. 삽질 ..)
Kubernetes, Docker
2024.01.20 19:37
이 글은 도커를 어느 정도 알고 있다는 가정하에 작성한 글입니다 :/ 혹시나 도커를 잘 모르시는 분은 생활코딩의 도커를 추천합니다. 오랜만에 도커를 사용하다 보니 자잘한 실수도 많이 하고 (특히 경로라던가 경로라던가...) 복습 겸 정리를 하는 것이 좋다고 생각해서 이렇게 정리를 하게 되었다 알잖아요, 도커는 신기술이 아니란 걸... 요새 쭈니어분들이 아주 똑똑하단 것을 나는 안다. 아마 이 글을 보는 당신도 그렇겠지... ㅠㅠ 지나가도 좋다! 나도 알고 있던걸 다시 한번 정리해보는 거니깐... ㅎ.ㅎ 어느 기술이나 다 그렇겠지만 도커는 유독 신기술이 아니다란 꼬리표가 더 잘 붙어다닌다 리눅스에 가상화 관련 기술인 namespace, cgroups, chroot 가 이미 있었다 그리고 저 위에 LinuX..
VMware 설치 과정 및 필요한 앱들 기록
VMware 설치 과정 및 필요한 앱들 기록
Linux, Shell
2024.01.19 09:54
내 랩탑에 설치한 VMware인데 이쁘지 않은가...? 근데 저 이쁜게 종종 쓰레기가 될 떄가 있다. 먹통 현상이 심하게 몇 번 일어났는데, 결국 한 번 더 설치하게 됐다 이미지 스냅샷으로 빼는 방법도 있지만 은근히 이 반복적인 행위가 환경에 적응하는데 도움을 주어서, 다음에도 내가 작성한 글을 통해서 빠르게 적용해보고자 한다 먹통 현상 주의… 앞에서도 얘기했으나 처음엔 안그런데 설치되는 프로그램이 많아지면서 종종 게스트 OS가 먹통이 되는 현상이 있다… 이때, 먹통된 우분투에 마우스가 갇혀서 못나올 때가 있다 (너 납치 당한거야) 이때, “Ctrl + Alt”를 누르면 마우스를 구출할 수 있다 Guest OS CPU, RAM 세팅 WSL2 자원 누수 이슈와 같은 현상이 발생하지 않아서 엄격하게 제한을 ..
Virtual Tech
[k8s] 쿠버로 백엔드 환경 구축하기
[k8s] 쿠버로 백엔드 환경 구축하기
Kubernetes, Docker
2024.02.19 16:59
이 글을 작성한 시점의 저는 아직 k8s에 대해 깊게 알지 못합니다, Backend 부분에 비해 틀린점이 있을 수 있습니다 또, 위 그림은 실제 진행한 설계의 일부분입니다. 특히 StatefulSet과 DB의 관계가 적절한지 아직 확실히 검증되지 않았습니다 (구상하다보니 애틋해져서 넣었습니다) 이 글을 보고 클론 코딩을 하며 배우겠다는 느낌보다는, (아마 그렇게 할 수 없을거에요...) 이런 기능이 있고 어떤 식으로 구성되어있구나란 것을 개략적으로 같이 느끼셨으면 좋겠습니다 :) k8s는 과제를 준비하면서 급하게 공부하게 되었는데, 아주 좋은 기술이라 느껴졌다 (구글이 그 동안의 노하우를 담아서 만들었다는게 잘 느껴졌다) 쿠버를 사용하면 인프라 구성도를 코드로 쉽게 관리할 수 있다는 장점이 있다 또 코드..
[k8s] 쿠버로 무중단 배포 3종 모두 해보자 (argo없는 Blue Green)
[k8s] 쿠버로 무중단 배포 3종 모두 해보자 (argo없는 Blue Green)
Kubernetes, Docker
2024.01.30 17:59
이 글은 아주 짧습니다 :) 실습 스크립트 및 코드는 이곳에 있습니다. 현재 블루 그린의 경우 무중단 배포가 되지 않습니다! 편의상 쿠버네티스를 k8s 혹은 쿠버라고 표시하겠습니다 :) 눈물 젖은 젠킨스와의 추억 젠킨스에 셸 스크립트 작성하며 눈물 흘리며 지새웠던 지난 밤들의 추억... 쿠버를 사용하면 그 고통의 추억들을 보상받을 수 있다 아래는 내가 작성했던 젠킨스의 파이프라인이다 스케줄링 기능이 본 WAS 2대 중 한 대로 잡혀있는 구조라서 저렇게 다소 복잡하게 짜여진 것도 한 몫을 한다 일반적인 WAS 구조를 가정해서 조금 더 간소화하면 아래와 같다 하지만 쿠버네티스의 경우 아래와 같이 한 단계만이 존재한다 정확히는 yml파일에 배포할 container image를 넣고 아래와 같은 명령어를 기술하..
[배포 기록] 도커 역사 및 빠른 재정리 (feat. 삽질 ..)
[배포 기록] 도커 역사 및 빠른 재정리 (feat. 삽질 ..)
Kubernetes, Docker
2024.01.20 19:37
이 글은 도커를 어느 정도 알고 있다는 가정하에 작성한 글입니다 :/ 혹시나 도커를 잘 모르시는 분은 생활코딩의 도커를 추천합니다. 오랜만에 도커를 사용하다 보니 자잘한 실수도 많이 하고 (특히 경로라던가 경로라던가...) 복습 겸 정리를 하는 것이 좋다고 생각해서 이렇게 정리를 하게 되었다 알잖아요, 도커는 신기술이 아니란 걸... 요새 쭈니어분들이 아주 똑똑하단 것을 나는 안다. 아마 이 글을 보는 당신도 그렇겠지... ㅠㅠ 지나가도 좋다! 나도 알고 있던걸 다시 한번 정리해보는 거니깐... ㅎ.ㅎ 어느 기술이나 다 그렇겠지만 도커는 유독 신기술이 아니다란 꼬리표가 더 잘 붙어다닌다 리눅스에 가상화 관련 기술인 namespace, cgroups, chroot 가 이미 있었다 그리고 저 위에 LinuX..
따끈따끈 쿠버네티스 기초 개념 요약
따끈따끈 쿠버네티스 기초 개념 요약
Kubernetes, Docker
2024.01.17 03:04
컨테이너 기술 발달 컨테이너 기술이 발전함에 따라 현재는 많은 기업들이 쿠버네티스(이하 쿠버)를 많이 사용하고 있다 리눅스의 자원 격리 기술을 기반으로 컨테이너 기술이 생기고, 여기서 사람들이 많이 아는 현재의 도커가 모습을 드러냈다 시간이 지나면서 사람들은 더 많은 컨테이너를 관리해야 했고, MSA가 유행하는 현재는 쿠버네티스를 사용하기 정말 좋은 시대가 된 것 같다 쿠버네티스 종류 현재 사용해본 것만 기술하면 kubeadm과 minikube가 있다 kubeadm의 경우 멀티 노드 구성 및 다양한 기능을 사용할 수 있지만 설치 방법이 어렵다는 점이 있다 minikube는 반대로 kubeadm와 달리 초기 셋업은 쉽지만 kubeadm 만큼 기능이 다양하지 않다 제공되는 기능 컨테이너 자체 관리에 탁월하다..
윈도우에서 쿠버네티스 긴급 사용 후기
윈도우에서 쿠버네티스 긴급 사용 후기
Kubernetes, Docker
2024.01.16 18:56
15년에 클라우드 재단에서 쿠버네티스란 기술을 발표했다고 한다 (아는 척) 그리고 그 유행이 어느덧 우리나라에도 전파되어 많은 기업들이 적용했다고 한다 나는 최근에 이 기술을 적용해야 할 기회가 생겨서 긴급하게 공부를 했다 후기를 먼저 말하면, 정말 신세계였다 내가 젠킨스로 힘들게 구현한 롤링 배포 뿐만 아니라 블루/그린, 카나리까지 지원을 하고 수평/수직 오토 스케일링, 자동 복구, 전 버전 롤 백도 지원했다 예전에 짰었던 젠킨스 파이프라인이다... 복잡하지 않은가? 우리의 경우 WAS가 마스터/슬레이브인데 스케줄러가 마스터에만 있어서 조금 더 복잡한 파이프라인이 나왔다 그리고 먼저 배포되는 WAS에 문제가 생기면, 메인 파이프라인이 중단되고 롤백 파이프라인이 작동해서 전 버전으로 자동 롤백된다 근데 ..
JVM MSA Stack
Spring Cloud Gateway 테스트 코드와 리펙터링 (Kotlin-DSL)
Spring Cloud Gateway 테스트 코드와 리펙터링 (Kotlin-DSL)
Spring Cloud, MSA
2024.01.14 22:36
게이트웨이 코드를 작성하다 보면, 이게 제대로 작동은 하는 것인가? 하고 의문이 들때가 있다 이러한 의문은 개인 프로젝트를 진행할 때뿐만 아니라 회사에서 동료들과 일할 때도 자주 떠올랐다 그리고, 비슷한 URI와 Route들의 순서 배열에 따라 몇몇 Route들이 동작하지 않기도 했다 길어진 Route 명세를 파악하기 위해 모니터를 위 아래로 훑는 시간도 많이 들고, 이 과정에서 실수할 소지가 많다는 것을 느꼈다 그래서 시간을 내서 리펙터링을 했고 성공적이었다 아래는 그때의 노하우를 좀 더 가다듬은 방식으로 진행한 것이다 문제의 YAML 명세 spring: cloud: gateway: routes: - id: ITEM-SERVICE uri: lb://ITEM-SERVICE predicates: - Pat..
Eureka 시나리오별 등록 과정 + 빠른 배포하기
Eureka 시나리오별 등록 과정 + 빠른 배포하기
Spring Cloud, MSA
2023.12.18 03:05
종종 배포할때 느린 마이크로서비스 등록 과정 때문에 빠르게 확인할 수 없어서 답답했다 단독 모놀리스면 바로 확인이 가능했지만 마이크로서비스는 정상 기동 후 1분 정도를 기다려야 503 Service Available이 없어진 후 확인이 가능했다 그러나 이건 잘못됐다. 등록은 사실 바로 된 것이다. 문제는 다른 곳에 있었다. 이걸 위해서는 Spring Cloud Nexflix이자 Service Discovery인 Eureka에 대해 알아야 한다 Eureka는 Service Discovery의 Server로, Netflix가 MSA에 관련해서 만든 것 중 하나이다 (Gateway 등) 그건 중요하지 않다 (응?) 등록 과정 Eureka에는 Server 와 Client가 있다 client는 자신의 IP, Po..
[Gradle Script] 복잡한 QueryDsl 설정 모아서 불러오기
[Gradle Script] 복잡한 QueryDsl 설정 모아서 불러오기
Build (Gradle, Maven)
2023.12.14 15:23
코드는 이곳에 :) https://github.com/progress0407/jvm-tools-2.7.x/tree/main/querydsl-sample 코틀린을 도입하기로 결정했는데 자바 코드를 유지할 부분(공통)과 코틀린 코드를 분리할 일이 생겼다 그때 사용한 방법이다 참고로 나의 경우 자바를 사용하는 모듈, 코틀린 사용 모듈을 모두 나누었다 (즉 한 모듈에 자바, 코틀린이 있는 경우는 없었다) 참고로 코틀린, 롬복, QueryDsl이 모두 있는 상황에서 정상 동작하게 만드는 것은 너무나도 힘들다... 여러분은 굳이 그렇게 하지 말고 나처럼 모듈별로 개별 적용하면 그게 차라리 마음의 건강에 좋을 것이다... Gradle 스크립트 우선 아래와 같은 Java, Kotlin 별 QueryDSL 적용을 위한 ..
[생각 정리] 내가 경험했던 뼈아픈 Gradle 멀티모듈 설계
[생각 정리] 내가 경험했던 뼈아픈 Gradle 멀티모듈 설계
Build (Gradle, Maven)
2023.11.28 02:12
주의 이 글은 매우 김... YAGNI 아직 필요하지 않은 것에 대해 섣불리 구현을 해서는 아니된다는 뜻이다 난 이 원칙을... 멀티모듈 설계를 하면서 뼈저리 느낀 것 같다... 멀티 모듈이 가져다 주는 이점이 무엇인가? 이에 대해 생각하지 않고 먼저 모듈화하면 큰 이득 없이 시스템의 복잡도가 가파르게 올라가는 것을 느꼈다... 개인적으로... 아키텍처의 철학을 투영하기 위한 모듈화는 좋은 예시는 아니라고 생각해요 위 얘기는 내가 곧잘 보는 개발자가 안 좋은 모듈링에 대해 언급한 내용이다 좋은 모듈링이란 제약이 반드시 필요한 곳에 거는 것... 이라고 하였다 자세히는 언급할 수 없으나... 내가 재직하던 회사 중 한 곳의 어떤 프로젝트가 Layer 기준으로 모듈화가 되어 있었다 (아래 예시는 정확하지 않..
Proud
Jenkins Pipeline in Wooteco 22
Jenkins Pipeline in Wooteco 22
Jenkins, Github Action
2024.02.24 23:49
무중단 배포와 로드 밸런스 Pipeline 현재 구성된 아키텍쳐 기준으로 작성하였습니다. 여기서 현재란 우아한테크코스 교육 때를 뜻합니다 :) … 해당 글은 22년 늦가을에 작성된 오래된 글을 재구성하여 작성되었습니다. 두 가지 관점에서 무중단 배포를 기획했습니다. 하나는 배포 과정 중에는 사용자의 요청이 중단되지 않아야 한다는 것. (무중단) 다른 하나는 배포 후에 두 WAS 모두 사용자 요청을 받을 수 있어야 한다는 것입니다 (부하 분산) 아래 파이프라인은 복잡하게 보이나 결국 롤링 배포를 하는 것일 뿐입니다 (단, 현재 아키텍처 구조상 스케줄러 역할을 교체하는 과정이 있어서 보다 더 복잡하게 되었습니다) 저때 실제로 배포가 이루어지는 곳, 즉 WAS의 재기동이 일어나는 곳은 아래와 같이 세 군데입니..
엑셀 VBA 자동화 기록
엑셀 VBA 자동화 기록
기타 (BE)
2023.12.20 12:46
이 글은 이 전 글의 내용들을 토대로 재구성되었습니다 https://blog.naver.com/progress0407/222068926986 https://blog.naver.com/progress0407/222074132611 완성본 만들게 된 계기 당시 SI 철수 이후 부장님, 차장님, 사원님 등 본인을 포함한 5~6명이 작성해야할 엑셀 시트가 있었다 이전 동일 작업하셨던 차장님 말씀으로는 이틀 정도는 부지런히 작업해야 끝낼 수 있다고 하셨다 그 업무가 주어질 당시, 다른 팀원들은 다른 태스크가 있었고 신입이었던 내가 가장 먼저 하게 되었다 (중견 이상 기업의 신입은 입사 초기에 일이 없는 경우가 많았다) 내용은 간단했던 걸로 기억한다 각 테이블과 관련된 쿼리의 갯수를 고려해서 기입하면 되는 것이다 ..
암달의 법칙을 증명해보자
암달의 법칙을 증명해보자
기타
2023.07.09 01:19
서버 개발을 하다 보면 암달의 법칙에 대해 들을 때가 있다 서버 성능과 관련하여 암달의 법칙이란 것이 있다 이 법칙은 일부의 성능 개선이 전체 개선이 어느 정도 되는 지를 정량적으로 알 수 있는 공식을 제공한다 예를 들어, 특정 API의 성능 개선을 하는데, WAS의 비즈니스 로직을 30%개선 하더라도 WAS가 전체 성능의 10%밖에 차지 안 한다면 전체 시스템의 개선 정도는 2.36% 정도만 되는 것이다 직관적인 해석 예를들어 일(Work) Wa, Wb가 있다고 가정해 보자 일 전체 (Wa +Wb)를 수행하는 데 60분이 걸린다고 하자 그리고 Wa를 수행하는데 40분, Wb를 수행하는데 20분이라고 가정하자 (Wa는 전체의 2/3 이다) Wa에 대해 성능 개선을 해서 40분에서 20분으로 줄였다고 한다..
22 인프콘 참여 후기 (깃허브 블로그)
22 인프콘 참여 후기 (깃허브 블로그)
Conference
2023.08.22 01:06
현재 이 글의 원본은 https://progress0407.github.io/book/2022/08/26/infcorn-2022.html 이곳에 있습니다 깃허브 블로그에서 가져왔음! [인프콘] 참여 후기 :) 연로그를 통해서 인프콘이 열린다는 것을 알게 되었다… 참가 신청을 넣었지만 인프콘에 당첨이 되지 않았다 옆에 우테코 크루인 연로그와 포키가 당첨되어 인프콘에 가는 것을 마냥 기쁜 마음으로 축하할 수 없었다 약 1-2년 전 부터 꾸준히 함께 해 온 인프런에 당첨이 되지 않았다니… 당첨자를 정말 공정하게 뽑는 것일까… 레벨 3 이후 방학 기간 동안 탈진한 마라톤 선수가 되어 있었다 지인을 만나는 시간 이외엔 잠을 자거나 침대에서 유튜브를 보는 날의 연속이었다 토요일에서 차차주 월요일까지 10일간 방학이..
러닝 5km 달성~!! ><
러닝 5km 달성~!! ><
운동
2023.09.10 23:33
오늘 처음으로 러닝 5km를 달성했다 ㅠㅠ 넘나 감동적인 것... 솔직히 3km 넘었을 때는 정신력으로 뛴 것 같았다... 속으로 비명지르면서 뛴 것 같기도 ... ㅎㅎ 그래도 뿌듯하다 저 정도의 페이스로 뛰어야 5km를 달성할 수 있었던 것이군?! 하고 ㅎㅎ 아마 처음 러닝을 했을 때는 3km도 가장 뒤에 뛰면서 뒤쳐졌던 기억이 있다... 사람들도 나를 보고 "성우 많이 성장했네~ㅋㅋ" 하는 걸 보면 ㅋㅋㅋ 후,,, 이렇게 헬스인이 되어가는걸까? 이러다 평일엔 개발, 주말에는 헬스 트레이너가 되다가... GPT에게 개발세상이 먹히면 이직을 하는.. 그런 날이 오면 어쩌면 소중한 기회가 될지도 ㅋㅋㅋ
MySQL Index
MySQL Index
Database
2023.07.19 23:28
서두 미루고 미루어왔던 MySQL Index를 정리했다 초기에는 우테코 테코톡 영상을 많이 참고했으며, 추후 지식이 쌓이면서 뇌근육이 강해져갔는데, 어느 순간부터는 SQL 레벨업, Real MySQL 책 참고를 많이 했다 잘 알려지지 않은 책은 아닌 것 같은데, SQL 레벨업 책이 정말 괜찮다. 어떤 부분에 있어서는 Real MySQL보다도 좋은 것 같다. Real MySQL이 다루는 난이도나 내용은 더 많을 지라도, SQL 레벨업은 꽤 깊이 있는 내용을 직관적이면서 쉽게 설명했다 (외국 서적인데 번역도 매끄럽다 !!, 쪽수도 적다) 서두가 길었다 우선 MySQL은 다른 DB와 다른게 몇가지 있다 - Repeatable Read 격리 수준에서도 Phantom Read가 없다 (MVCC를 이용했기 때문인 ..
image