반응형

2월 한달 간 읽었던 포스팅 중 유익했던 블로그 글들에 대해 정리해보려 한다. 총 3개의 글로 현재 개발 6년차인 나에게 부족했던 부분에 대한 지식을 완고히 해주었거나 너무 익숙해서 그냥 지나쳤던 것들에 대해 다시 한 번 생각해 보게 하는 글들이였다.

1. Java, max user processes, open files (관련한 발생가능한 문제와 해결에 관한 글)_

실제 서비스를 운영하다 보면 리눅스의 커널 설정을 변경해주어야 하는 경우가 종종 발생한다. 예를 들어 request가 유실된다던지 open files의 설정과 max user processes의 설정이 낮게 잡혀있어 요청처리율이 낮은 경우입니다. 이외에도 tcp timeout과 같은 네트워크 적인 설정 부분도 있지만 해당 포스팅에서는 주로 접할 수 있는 open files로 인한 문제와 그로 인한 테스트 해결책들을 상세하게 설명하여 기존에 대략적으로 알고 있던 부분에 대한 내용에 대해 다시 한 번 리마인드할 수 있었습니다.

https://woowabros.github.io/experience/2018/04/17/linux-maxuserprocess-openfiles.html 

 

Java, max user processes, open files - 우아한형제들 기술 블로그

안녕하세요? 우아한 형제들에서 결제/정산 시스템을 개발하고 있는 이동욱입니다.올해 사내 블로그 포스팅 주제로 Linux의 open files, max user processes 설정에 대해 정리하게 되었습니다.계기는 단순했습니다.팀에서 서버 작업하던 중 쓰레드와 관련해서 문제가 발...

woowabros.github.io

 

2. Java NIO는 생각만큼 non-blocking하지 않다.

자바의 NIO에 관련해 왜 생각만큼 non-blocking하지 않는지에 대해 예를 들어가며 설명해주는 글로 NIO에 대해 잘 모르시고 궁금하신 분이라면 한 번 쯤 읽어보길 권장드립니다.

https://homoefficio.github.io/2016/08/06/Java-NIO%EB%8A%94-%EC%83%9D%EA%B0%81%EB%A7%8C%ED%81%BC-non-blocking-%ED%95%98%EC%A7%80-%EC%95%8A%EB%8B%A4/

 

Java NIO는 생각만큼 non-blocking 하지 않다

일부러 낚시 냄새가 독하게 풍기는 제목을 지어봤다. Java NIO는 New IO의 줄임말인데, Non-blocking IO 의 줄임말이라고 알고 있는 개발자도 많은 것 같다.(나도 그랬다..) 그만큼 NIO는 Non-blocking이라는 마케팅이 꽤나 열심이었고, 또 그게 잘 먹혔기 때문인지, File I/O를 사용할 때마저 기존의 IO 방식 대신 NI

homoefficio.github.io

 

3.싱글톤 패턴(Singleton pattern)을 쓰는 이유와 문제점

애플리케이션이 시작될 대 어떤 클래스가 최초 한 번만 메모리에 할당되고 그 메모리에 인스턴스를 한 번 만들어놓고 지속적으로 가져다 사용하는 디자인 패턴인데요. 아마 스프링을 쓰시는 분들은 @Bean이라는 어노테이션을 통해 많이들 사용하고 계시리라 생각됩니다. 하지만 싱글톤 패턴의 장점은 잘알고 있지만 단점에 대해서 잘 모르고 저 또한 사용하고 있었고 해당 포스팅에서는 @Bean 어노테이션을 사용하지 않고 싱글톤 패턴을 구현하는 방법들에 대해 설명해 주고 있으며 일반적으로 알고 있는 잘못된 방법에 대해서도 설명해 줍니다. 실제 멀티쓰레드 환경에서 자바 모듈을 구현해야하는 분들이시라면 읽어보면 많은 도움이 되실 것 같습니다.

https://jeong-pro.tistory.com/86

 

싱글톤 패턴(Singleton pattern)을 쓰는 이유와 문제점

싱글톤 패턴(Singleton Pattern) 싱글톤 패턴 애플리케이션이 시작될 때 어떤 클래스가 최초 한번만 메모리를 할당하고(Static) 그 메모리에 인스턴스를 만들어 사용하는 디자인패턴. 생성자가 여러 차례 호출되더..

jeong-pro.tistory.com

 

반응형
반응형

2020년이 시작한 지도 벌써 한 달이 지나....벌써 2월 5일.......1월 한 달간 도움을 받은 기술포스팅들을 남겨본다. 내용이 좋아 추후 참고하고 싶은 글들을 모은 것이기도 하다.

 

1. 데이터 엔지니어링 관련 소프트웨어 장애 대응 사례

데이터 엔지니어로 일을 하고 있기도 하고 하둡 클러스터를 사용하면서 한 번 쯤을 겪게되는 (겪을 수 있는) 문제 들에 대해 잘 정리되어 진 글이다. 하둡 클러스터를 운영함에 어떤 이슈가 발생할 수 있고 하둡 이중화에 대해 관심이 있는 분들은 한 번 읽어보길 바란다.

https://engineering.linecorp.com/ko/blog/data-engineering-software-troubleshooting/

 

