개발 아카이브 9

Grafana LGTM 톺아보기 (4) - Mimir 란?

그라파나 시리즈의 마지막 글이다. 이전 글이 궁금하다면?2025.01.19 - [개발 아카이브] - Grafana LGTM 톺아보기 (1) - Loki 란?2025.02.02 - [개발 아카이브] - Grafana LGTM 톺아보기 (2) - Alloy 란?2025.02.16 - [개발 아카이브] - Grafana LGTM 톺아보기 (3) - Tempo 란? Grafana LGTM 톺아보기 (3) - Tempo 란?Grafana로 모니터링 서버 구축하기에서 이번엔 LGTM 중 T인 Tempo 에 대해 알아보자 이전 글이 궁금하다면?2025.01.19 - [개발 아카이브] - Grafana LGTM 톺아보기 (1) - Loki 란?2025.02.02 - [개발 아카이브] - Grafansienna1022...

개발 아카이브 2025.03.02

Grafana LGTM 톺아보기 (3) - Tempo 란?

Grafana로 모니터링 서버 구축하기에서 이번엔 LGTM 중 T인 Tempo 에 대해 알아보자 이전 글이 궁금하다면?2025.01.19 - [개발 아카이브] - Grafana LGTM 톺아보기 (1) - Loki 란?2025.02.02 - [개발 아카이브] - Grafana LGTM 톺아보기 (2) - Alloy 란? Tempo 또한 그라파나에서 제공하는 오픈소스이며, 사용하기 쉬운 대규모 분산 추적 시스템이다.Loki, Grafana와 결합돼 유의미한 데이터를 만들어나갈 수 있다. https://github.com/grafana/tempo/tree/main GitHub - grafana/tempo: Grafana Tempo is a high volume, minimal dependency distri..

개발 아카이브 2025.02.16

Grafana LGTM 톺아보기 (2) - Alloy 란?

이전 1편은 Loki에 대해 이야기했다.2025.01.19 - [개발 아카이브] - Grafana LGTM 톺아보기 (1) - Loki 란? Grafana LGTM 톺아보기 (1) - Loki 란?사내에서는 서버의 트래픽을 모니터링하기 위해 datadog 솔루션을 사용하고 있다.물론 너무너무 좋은 서비스긴 하지만, 비용이 고비용이다. 아무리 좋은 서비스도, 우선 백엔드 팀만, 장애가 났을sienna1022.tistory.com 이번에는 Grafana LGTM 의 약자에는 들어가지 않지만 LGTM 이 작동할 수 있게 하는 데이터 수집기 Alloy에 대해 알아보자.어쨋든 우리가 원하는건 서버가 돌아갈 때, 서버의 이벤트들을 모조리 수집해서 그에 맞게 가공하는 것이다.가공 담당이 LGTM 이라면, 실제 서버에..

개발 아카이브 2025.02.02

Grafana LGTM 톺아보기 (1) - Loki 란?

사내에서는 서버의 트래픽을 모니터링하기 위해 datadog 솔루션을 사용하고 있다.물론 너무너무 좋은 서비스긴 하지만, 비용이 고비용이다. 아무리 좋은 서비스도, 우선 백엔드 팀만, 장애가 났을 때만, 모니터링을 하고 있는 점에서 비용 대비 우리 상황에 맞지 않다고 생각한다. 변화가 필요하다. 팀에서는 그라파나에서 제안하는 LGTM 을 통해 모니터링 대시보드를 직접 구성하였고, 사용중이다.그렇다면 그라파나 LGTM 을 빠삭하게 알고 있어야겠지..? 톺아보기를 시작해보자.우선 이야기를 하기 전에, 모니터링 시스템에서 빼놓을 수 없는 철학을 알아야합니다. Observability (관측 가능성)?관측 가능성(Observability)는 시스템의 내부 상태를 외부로부터 관측하고 이해할 수 있는 능력을 의미합니..

개발 아카이브 2025.01.19

당근 채팅 시스템은 어떻게 만들까?

https://www.youtube.com/watch?v=_F6k0tg8ODo당근 테크 밋업을 보고 정리한 글입니다. N개의 서버를 사용하는 구조에서 채팅 구현하기A라는 사용자와 B라는 사용자가 통신을 하기 위해서는 서로의 세션이 어느 서버에 있는지 알아야한다.이를 위하여, 공유 메모리를 사용했다. 유저 A가 메세지를 발행하고, B 가 어느 서버에 있는지 메모리 저장소를 통해 알아온다.아, B 는 서버 2에있고 IP는 어디니깐, 메세지를 발행한다. 하지만 만약에 서버가 10대로 늘어난다면서버 to 서버로 통신을 하다보니, 네트워크의 복잡도가 증가한다. 그래서 당근은 확장에 유리한 구조를 가져가기 위해 메세지 큐를 도입했다.A가 메세지를 보내서 B에게 메세지를 보내달라고 요청하는 이벤트를에 넣는다 ⇒ co..

