코루틴 이해하기

코루틴은 Co + Routines의 합성어로 “여러개의 루틴이 함께 협력한다”라는 의미를 가진다. 지연과 재개를 할 수 있다는 특징과 비선점 멀티태스킹의 서브루틴 형태로 협력형 태스크와 비슷하게 동작한다.

자세히 보기

Unit Test에서 AssertThat을 사용하자

Junit 4.4부터 assertThat 메서드가 추가됐다. 이 메서드는 hamcrest 라이브러리의 사용을 통합하며 assertions을 작성하는데 있어 더 나은 방법을 제공한다. hamcrest가 static 메서드로 제공하는 여러 matcher를 사용할 수 있고 이러한 static 메서드는 체이닝할 수 있어서 기존 assertXXX 메서드보다 더 많은 유연성을 제공한다. 그 외에도 assertThat을 사용했을 때 어떤 이점이 있는지 알아보자.

자세히 보기

Encryption - RSA

이전에 <Hash - MD5와 SHA256>에서 해시(Hash)에 대해 설명하며 암호화(Encryption)와 다른점에 대해 간략히 알아보았다.
이번에는 암호화에 대해서 조금 더 자세히 알아보자.

자세히 보기

2년차 LINE 서버 개발자의 2019년 회고

벌써 LINE에 입사한지 2년이 다 되어간다. 올해는 정말 시간이 어떻게 지나갔는지 모르겠다. 정신 차리고 보니 2020년이 코앞이다. 올해는 작년에 하지 못했던 회고를 해보려한다.

자세히 보기

Hash - MD5와 SHA256

해시(Hash)와 암호화(Encryption)의 차이

먼저 혼동하기 쉬운 해시암호화의 차이에 대해서 알아보자.

자세히 보기

Micrometer

Micrometer란?

micrometer.io에서는 Micrometer에 대해서 다음과 같이 소개하고 있다.

Micrometer provides a simple facade over the instrumentation clients for the most popular monitoring systems, allowing you to instrument your JVM-based application code without vendor lock-in. Think SLF4J, but for metrics

Micrometer는 JVM 기반의 애플리케이션에서 다양한 모니터링 도구가 제공하는 클라이언트 라이브러리에 대한 facade를 제공한다. 로깅 관련된 시스템에서는 SLF4J가 있다면 모니터링(metric) 시스템에서는 Micrometer가 있는 것이다.

즉, 모니터링 시스템을 만드는 vendor들은 Micrometer 인터페이스를 따르기 때문에 Micrometer를 사용하면 애플리케이션 내의 코드 상에서는 모니터링 시스템 클라이언트로 어떤 것을 사용할지에 대한 고민에서 벗어나 Micrometer를 이용해 애플리케이션 metric을 수집하기만 하면 된다.
(모니터링 시스템을 선택하는 것은 런타임 시점에 정해진다고 생각하면 된다.)

자세히 보기