분류 전체보기

반응형
· 독서
2022.01.31 - [회고] - 미라클 모닝 - Part 1 자기 계발 시간 찾기 매튜 컬리의 책 삶의 리듬에서 "한편으로 우린 모두 행복해지길 원한다. 다른 한편으로는 우리를 행복하게 하는 것이 무엇인지도 모두 알고 있다. 그러나 우리는 알면서도 하지 않는다. 왜? 간단하다. 우리는 너무 바쁘다. 행복해지기 위해 애쓰느라 너무 바쁘다."라는 글이 있다. 열심히 사느라 시간이 없어서, 피곤해서 우리는 우리가 원했던 결과를 위해 무언가를 하지 않는 것이다. 물론 핑계일 수 있다. 하지만 사람이라면 당연히 오늘 하루를 바쁘게 힘들게 살았다면 피곤하고 시간이 없을 수 있다. 그럼 하루를 돌아보며 행복해지기 위해 무엇을 할 수 있는 시간을 찾아보자. 저녁 퇴근하고 집에 와서 자기 계발을 한다고 생각해보자. ..
· 독서
전에 읽던 책을 다 보고 눈에 보인 미라클 모닝이란 책이다. 아침 한 시간을 어떻게 보내느냐에 따라 그날 하루가, 한 달이, 인생이 바뀔 수 있다 라는 내용인데 조금씩 읽으면 인상 깊었던 부분, 기억해야 할 부분을 정리해 보려고 한다. 아래의 정리 글은 책의 내용과 나의 설명을 덫붙힌 것임을 참고 바란다. 우리는 평범한 삶을 산다 우리는 모두 원하는 삶이 있다. 누구는 자유롭게 여행하며 살고 싶고, 누구는 돈은 많이 벌어 부를 누리고 싶은 삶이 있을 것이다. 하지만 그 원하는 삶을 살기 위해 노력하는 방법은 알고 있지만 실천하지 않는다. 대부분의 사람들은 평범한 삶을 받아들이고 삶이 그들에게 주는 것을 수동적으로 받아들일 뿐이다. 당신을 평범한 삶을 살게 만드는 것들에는 여러 가지가 있다. 룸미러 증후군..
· 독서
2022.01.06 - [회고] - 아주 작은 습관의 힘(ATOMIC HABITS) - Part 1 2022.01.10 - [회고] - 아주 작은 습관의 힘(ATOMIC HABITS) - Part 2 2022.01.18 - [회고] - 아주 작은 습관의 힘(ATOMIC HABITS) - Part 3 2022.01.27 - [회고] - 아주 작은 습관의 힘(ATOMIC HABITS) - Part 4 2022.01.30 - [회고] - 아주 작은 습관의 힘(ATOMIC HABITS) - Part 5 습관에도 적성이 있다. 서장훈이 마라톤을 하고 이봉주가 농구를 했으면 그렇게 각자 최고 자리에 올랐을까 생각해보자. 어떤 분야든 최고 자리에 있는 사람들은 단지 잘 훈련받고 노력만 한 것이 아니라 그 일에 매우 ..
· 독서
2022.01.06 - [회고] - 아주 작은 습관의 힘(ATOMIC HABITS) - Part 1 2022.01.10 - [회고] - 아주 작은 습관의 힘(ATOMIC HABITS) - Part 2 2022.01.18 - [회고] - 아주 작은 습관의 힘(ATOMIC HABITS) - Part 3 2022.01.27 - [회고] - 아주 작은 습관의 힘(ATOMIC HABITS) - Part 4 만족스러운 경험이 될 때 습관이 된다. 나는 매번 캠핑 유튜브만 보다가 한번 실제로 캠핑을 한 적이 있는데 일반적인 출근하는 평일과는 달리 너무 여유롭고 행복했다. 그 이후로는 나는 캠핑을 즐겨하게 되었다. 이처럼 우리는 경험이 만족스러울 때 그 행동을 더 반복하게 된다. 하지만 여기에는 함정이 있다. 우리는 ..
매니페스트란 쿠버네티스의 오브젝트를 생성하기 위한 메타 정보를 YAML이나 JSON으로 기술한 파일이다. 실제 파드를 단독으로 기동하는 매니페스트를 작성하는 경우는 많지 않다. 보통 컨트롤러에 대한 매니페스트를 작성하는데 이때 파드에 대한 정보를 기술하는 부분이 포함된다. 이를 파드 템플릿이라고 하며, 파드의 매니페스트와 같다. 따라서 파드의 매니페스트를 기술하는 방법을 알고 있으면 컨트롤러를 사용할 때 도움이 된다. Nginx 컨테이너를 실행하는 매니페스트를 작성해보자. 주로 YAML파일이 JSON 파일보다 가독성이 좋아 많이 사용한다. 그리고 매니페스트를 작성할 때는 API 래퍼런스를 참고하는 것이 좋다. apiVersion: v1 kind: Pod metadata: name: nginx spen: ..
앞서 디플로이먼트 컨트롤러(Deployment Controller)에 의한 파드(Pod) 실행 예제에서 hello-world 컨테이너는 단발성 형태의 워크로드였다. 이에 적합한 쿠버네티스의 컨트롤러로 잡 컨트롤러(Job Controller)가 있다. kubectl 옵션으로 --restart=OnFailure를 지정하면 잡 컨트롤러의 제어하에 파드가 가동된다. 잡 컨트롤러는 파드가 비정상 종료하면 재시작하며 파드가 정상 종료될 때까지 지정한 횟수만큼 재실행한다. 디플로이먼트 컨트롤러를 만들 때와 마찬가지로 kubectl run 명령어 대신 kubectl create job 명령어를 사용해야 한다. 잡 컨트롤러는 컨테이너의 프로세스 종료 코드 값으로 성공과 실패를 판정하는데 , 그럼 job 2개를 생성해 하..
kubectl run에 옵션을 지정하면 파드를 디플로이먼트 컨트롤러 제어 하에 실행하는 것이 가능하다. 파드가 정지되었을 때 재기동시킬 필요가 있는지에 따라 옵션을 주면 된다. 이때 사용하는 옵션이 --restart=Always다. 반대로 파드만 독립적으로 실행하고 싶을 때는 --restart=Never 옵션을 주면 된다. --restart 옵션을 생략하면 기본값으로 Always로 실행된다. 즉 기본 적으로 디플로이먼트 컨트롤러에 의해 파드가 기동 된다. 디플로이먼트 컨트롤러 제어 하에 실행하는 방법은 아래와 같다. kubectl에 run은 서브 커맨드의 기능이 지나치게 방대해지는 것을 막기 위해 파드 자체를 만들 때만 run을 사용하고 디플로이먼트를 만들 때는 kubectl create deployme..
프로젝트 폴더 내부에 docker-compose.yml 파일을 저장한다. version: '2.2' services: my_web: container_name: my-web # 컨테이너 명 image: aspendigital/codeigniter:latest # 이미지 ports: # 포트 설정 - 80:80 volumes: # 볼륨 설정 - $PWD:/var/www/html docker-compose up 명령어로 다른곳에서도 같은 환경으로 설치할 수 있다. 참고 Docker 자습서 - 8부: Docker Compose 사용 Docker Compose를 설치하고 사용하는 방법을 설명합니다. docs.microsoft.com
· Spring
보통 기본적인 유효성 검증은 Validation 어노테이션들로 설정한다. 만약 더 섬세한 유효성 검증이 필요할때는 자신만에 어노테이션을 만들어 설정할 수 있다. 만약 연락처 필드의 유효성 검증(PhoneValidator)을 만든다고 가정해보겠다. // @Phone 어노테이션 @Inherited @Documented @Repeatable @Constraint(validatedBy = PhoneValidator.class) @Target({ ElementType.METHOD, ElementType.FIELD }) @Retention(RetentionPolicy.RUNTIME) @ReportAsSingleViolation public @Interface Phone { Stirng message() defaul..
· JPA
하이버네이트와 EHCACHE 적용 하이버네이트와 EHCACHE(ehcache.org)를 사용해서 2차 캐시를 적용해보자. 하이버네이트가 지원하는 캐시는 크게 3가지가 있다. 엔티티 캐시 엔티티 단위로 캐시한다. 식별자로 엔티티를 조회하거나 컬렉션이 아닌 연관된 엔티티를 로딩할 때 사용한다. 컬렉션 캐시 엔티티와 연관된 컬렉션을 캐시한다. 컬렉션이 엔티티를 담고 있으면 식별자 값만 캐시한다.(하이버네이트 기능) 쿼리 캐시 쿼리와 파라미터 정보를 키로 사용해서 캐시한다. 결과가 엔티티면 식별자 값만 캐시한다.(하이버네이트 기능) 참고로 JPA 표준에는 엔티티 캐시만 정의되어 있다. 환경설정 build.gradle에 cache 라이브러리를 추가한다. dependencies { // https://mvnrepo..
반응형
Beekei
'분류 전체보기' 카테고리의 글 목록 (20 Page)