개발 아카이브 2024.12.08

slack 파일 업로드, completeUploadExternal(),getUploadURLExternal() 사용법

슬랙에 파일을 보내기 위해 대부분 사용하고 있던 files.upload()함수가 2025년 3월 11일에 종료됩니다.대안으로, files.getUploadURLExternal 과 files.completeUploadExternal 함수를 사용하라고 하는데,코드 예시가 많이 없어 불편해서 글을 작성하게 되었습니다.과정은 대략 이렇습니다. 파일 업로드할 url 가져오기1번에서 받은 url로 파일 올리기1번에서 받은 파일 아이디로 슬랙 전송하기파일 업로드할 URL 가져오기Requestparams 에 filename(파일이름), fileLength(파일길이) 추가return await instance({ method: 'post', url: '', headers: { Authorizat..

개발 아카이브 2024.11.19

Node.js 에서 Cpu intensive한 코드 찾아내는 법 강연 정리

해당 강연을 보고 정리한 글입니다. https://inflearn.com/course/lecture?courseSlug=inflearn-evening-meetup-2211&unitId=137803&subtitleLanguage=ko CPU intensive 한 코드란? 학습 페이지 www.inflearn.com 잘 알고 있다 시피, node.js는 이벤트 루프를 사용하고 싱글 스레드지만, 만약 블로킹 IO 나 커널 블로킹이 필요하다면, libuv 엔진의 스레드 풀을 사용하여 처리하게 된다 결국 강연자가 생각했을 땐, 전체 Node.js 의 요청들은 worker pool과 event pool로 나누어질 것이고worker pool : libuv엔진이 처리하는 것들event pool : 그외의 것들이다 강연자..

개발 아카이브 2024.10.27

쿠버네티스란? feat. 데이터 처리도 이제는 컨테이너로, 우아한형제들의 데이터플랫폼 혁신

요즘 쿠버네티스 이야기가 많이 들려서, 관련된 AWS 써밋을 보았는데, 일단 내용이 좀 어려웠다.그래서 쿠버네티스 내용부터 훑고, 내용 정리를 진행했다.  쿠버네티스란?서비스를 제공하려면 만든 서버를 특정 서버에 배포해야 함. 기존에는 물리 서버에 여러 개의 가상 머신을 띄우는 가상화를 많이 사용했음. 하지만 가상화에는 몇 가지 한계가 있어서 이를 해결하기 위한 기술로 컨테이너가 등장했고, 컨테이너를 효율적으로 관리하기 위해 쿠버네티스(Kubernetes)가 나옴. 가상화(Virtualization) 가상화는 물리적인 하드웨어를 논리적인 객체로 추상화해 한 서버 위에 여러 운영체제를 설치하고, 각각 독립적으로 애플리케이션을 실행하는 방식임. 이 방식의 특징과 한계는 다음과 같음.  1. 확장성의 한계: ..

개발 아카이브 2024.10.13

[Deview] - 일본에서도 VOD 를 빠르게 업로드하고 재생할 순 없을까 정리 및 후기

https://tv.naver.com/v/23649793 NAVER D2일본에서도 VOD를 빠르게 업로드하고 재생할 순 없을까tv.naver.com  2021 deview 컨퍼런스를 보고 내용과 느낀 점을 정리해 본다. 이번에 본 컨퍼런스는 [일본에서도 vod를 빠르게 업로드하고 재생할 순 없을까?]의 주제였다. 이걸 고른 이유는 vod 서비스는 어떻게 개발되는지 하나도 지식이 없어서, 보게 되었다. 해당 컨퍼런스를 발표한 부서는 네이버 etech이다.etech는 포토 오디오 비디오의 생산부터 클라우드까지 전반적인 워크플로의 기술 연구와 개발을 담당하는 부서라고 한다.즉, 사용자가 영상을 업로드하고, 그걸 클라우드에 적재하고 영상을 보여주는 일련의 모든 과정을 담당하는 부서라고 이해했다. 이번 발표자님은..

개발 아카이브 2024.09.29
728x90