Skip to content

juneyr.dev

wiki 위키

DevOps

Kubectl 명령어

기본 명령어 apply: 적용합니다. get: 리소스를 확인합니다. describe: 리소스 상세 상태보기 get보다 상세하게 delete : 리소스 제거 logs : 로그 조회 exec : 컨테이너에 명령어 전달. config…


Term, Spring

Inversion Of control

제어의 역전 Spring 을 처음에 배울 때 마주하는 개념이 IoC(Inversion Of Control) 혹은 DI(Dependency Injection…


누구든지 하는 리액트: 초심자를 위한 react 핵심 강좌 - 강의 기록

webpack 파일들을 일일히 불러와서 html 로 가져오는게 아니라 한번에 할 수 있게 해주는 도구. 이 작업이 번들링 e.g) 이 과정에서 이미지 압축하고 특정 경로에 넣기. e.g.…


2024년의 책

1월의 책 (…


2023년의 책

(1) 오늘 또 일을 미루고 말았다 (1/2…


DevOps

mac brew nginx 해도 안뜰때

conf는 /opt/homebrew/etc/nginx 하위에 있다. nginx 시작 후 nginx 가 코빼기도 안보임 위 명령어로 nginx 오류 확인함 결국 bin 설치된 곳에 가서 로 해결했음.


JVM

나의 첫 JVM heap dump 뜨기

서론 성능테스트를 계속하고 있다. 부하를 많이 주긴 했지만, 매우 빠른 시간 내에 full GC 가 일어나는게 요상스럽다, 싶어서 heap dump 를 떠봐야겠다는 결심을 했다. heap dump를 알기 전에 jvm의 구조와 heap…


자바스크립트 초짜의 javascript facts

세미콜론에 대해서 자바스크립트 엔진은 세미콜론으로 문이 종료한 위치를 파악하고 순차적으로 하나씩 문(statement)를 실행한다. (...) 이는 옵션이다. 즉, 생략가능하다. 이는 자바스크립트 엔진이 소스 코드를 해석할 때 statement…


Books

2022년의 책

1) 사랑한다고 말할 용기 (1/1) 몇 년 전 한해 최고의 책으로 꼽았던 <여자 둘이 살고 있습니다> 의 저자 중 황선우 작가의 책. 2021년 1…


junit4 와 junit5 헷갈리는 점 정리

junit에 spring support 작성할 때 junit 4 junit 5 junit5에서는 ExtendWith를 지원한다. 그런데 SpringExtension을 사용하려면 Spring Framework의 spring-test…


DevOps

docker, 사소한 사실들

it 태그 i n t eract 의 줄임말인듯. 가상의 tty ( TTY (teletypewriter) 항목은 리눅스 디바이스 드라이브중에서 콘솔이나 터미널) 를 제공. docker 의 WORKDIR 에서 돌아간다. 그러니 WORKDIR…


Development

intelliJ 이슈

인텔리제이 사용하며 마주한 문제들을 정리합니다. Tool Windows Bars 가 이상하게 생겼어요. (IntelliJ IDEA 2021.3.3, Utlmate Edition) 아래와 같이 하단에 잘 나오던 tool windows bars…


Tech

mitmproxy

charles 는 한번도 써보지 않았고, 받아서 쓰는 것도 귀찮아서 다시 mitmproxy…


Java, Security

html escape 생각해보기

서론 서비스 모니터링 하다가, 일부 특수문자가 제대로 표현되지 않는 영역이 있는걸 발견했다. html 특수문자 형태 그대로 나온 것인데, 예를 들어, < 가 &lt 와 같은 형태로 그대로 나왔다. 특수문자는 html…


Java, Server, CS

로드맵 파헤치기

서론 roadmap 을 보면서, 내가 아는 것도 어렴풋이 알고 있고 모르는 건 아주 화끈하게 모른다는 점을 알게 되었다. 머릿속에 정리가 안되는 찜찜한 상태로 있기 보다는, 일단 위키를 만들어서 써내려가기로 했다. 최대한 2-…


Server

varnish 가 뭔데요

서론 언제나 처럼 뭔데요 시리즈. 새로운 팀에서는 varnish 를 통해서 페이지를 캐싱해 성능 개선을 노리는 부분이 있다. 그러나 varnish 자체가 뭔지 모르는 나... 그냥 광내는 건 줄 알았다고. 그래서 오늘은 varnish…


Test, Tool

해외 IP 테스트하기는 VPN 뿐이지

접속국가의 IP 를 기반으로 서로 다른 스펙이 생겼다. 이때는, 안타깝게도 해외의 IP 로 접속해서 테스트해줄 일이 생긴다. 자주있는 일은 아니기때문에.. 해외의 공인된 VPN 은 없는 상황. 사내에서 뒤져서 나온 VPN…


스터디 했던 책 모음

문득 그 전에 스터디 했던 책을 요약 정리했던 글들이 저작권에 위반되리라 생각해서 해당 글들을 모두 삭제했다. 대신 나중을 위해서 스터디 했던 책을 적어본다. 스터디 했던 책 모음 Head First Design Pattern…


Linux

bash script 글로벌 실행하기

서론 서버를 운영하다보면 종종 간단한 형태의 bash script를 작성할 일이 생긴다. 이 블로그 운영에도 이런 일이 있다. 터미널에서 md 파일을 mdx 파일로 만들어서 폴더로 복사하는 부분을 bash script…


Spring

Spring MVC 구조

Spring MVC 구조 알아보기


Spring, Tomcat

tomcat / spring 조합의 디폴트 session timeout

결론 tomcat 의 기본 spring session timout 은 30분이다. https://docs.openkm.com/kcenter/view/okm-6.4/configuring-tomcat-session-timeout.html 그러니까 3…


JPA

hibernate exception이 발생하면 알아서 clear 해주지 않는다

서론 null id in entry (don't flush the Session after an exception occurs…


2021년의 책

2020년에 책을 기록하는 행위가 성공적으로 마무리됐다. 2021년에도 이어가보려고한다. 타이탄의 도구들 (1/1) 연말에 읽기 시작해서 마무리. 다양한 사람들의 성공방식이 있겠으나 그냥 여기에서는 사소한 습관을 얘기한다. 연말에 읽었던 4시3…


JVM, Java

[WIP] JVM Crush 분석하기 - 왜 갑자기 내 서비스 죽었지?

서론 갑자기 애플리케이션이 죽었다. 🤔 Port Down 이길래 내가 모르는 배포가 있었던가 했더니 아니었다. 1) 애플리케이션 로그를 봤다. 일정 시간대 이후로 끊어진 것을 제외하고는 특이사항이 없었다. 2) 서버 CPU, I/O…


