사이드 프로젝트

사이드 프로젝트 Pinpoint 도입 후기

배경 주말이나 퇴근시간에 짬짬히 사이드 프로젝트를 진행하고 있었는데 문득 이 사이드 프로젝트가 공개되었을 때 장애에 대비하기 위해, 그리고 무엇보다 회사에 APM이 없어서 이를 적용해보고 싶다는 생각에 연습삼아 사이드 프로젝트에 핀포인트를 도입하였습니다. (정시 퇴근을 위한 눈물겨운 노력) 사이드 프로젝트 소개는 팀원의 블로그로 대체합니다 deveric.tistory.com/114 (나도 써야지..) 핀포인트 개념과 설치 방법은 추후 작성에 작성할 예정입니다. 핀포인트란? pinpoint-apm.github.io/pinpoint/index.html 네이버에서 만든 대규모 분산 시스템의 성능을 분석하고 문제를 진단, 처리하는 플랫폼입니다. 실시간으로 어플리케이션의 요청을 모니터링할 수 있으며, 이를 통해 ..

2021.04.03 게시됨

일상/기타

서버가 생겼다.

대학생 시절 해커톤이나, 과제등을 할 때 서버용으로 AWS 프리티어를 굉장히 많이, 다양하게 사용했었습니다. 하지만 프리티어 사양 이상의 것을 하려면 여러모로 불편함이 많았습니다. 특히 메모리가 많이 부족했네요 ㅋㅋ AWS에서 돈을 내고 사용해도 되긴 하지만 내친김에 아예 공부목적으로만 사용할 서버용 데스크탑을 구매하였습니다. [Linux swap space 추가] (눈물나는 스왑메모리로 EC2 연명하기) 근데... 리눅스 뭐깔아요? 현재 글을 쓰고 있는 시점보다 약간 앞선 시간대에서 CentOS 가 개발이 중단되고 CentOS Stream 으로 전환될 예정이라고 합니다. 이런 느낌이네요 기존 Fedora -> RHEL -> CentOS 이후Fedora -> CentOS Stream -> RHEL [링크..

2021.03.13 게시됨

개발/Spring

[입문] jOOQ에 대해 알아보자

필자는 JPA로 개발할때 QueryDSL-jpa를 활용한 Type-Safe 한 SQL 작성을 굉장히 선호합니다. 사람이 실수 할 수 있는 여지를 미연에 방지할 수 있기 때문입니다. 하지만 회사에서 JPA가 아닌 프로젝트를 맡게 되었고 이로인해 native sql 에서도 이런 type-safe한 쿼리를 작성할 수 없을까? 라는 물음으로 찾아보게 되었습니다. (아 mybatis 쓰기 싫어요 ㅜㅜ) 물론 사실 QueryDSL 도 querydsl-sql이라는 형태로 native SQL을 지원하지만 주변에서 jooq의 평이 좋아 직접 한번 입문 해보기로 하였습니다. 자세한 코드는 [여기] 서 확인할 수 있습니다. DB 스키마는 공식문서에서 제공하는 스키마를 살짝 각색하여 진행하였습니다. (링크의 src/main/..

2021.03.04 게시됨

개발/Spring

JPA로 Type-Safe한 CTE 작성하기

RDBMS에서 계층형 쿼리를 작성할때 Common Table Expression을 사용하여 쿼리를 작성 할 수 있습니다. 일반적인 SQL에서는 WITH [ Recursive ] 라는 구문으로 작성가능합니다. 해당 구문은 [ANSI 표준] 이기 때문에 MySQL이나, MariaDB, Oracle 등 대부분의 RDBMS에서 사용할 수 있습니다. 이번에는 해당 구문을 JPA에서 Native SQL을 사용하지 않고 추상화 레벨을 유지하며, QueryDSL과 함께 사용할 수 있도록 하면서 겪은 삽질을 기록하였습니다. 스포일러) "공식적"으로 JPA는 CTE를 지원하지 않습니다 본 글은 MariaDB 기준으로 작성하였습니다. 해당 코드는 [여기] 서 확인할 수 있습니다. CTE 란? Common Table Expr..

2021.02.21 게시됨

일상/회고

2020년 회고

이미 지나가버린 2020년이지만 그래도 기록으로 남기기 위해 생각나는 굵직한 이벤트들을 정리 해봤습니다. - 메인 이벤트 요약 1. 네이버 웹툰 인턴 - 2020.03 ~ 06 2. 대학교 졸업 - 2020.08 3. 이스트 소프트 입사 - 2020.11 ~ 1. 네이버 웹툰 인턴 2020년 1월, 졸업까지 한학기 밖에 남지 않았다는 위기감과 이대로내가 개발자가 될 수 있을까? 라는 의문 속에 뭐라도 해야겠다는 마음으로 당시 올라왔던 네이버 웹툰의 서버개발자 인턴 공고를 지원하게 되었습니다. 당시 SI에서 약 5개월 정도 인턴으로 실무를 겪은 것 외에는 이렇다할 경력이 없어서 연습이라도 하자는 마음으로 면접을 봤었는데.. 운이 좋게도 붙었었습니다. ㅋㅋ 이게 붙네... 당시 코로나 때문에 3개월간 재택과..

2021.01.08 게시됨

일상/기타

[ T 아카데미 ] - Jenkins를 활용한 CI/CD 파이프라인

취준하는 동안 지루하기도 해서 T아카데미에서 열린 Jenkins를 활용한 CI/CD 파이프 라인 강좌를 듣고 왔습니다. 강의는 2020.10.22 목 13:00 ~ 17:00까지 진행되었으며 젠킨스 실습을 주로 이루었습니다. 사실 여태까지 진행한 개인 프로젝트에서는 젠킨스를 대부분 shell로 작성했었는데, 이번에는 파이프라인을 사용하는 법을 배웠고, agent로 마스터 슬레이브 형태로 잡을 배치하는 법을 배웠습니다. 인턴이나 연구원 시절에는 남이 구축해놓은 파이프라인, 마스터 슬레이브를 사용했었는데 어느정도? 실제로 구축해보니 재밋었네요. 그리고 대부분 github의 웹훅 등을 이용해 구축하는데, 이번에는 SCM형태의 폴링으로 진행해보니 신선했습니다. 실습은 AWS기반 클라우드 위에서 진행되었습니다. ..

2020.10.22 게시됨