ohjongsung's Dev Story

Ohjongsung's Dev Story

도커 컨테이너에서 Java Heap memory 설정

Java Container Heap Memory 설정 변화 흐름 JDK 8u131+, JDK 9 컨테이너에 할당된 메모리의 25% 를 힙 메모리로 할당한다. -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap

2022년 08월 15일

Postgresql Local 설치 정리

Postgresql 커넥션 관련해서 테스트 및 확인할 일이 있어서 로컬에 설치했던 내용을 정리한다. docker pull postgres docker volume create pgdata docker run -d -p 5432:5432 --name postgres \ --restart unless-stopped \ -e POSTGRES_PASSWORD=12345 \ -v pgdata:/var/lib/postgresql/data \ postgres:14

2022년 06월 30일

Systemd 와 Too many open files 이슈

카프카 클러스터를 최초에 구축할 때, ‘recommend at least 128000 allowed for file descriptors ‘ 라는 가이드를 확인하고, /etc/security/limits.conf 에 적용을 했었다.

2021년 11월 27일

Clean Method

가능한 충분히 작은 사이즈로 한 가지 역할만 수행하고, 테스트 가능하고 중복이 없어야 한다. 파리미터 개수는 줄이고, 내부 코드를 보거나 API 문서를 보지 않아도 될만큼 이해하기 쉽게 만들어야 한다.

2021년 08월 15일

Java Functional Interface

함수형 인터페이스는 오직 하나의 추상 메소드만 갖는 인터페이스를 말한다. Java 8 부터 가능해진 디폴트 메서드는 여러개 있어도 추상 메소드만 하나면, 함수형 인터페이스이다. 함수형 인터페이스를 사용하는 이유는 자바의 람다식은 함수형 인터페이스로만 사용이 가능하기 때문이다.

2021년 04월 18일

Spring Boot Starter 구조 뜯어보기

개발을 하다 보면 수 많은 모듈을 만들고 제공하고 관리하게 된다. 제공하는 쪽이나 받는 쪽이나 버전 관리, 설정 등 이래저래 관리하기 힘들다. 그러다 문뜩 Spring Boot Starter 가 생각이 났고 구조를 뜯어보고 응용할 포인트를 찾아봤다.

2021년 03월 13일

정보은닉 Information hiding

인터넷에서 정보은닉에 대해 검색하면 private 접근 제어자를 사용해서 내부 데이터에 대한 접근을 막고 getter / setter 를 사용해서 접근하는 것으로 설명하고 있다. 이는 데이터 캡슐화로 엄밀히 말해서 정보은닉이라고 할 수 없다.

2021년 02월 21일

Prometheus scaling

사내 K8S에서 운영하는 프로메테우스가 힘들어해서 스케일링이 필요해졌다. 메트릭 데이터를 외부에 저장해서 제공하기로 했다. Integrations https://www.elastic.co/kr/blog/prometheus-monitoring-at-scale-with-the-elastic-stack

2020년 11월 29일

Golang Command line flags 와 docker env

go 로 api server 를 개발하는데, spring 의 spring.profiles.active 처럼 환경에 맞게 deploy 처럼 할 수 있는 방법 정리 https://mingrammer.com/gobyexample/command-line-flags/

2020년 09월 13일

Coucbbase Index 생성하기

Primary index 생성 버킷을 만들고 쿼리(n1ql) 을 사용하려면, Primary index를 생성해줘야 한다. https://docs.couchbase.com/server/current/n1ql/n1ql-language-reference/createprimaryindex.html

2020년 08월 15일

1 2 3 4 5 6 »