데이터 엔지니어링 관련 소프트웨어 장애 대응 사례 - LINE ENGINEERING

안녕하세요. LINE Data Labs에서 데이터 엔지니어로 일하고 있는 Keiji Yoshida입니다. 저는 이번 글에서 데이터 엔지니어링 관련 소프트웨어 장애 대응 사례를 몇 가지 소개하고자 합니다.

engineering.linecorp.com

 

2. 왜 굳이 도커(컨테이너)를 써야 하나요?

도커 관련 문서 중 가장 쉽고 친절하게 도커를 써야하는 이유와 필요성에 대해 잘 정리된 글이다.

도커가 궁금했던 분들이나 앞으로 도커를 사용할 계획이 있는 분들이 읽어 보면 좋을 듯 하다.

https://www.44bits.io/ko/post/why-should-i-use-docker-container

 

왜 굳이 도커(컨테이너)를 써야 하나요? - 컨테이너를 사용해야 하는 이유

컨테이너는 서버 애플리케이션을 배포하고 서버를 운영하는 표준적인 기술이 되어가고 있습니다. 하지만 처음 사용해본다면 그 장점이 잘 와닿지 않을 수도 있습니다. 왜 굳이 도커 컨테이너를 사용해야할까요? 이 글에서는 눈송이 서버를 넘어 컨테이너가 애플리케이션 배포와 운영에 있어 어떤 장점이 있는지 알아봅니다.

www.44bits.io

 

3. 스프링부트(SpringBoot)에서 Request 유효성 검사하는 방법

프론트도 그렇고 백엔드도 그렇고 기본적인 validation체크가 기본이 되는 요즘, 해당 포스팅에서 스프링부트에서 Validation을 처리하는 방식과 커스텀 어노테이션을 통해 입맞게 맞게 유효성을 체크하는 핵심 내용을 잘 정리해 주신 것 같다.

https://jeong-pro.tistory.com/203

 

스프링 부트에서 Request 유효성 검사하는 방법, 서버 개발한다면 꼭 해야하는 작업 Spring Validation

스프링부트에서 Request로 오는 객체(DTO)를 어떻게 검증하는가에 대한 이야기 데이터 검증(validation)은 여러 계층에 걸쳐서 발생하는 흔한 작업이다. 어떻게하면 깔끔하게 유효성 검사를 할 수 있을지 생각해보..

jeong-pro.tistory.com

 

4. AOP에 걸린 Method의 Parameter이름 가져오기

스프링에서 AOP를 사용할 때 AOP에 걸린 Method의 매개변수(Parameter)를 가져오는 방법에 대해 잘 정리된 포스팅

https://alwayspr.tistory.com/34

 

AOP에 걸린 Method의 Parameter 이름 가져오기

먼저, AOP가 뭔지에 대해 알아보자. Aspect-Oriented Programming 이란 프로그램 구조에 대해 또 다른 사고방식을 제공함으로써 Object-Oriented Programming을 보완한다. OOP 모듈성의 핵심 단위는 클래스인 반면..

alwayspr.tistory.com

 

 

 

5. 병아리 개발자의 걸음마 한 발짝

신입 개발자분이 입사 후 프로젝트를 하며 작성한 코드에 대해 시니어 개발자들로 부터 코드리뷰를 받고 성장해 나가는 내용으로 생생하게 포스팅을 남겨 주셨다. 글을 읽다보면 코드 리팩토링, 객체지향에 기반한 코드리뷰 내용 등 기본이 되는 내용들을 많이 수록하고 있어 다시 한 번 중요 내용들을 되짚어 보는 시간을 가질 수 있었던 것 같다.

http://woowabros.github.io/experience/2019/09/10/pilot-project.html

 

병아리 개발자의 걸음마 한 발짝 (feat. 파일럿 프로젝트) - 우아한형제들 기술 블로그

지원서에서 발췌한 내용 …나름대로 제일 좋은 방법이라고 생각했던 해결책이 경험 많은 개발자분들이 보시기에는 어떤지, 시니어 개발자분들은 문제가 생겼을 때 어떻게 접근하고 어떻게 해결하는지 등도 항상 궁금해 왔습니다. …

woowabros.github.io

 

6. 스프링부트(SpringBoot) 2.2변화에 대해

물론 스프링부트 다큐먼트를 읽어도 되지만 한국 말로 친절하게 잘 설명되어져 있는 글을 읽음으로써 어떠한 부분들이 변경이되었는지 시간 날 때 차분히 읽어보면 좋을 만한 글인 것 같아 남겨본다.

http://wonwoo.ml/index.php/post/category/web/spring-boot

 

spring-boot – 머루의개발블로그

오늘은 Spring의 WebClient의 사용법에 대해서 몇가지 알아보도록 하자. 사용 API만 살펴 볼 예정이므로 reactive streams(reactor..) 들의 개념과 사용법은 다른 블로그를 살펴보길 바란다. reactive streams 대한 내용을 알고 보면 좋지만 몰라도 코드를 보는데는 문제가 없을 듯 하다. WebClient는 Spring5 에 추가된 인터페이스다. spring5 이전에는 비동기 클라이언트로 AsyncRestTemplat

wonwoo.ml

 

 

 

반응형

+ Recent posts