인기 글
-
개발
모니터마다 색상이 다른 이유: ICC Profile과 Color Gamut
'이 이미지는 전반적으로 색상이 왜 이렇게 진한 거예요? 제가 실제로 본 이미지는 이렇게 안 진했거든요.' 나의 지난 프로젝트에서 실제로 들었던 이와 같은 이야기는 디지털 색상 표현의 근본적인 문제를 보여준다. 실제로 여러 의류 판매 브랜드에서는 반품률이 오프라인의 경우보다 높은데, 색상이 일치하지 않는다는 것이 많은 비율을 차지하고 있다고 한다. 더 흥미로운 건, 요즘의 휴대폰 카메라가 포착할 수 있는 10억 개 이상의 색상 중 대부분의 모니터는 1,670만 색상만을 표현할 수 있다는 점이다. 물론 지금 표현할 수 있는 색상도 절대적으로 적은 것은 아니지만, 아날로그를 디지털화 하는 과정에서 발생하는 기술적 한계는 우리가 보는 디지털 이미지의 정확성에 근본적인 의문을 제기한다. 이번 글에서는 이러한..
- 카테고리 없음 Ubuntu에서 Docker container의 로그 관리하기 지난 몇 주동안 on-premise 환경을 구축하는 프로젝트를 진행했다.On-premise 환경에 배포하는 것은 단순히 환경을 구축하는 데에서 끝나지 않고, 이슈가 생길 때마다 그 원인을 파악하고 유지해야 할 필요도 있다. 그러다 보니, 로그를 오랜 기간 유지할 수 있어야 하기도 하고, 컨테이너가 멈추더라도 기존의 로그를 트래킹 할 수 있어야 하기도 한다. 그래서 이번엔 Docker container의 로그가 컨테이너의 상태와 무관하게 관리하는 방법에 대해 자세히 정리해보고자 한다. Step 1. Docker Container 의 log driver 설정하기docker 에서 제공해주는 log driver 의 종류는 json-file, journald, syslog 와 같은 것들이 있다.결론부터 말해보자..
-
개인 프로젝트
노션 데이터베이스 슬랙으로 알림 받기 (1/2) - @notionhq/client로 데이터베이스 쿼리하기
요즘 사내에서 TIL을 하는 모임을 운영하고 있습니다 그래서 매일 공부한 내용들을 노션의 각자 페이지를 생성해서 관리하고 있습니다최대한 개인의 자율에 맡기려고 하는데 그래도 서로에게 동기부여가 되기 위해서는 매일 누가 완료했는지를 공유하는 것도 하나의 방법이 될 수 있지 않을까 싶었습니다 그런데 다른 분들이 어떻게 하시는지 보려면 노션 페이지에 직접 들어가야 하다 보니 직접 노션을 연동하여 매일 어떤 분들이 어떤 내용을 입력했는지 확인하고 슬랙으로 알림을 받는 서버를 만들어 보려고 합니다 1. 노션에서 secret_token 발급받기먼저 노션의 데이터 베이스에 접근할 수 있는 봇과 봇이 접근할 수 있는 토큰을 생성해야 합니다노션의 Settings&Members에서 Integrations 탭에 접근하면 D..
최신 글
-
Backend [RabbitMQ] 메시지 속성 뜯어보기 지난 글에서는 메시지를 발행하는 과정을 따라가면서 프레임의 단위에 대해 알아 보았다.이번 글에서는 메시지를 발행할 때 전송하는 프레임 중 콘텐츠 헤더 프레임에는 어떤 속성이 있는지 알아보고 각 속성 별로 사용 방법에 대해 소개하려고 한다. ✅ Header frame 속성, 한 눈에 보기Header frame 에 포함된 속성은 위 그림처럼 14개의 속성을 포함하고 있다. 지난 글에서 알게된 delivery_mode의 경우, 1로 설정하면 메시지를 디스크에 저장하는 것처럼 AMQP 스펙에서 정의한 의미를 가지는 속성도 있는 한편, 정확한 스펙이 없는 속성도 있다. 그럼 위의 속성 별로 어떤 특징을 가지는지 알아보자. ✔️ content_encodingAMQP를 통해 전달하는 메시지는 기본적으로 압축되지 ..
-
Backend authentication & authorization 인증(authentication)과 인가(authorization)은 보안 시스템에서 가장 기본적인 요소로 종종 혼용되는 경우가 있다.밀접하게 관련이 되어 있기 때문이지만 엄밀히는 목적이나 역할이 다르기 때문에 명확하게 이해할 필요가 있다.이번 글에서는 이 두가지 개념에 대해 정리하려고 한다. ✅ authentication인증은 사용자가 스스로 주장하는 신원이 맞는지를 확인하는 절차이다.이 단계의 주요 목표는 신뢰할 수 있는 방법으로 사용자 정보를 확인하는 것이다. 이를 위해 다양한 방법이 사용되는데, 대표적인 방식을 알아보자. 지식 기반 인증사용자가 알고 있는 정보를 이용해 인증하는 방식 (아이디 및 비밀번호 등을 활용)쉽게 접근이 가능하기 때문에 비밀번호가 유출되는 경우 누구나 접근 가능 소유 기반 .. -
Backend [RabbitMQ] AMQP 통신 과정 속 프레임 구조 이해하기 이번 글에서는 지난 글에 이어서 메시지를 발행하는 과정을 따라가면서 저수준에서의 구현 방식을 이해해보고자 한다. ✅ AMQP의 RPC 프레임 구조 이해하기AMQP 스펙에는 클래스와 각 클래스 별 메소드가 정의되어 있다.통신을 위해 Connection이 필요하니 Connection을 맺는 것부터 클래스 / 메소드로 알아보면서 그 과정을 따라가보자. 클라이언트에서는 연결을 맺을 수 있는지에 대한 데이터 덩어리를 보낸다. 여기서 말하는 데이터 덩어리를 앞으로 프레임이라고 부를 것이다. 여기서 보내진 프레임은 하나의 요청으로 간주할 수 없고, 다른 통신과 다르게 명령의 성격을 가지지 않는다.여기서 전송되는 데이터 덩어리라는 프레임을 자세히 뜯어보자. 1. 프로토콜 헤더 프레임 첫번째 자리에 있는 1은 프레임의 ..