Java, Logging, Security

소나큐브 log4j 취약점 fix

혹시 모르니까..


Life Hacks, Programmer

프로그래머를 위한 제언


Techs

내가 잘 모르고 나중에 뜯어볼 기술들 🤔

서론 너무 모르는게 많아서 한두줄로 요약하는 문서 참고 문서로 백엔드 로드맵을 첨부하려고한다.(팀원분이 참고로 보내주신것) 출처는 https://roadmap.sh/roadmaps/backend.png 최근A에 geeknews…


Test, Mockito

Mockito when으로 repository save 구현하기

상황 Test를 mockito로 작성하던 도중, repository의 save을 모킹해줄 일이 생겼다. 테스트하려는 메소드의 로직이 respository의 행동을 포함하고 있었기때문인데, 실제로 repository가 들고 있거나 DB…


Java

intelliJ + Spring Boot + gradle 에서 로컬 jar lib 넣는 방법

원하는 jar 다운로드 하기 maven central 에 올라가지 않은 jar 버전업이 필요없는 (^^!!) jar 더이상 지원하지 않는 jar 인 경우 jar 파일 라이브러리를 직접 임포트해줄 일이 발생한다. 경로는 원하는 모듈의 src…


Spring, Spring Cloud

Spring Cloud 란

Spring cloud 역할 알아보기


쿼리와 로직

쿼리와 로직에 대한 단상


LifeHacks

맥 hacks

유용한 맥 앱 Trailer - 깃헙의 pull request 를 실시간 알림 받고 싶다면 http://ptsochantaris.github.io/trailer/ trailer - github pull request…


Spring, Mockito

mockito inject mocks 가 갑자기 동작하지않아요 🤔

injects mocks 가 동작하지않아요 ExtendWith(MockitoExtension.class) @Mock object @InjectsMocks 위 처럼 했는데도 sut이 null 로 나와요! junit4 인 경우 @Test…


Spring

스프링 배치 CLI, job parameter 재사용 오류

문제상황 같은 batch job A 가 있다. 이 batch job의 job parameters 중 하나가 time 인데, time 은 꼭 있어야하는 parameter 중 하나다. 하지만 코드 상에서는 time이 null…


Docker, DevOps

docker desktop 정리 후 testcontainer image pull 실패

서론없이 결론만 docker desktop 정리 (안쓰는 이미지 정리) 후, 갑자기 testcontainer에서 사용하는 redis 이미지를 찾을 수 없다며 테스트가 오류를 뱉기 시작했다. cannot find image…


LifeHacks

M1 맥 도전기

서론 2020 년형 m1 맥 미니를 구매한지 몇주가 지났다. 이제서야 블로그도 다듬고 하기 시작했으므로, 간단한 글을 쓰는 외에는 사용하지 않고 있었는데 iterm을 세팅하고 나니 실감이 났다. '아😳 ... 바꿔줘야할게있구나...' 이는 Big…


Books

2020년의 책

2020년에 읽은 책 모음


Gradle

gradle facts

gradle build가 느린 이유 daemon을 띄우고, 원격으로 붙여서 빌드를 하기때문이다. intelliJ 에서 빌드를 하면 그래서 상대적으로 빠르다. 하지만 intelliJ의 경우 hook을 걸수가 없고, 걸려고 해도 전체 test…


Study, Development

[WIP] 자존심을 공부 동력으로 쓰자

서론 글또 이전에 하고 있던 모던 자바인 액션 스터디가 종료되고, 글또가 종료되었다. 글또는 주기적으로 블로그 글 발행을 목표로 함께 달리는 그룹이다. 좀더 자세한 정보를 원한다면 글또…