[Clean Architecture #0] SOLID 5원칙
SOLID 원칙: 깨끗한 아키텍처를 위한 기초 개념 소프트웨어 개발에서 유지보수성과 확장성을 높이기 위해 여러가지 설계 원칙이 있다. 그중에서도 특히 중요한 것이 바로 SOLID 원칙이다. SOLID 원칙은 객체지향 설계에서 지켜야 할 다섯가지 기본 원칙을 의미하며, 코드의 품질을...
SOLID 원칙: 깨끗한 아키텍처를 위한 기초 개념 소프트웨어 개발에서 유지보수성과 확장성을 높이기 위해 여러가지 설계 원칙이 있다. 그중에서도 특히 중요한 것이 바로 SOLID 원칙이다. SOLID 원칙은 객체지향 설계에서 지켜야 할 다섯가지 기본 원칙을 의미하며, 코드의 품질을...
2년간 서비스에 GO 와 GRPC 를 사용하며 개인적으로 느낀점에 대해 정리할 필요성을 느꼈다. 오랜만에 작성하는 포스팅
마지막 포스팅 이후 오랜 시간이 지났다. 작년 10월, 경력 1년을 찍는 순간 그동안 계획했던 이직활동을 본격적으로 시작했다. 이력서를 정리하고 여러 회사에 지원하면서 자연스럽게 블로그 포스팅을 못하게 되었다. 물론 올해 2월에 그토록 원하던 이직에 성공했고 새로운 회사에 적응중이...
Docker는 컨테이너 배포 및 런타임을 책임지는 컨테이너 엔진이다. 최근 개발 패러다임이 MSA, DevOps, Cloud으로 전환되면서 Docker는 엔지니어에게 필수 기술이 되었다. 사실 도커는 취준생 시절 조금이나마 최신 기술 트렌드를 알고있다고 어필 하기위해 사용법을 익힌...
Overview Eureka는 JAVA 프로젝트로 JVM 어플리케이션에 대해 Service Discovery를 지원한다. MSA는 Polyglot을 지원한다고 했다. Polyglot은 언어에 관계 없이 마이크로서비스로 구성이 가능하다는 것을 의미한다.
앞서 MSA와 Service Discovery를 위한 Eureka Server/Client에 대해 정리했다. 그렇다면 유레카 서버에 등록된 서비스들은 어떻게 접근할까?
MSA에서 Service Discovery의 필요성 서버의 IP 혹은, 서비스의 엔드포인트가 비교적 정적이였던 시절, 서비스 DNS는 서버 관리자가 직접 관리했다. 하지만 고가용 서비스를 지향하는 클라우드/컨테이너 환경이 보편화 됨에 따라, 휴먼파워로 DNS를 관리하기란 상당히 어...
Spring Cloud (Spring Boot + Netflix OSS)를 사용한 API GATEWAY 개발기를 작성하기 전에 MSA의 개요와 간단한 특징을 설명하려고 한다. 물론 다른 개발 블로그에서 훨씬 전문적이고, 통찰력 있는 글들도 많지만 API GATEWAY를 개발하면서 ...
OS: Thread Overview 첫번째 주제는 Thread로, Thread의 개념 및 개발 시 신경써야 할 특징들에 대해서 알아볼 것입니다. 보통 Thread 실습 시 C언어를 사용하지만, 이번 Sample Code는 저희 그룹의 주력 언어인 JAVA를 사용할 것입니다. 기본적...