MSA(5)
-
MSA(Microservices Architecture) 이해하기: HTTP와 gRPC를 통한 통신 방식
현대 소프트웨어 개발에서는 시스템을 작은 서비스 단위로 나누는 MSA(Microservices Architecture)가 점점 더 인기를 끌고 있습니다. 이를 통해 개발팀은 독립적으로 배포 가능한 서비스들을 구축하고, 각각의 서비스가 독립적으로 발전할 수 있게 합니다. 이번 포스팅에서는 MSA의 통신 방식, HTTP와 gRPC에 대해 살펴보고, 코드 레벨에서 어떻게 구현되는지에 대해 설명하겠습니다. 또한, 모놀리식 아키텍처와 비교하여 MSA의 장점도 살펴보겠습니다.모놀리식 vs MSA모놀리식 아키텍처는 애플리케이션의 모든 기능이 하나의 큰 코드베이스에 통합된 형태입니다. 이 방식은 초기 개발 및 관리가 비교적 단순하다는 장점이 있지만, 프로젝트가 커질수록 유지보수와 배포에서 문제점이 발생할 수 있습니다...
2024.11.18 -
# 오픈소스 OpenTracing - Zipkin
오늘은 OpenTracing 프로젝트 중 Zipkin에 대해서 알아보도록 하겠습니다. Zipkin은 Jaegertracing과 같이 MSA 구조에 특화된 서비스 트레이싱을 할수 있는 오픈소스 입니다. 오늘 다룰 얘기는 Zipkin에서는 기술적으로 어떻게 서비스 트레이싱을 하는지에 대해 알아보도록하겠습니다. OpenTracing이나, Jaeger에 대한 내용은 아래의 링크를 참고해주세요. https://bourbonkk.tistory.com/84 # 오픈소스 OpenTracing - Jaeger 안녕하세요. 해커의 개발일기 입니다. 오늘은 마이크로 서비스 아키텍처를 사용하여 구축된 응용 프로그램을 프로파일링하고 모니터링하는데 사용하는 Distributed Tracing 분산 추적 기술에 대해서 bourbo..
2022.03.20 -
# gRPC 개요 및 proto 파일 정의
안녕하세요. 해커의 개발일기 입니다. 오늘은 MSA 구조에서 많이 쓰기고 있는 GRPC에 대해서 알아보도록 하겠습니다. 저도 회사에서 많이 사용하고 있기 때문에 처음에는 다른 사용법에 조금 헤멧지만 지금은 gRPC가 정말 편리하다는 것과 성능적으로 우월하는 점을 잘 알고 있기 때문에 초보적인 사용법과 더불어 심화된 내용 및 proto 파일 정의 내용도 다룰 예정입니다. gRPC와 proto 파일에 대해서 알아보겠습니다. gRPC는 구글에서 개발안 오픈소스 원격 프로시저 호출(RPC) 시스템이고 전송을 위해서 HTTP/2를 사용하고 인터페이스 정의 언어로는 포로토콜 버퍼(.proto 파일)을 사용하고 있습니다. 기본적으로 gRPC는 HTTP/2 베이스기 때문에 외부에서 노출되어야 하고 로드밸런서 적용이 필..
2021.05.30 -
# Opentracing Jaeger-client golang/JAVA applicaion에 적용하기[Golang 편]
안녕하세요. 해커의 개발일기 입니다. 오늘은 마이크로 서비스 아키텍처를 사용하여 구축된 응용 프로그램을 프로파일링하고 모니터링하는데 사용하는 Distributed Tracing 분산 추적 기술에 중! 오늘은 지난번에 소개해드렸던 https://bourbonkk.tistory.com/84?category=794341 # 오픈소스 OpenTracing - Jaeger 안녕하세요. 해커의 개발일기 입니다. 오늘은 마이크로 서비스 아키텍처를 사용하여 구축된 응용 프로그램을 프로파일링하고 모니터링하는데 사용하는 Distributed Tracing 분산 추적 기술에 대해서 bourbonkk.tistory.com instrumentation 작업을 통해 latency를 측정하고자 하는 곳에 코드를 심어주게 되면 서비..
2020.08.23 -
# 오픈소스 OpenTracing - Jaeger
안녕하세요. 해커의 개발일기 입니다. 오늘은 마이크로 서비스 아키텍처를 사용하여 구축된 응용 프로그램을 프로파일링하고 모니터링하는데 사용하는 Distributed Tracing 분산 추적 기술에 대해서 알아보는 시간을 갖도록 하겠습니다. 분산 추적 기술은 근래 해외에서 많이 사용되고 국내에서도 점차적으로 도입하고 있는 것으로 알고 있습니다. 왜? 분산 추적 기술을 사용할까요? 분산 추적 기술이라는 것은 MSA 구조에 최적화되어 어느 부분에서 병목현상이 발생하는지, 어느 부분에서 장애가 발생하는지 위치와 성능 저하의 원인을 정확히 판단하는데 도움을 줄 수 있는 기술입니다. OpenTracing은 무엇일까요? OpenTracing은 어떤 프로그램이 아닙니다. OpenTracing 홈페이지에 가면 언어별 가이..
2020.03.25