분류 전체보기(264)
-
Circuit Breaker, 제대로 이해하기
Circuit Breaker 마이크로 서비스 아키텍처(MSA, Micro Service Architecture)를 쉽게 말하면, 한가지 일만 잘하는 서비스들이 협업하는 아키텍처입니다. 서비스들은 HTTP 통신이나 RPC, Socket 등으로 서로 간의 통신하여 협업합니다. 많은 경우에서, 마이크로 서비스들은 특정 기능을 제공하기 위해 해당 아키텍처의 다른 서비스에게 통신을 요청합니다. 그리곤, 원하는 응답을 받아 계속해서 처리하죠. 비동기의 경우에는 달라질 수 있지만, 동기 방식에는 이런 방식으로 각 서비스가 의존적으로 구성됩니다. 이 경우의 문제점은 한 서비스에서 에러가 발생하거나 느려지면 이를 호출하는 다른 서비스들로 장애가 전파된다는 것입니다. 이를 위해 마이크로 서비스 아키텍처의 서비스들은 스스로..
2022.12.28 -
2022년 회고
2022년 돌아보기 회고를 할 때쯤 그동안의 스스로를 평가한다. 어떻게 살았나, 잘 살았나. 머릿속으로는 막연하도록 한참 부족한 것 같다. 하지만, 글을 정리하며 꽤 많은 것을 이루었음을 깨달을 때 "잘 살고 있나 보다" 생각이 든다. 그래서 회고가 기다려지나보다. 스스로의 자책이 깊어질 때, 잘 가고 있다고 더 나아가도 된다고 길을 터준다. 이번 해도 지난 해 못지않게 큰 변화가 일어났다. 다만, 깊은 암울과 좌절스러웠던 지난해와는 상반되게, 희망찼고 밝았다. 이번 해 목표를 만족스럽게 이루었다. 지난 해, 2021년 회고에서 정한 목표와, 2022년 상반기 회고를 통해 새로 다짐한 목표들도 이루어 나갔다. 아침 6시에 하루를 시작하고, 운동을 한 후 도시락을 만들고, 출근 버스에서 뉴스레터나 책을 읽..
2022.12.25 -
Technical Writing, 개발자 글쓰기 가이드
본 글은 Technical Writing Process의 5단계를 소개하며, 의사소통을 위한 기술적 글쓰기 방식을 소개합니다. TL;DR What is Technical Writing? : 체계적인 방법으로 글쓰기를 작성하여 글쓰기의 어려움을 없앨 뿐만 아니라, 글의 내용을 정확하고 효과적으로 전달하기 위해 분명하고 알기 쉽게 작성하는 문서 작성 기술. Technical Writing 5 STEP : 기획 > 구조화 > 문서작성 > 리뷰 > 배포 Google의 "Software Engineering at Google" 에서는 Documentation의 중요성을 알리며, 실제 구글러들이 사용하는 방식을 안내합니다. 해당 내용은 Documentation - Software Engineering at Goog..
2022.12.21 -
구글이 제안하는, 최적화된 오류 메세지 작성하기
소프트웨어 엔지니어들은 매일, 그리고 매 번 문서를 포함하여 다양한 글을 작성합니다. 메신저, 이메일, 일일 보고서, 코드, 그리고 심지어 코드 사이의 주석까지 다양한 범주를 아울러 글을 작성합니다. 팀원들과의 원활한 의사소통을 하거나 정보를 나누기 위해서 잘 작성된 문서는 엔지니어들의 업무 환경의 질을 향상시킵니다. 따라서 Technical Writing은 엔지니어링 영역의 중요한 부분 중 하나입니다. 구글은 공학자들의 Technical Writing 능력 향상을 위해서 공식 사이트에서 교육 자료를 공유합니다. 해당 포스팅에서는 구글의 공식 사이트의 한 부분인 Writing Helpful Error Messages를 다룹니다. 해당 포스팅은 오류 메세지를 효율적이고 생산적인 방식으로 작성하는 것을 주로..
2022.12.18 -
Reactor, 제대로 이해하기, zip() method
Reactor Publisher인 Mono와 Flux의 요소를 결합하는 zip를 이해하고 예제 코드로 직접 코드를 확인하는 것이 해당 포스팅의 목적입니다. | Reactor Series | - Reactive Programming, 제대로 이해하기 - Reactor 제대로 이해하기, Marble Diagram - Reactor, 제대로 이해하기 - Flux Create 👉🏻 Reactor, 제대로 이해하기, zip() method Zip method? Reactor가 zip method를 사용하면 두 개의 소스를 병합할 수 있습니다. 다양한 형태의 zip 메소드들을 지원하고 있으며, 모든 zip 메소드는 '주어진 입력 소스를 병합하는' 동일한 역할을 합니다. 아래의 그림에서 볼 수 있듯이, zip 메소드..
2022.12.18 -
Reactor, 제대로 이해하기, Flux Create
Reactor Publisher인 Flux를 생성하는 방법에 대해 이해하고 예제 코드로 직접 코드를 확인하는 것이 해당 포스팅의 목적입니다. | Reactor Series | - Reactive Programming, 제대로 이해하기 - Reactor 제대로 이해하기, Marble Diagram 👉🏻 Reactor, 제대로 이해하기 - Flux Create .from() 🔗 Reactor Link : Publisher로 부터 새로운 Flux 인자 방출emit Flux from(Publisher
2022.12.08