본문 바로가기

전체 글251

Container Driven Development 시작하기 Container Driven Development 는 컨테이너화 된 환경 내에서 코드를 작성, 실행 및 테스트하는 개발 Flow이다. 컨테이너를 사용하면 애플리케이션의 빌드 및 패키징에 적용하며 자동화된 테스트를 비롯해 개발, Stage, Production에 단일 된 Artifact를 제공함으로써 전통적인 work flow에서 발생할 수 있는 많은 문제를 해결한다. 특히 환경차이 때문에 발생하는 문제와 버그가 최소화된다. 또한 빌드, 테스트, 배포 전반에 걸쳐 자동화된 프로세스 구축이 가능해지는데 이는 더 빠른 속도로 지속적 배포가 가능하게 한다. 컨테이너는 OS 수준에서 CPU, 메모리, Storage, 네트워크 리소스를 가상화한다. 민감한 프로세스는 하나의 논리적 Sandbox로 격리될 수 있으며.. 2021. 1. 30.
기술의 딜레마 예전에 WebFlux 도입 여부를 두고 꽤 긴 논쟁을 했었다. 나의 주장은 WebFlux 도입이 필요한지 따져봐야겠지만 아직 대부분의 팀원이 잘 모르기 때문에 WebFlux만 볼 게 아니라 관련된 사전 지식의 수준을 먼저 높인 뒤에 도입해야 할 것 같다 였고, 상대방의 주장은 일단 적용하고 시행착오를 거치면 되지 않겠느냐는 입장이었다. 나 역시도 관심을 많이 두고 있고 출시 이후부터 개인적으로 꾸준히 샘플프로젝트도 만들어보고 스터디를 해왔기 때문에 성향상 평소 같았으면 일단 적용하는 쪽에 손을 들어줬을 테지만 이 상황은 좀 다르다고 생각했다. 기존에 작성하던 개발 패러다임을 완전히 바꿔야 하는 수준이라고 생각했고, 충분히 학습하지 않은 상태에서 도입하는 것은 독이 될 수도 있겠다고 보았다. 실제도 가이드.. 2021. 1. 29.
Kubernetes 성숙도 모델 2014년 Google에서 발표한 이후 2021년 현재 Kubernetes 의 인기도는 그 어느 때보다 높다. 아니 단순한 인기를 넘어 클라우드 환경에서 반드시 필요한 필수가 되고 있다. CNCF(Cloud Native Computing Foundation)의 2020년 11월 설문조사에서 응답자의 92%가 현재 프로덕션 환경에서 컨테이너를 사용하고 있으며, 83%는 해당 환경에서 Kubernetes를 사용하고 있다고 응답했다. 이는 84%가 컨테이너를 사용하고, kubernetes는 78%가 사용하고 있다고 보여 주었던 2019년 조사 결과와 비교된다. 이렇게 많은 곳에서 Kubernetes를 사용하고 있지만, 현실적으로는 그 시스템 전체를 올바르게 이해하고 도입하는 것은 꽤 복잡하다. Kubernte.. 2021. 1. 28.
Spring Boot 2.4 Spring Boot 팀의 Phill 의 Spring Boot 2.4 설명 아래 내용들을 담고 있다. 00:27 데모 앱 만들기 업그레이드 07:24 버전 번호 변경 08:29 JUnit 빈티지 엔진 09:07 레거시 구성 데이터 모드 10:48 Logback 속성 변경 및 Property Migrator 새로운 기능 13:51 Java 15 및 시작 로깅 15:03 생성자 바인딩 @ConfigurationProperties 업데이트 18:11 ApplicationStartup 지표 (Flight Recorder 및 JSON) 24:49 애플리케이션 속성 / yaml 변경 30:46 'spring.config.import'사용 34:46 확장자없이 파일 가져 오기 35:28 오리진 체인 38:34 구성 .. 2021. 1. 24.
2020년도 Javascript 현황 조사 지난 2019년도 javascript 현황 조사에 이어 2020년도 Javascript 설문조사가 이뤄져 공개되었습니다. 주요 내용만 뽑아서 정리해보았는데요. 더 자세한 내용을 알고 싶으시면 번역도 되어 있으니 홈페이지에서 확인하시면 될 것 같아요~! 소개 - Optional Chaining과 Nullish Coalescing과 같은 새로운 기능 덕분에 언어가 계속 향상되고 있다. - 타입스크립트의 광범위한 적용은 정적 타입을 대중화함으로써 완전히 다른 수준으로 끌어올리고 있다. - Svelte의 등장으로 프론트엔드에 대한 신선한 해석이 이뤄졌으며 모든 것을 흔들어 놓았다. 인구 통계 - 137개의 나라에서 23,765명 응답 (미국 약 21%) 연봉 경력 직장 규모 기능 응답자 대부분은 설문조사에 언급.. 2021. 1. 23.
12 Factor The Twelve-Factor App SaaS (Software As A Service) 를 위한 방법론 목적 - 설정 자동화를 위한 절차를 체계화한다. -> 새로운 개발자가 프로젝트 참여하는데 드는 시간과 비용을 최소화한다. - OS따라 달라지는 부분을 명확하게 하여 실행 환경 사이의 이식성을 극대화한다. - 클라우드 플랫폼 배포에 적합하고, 서버와 시스템 관리가 필요없게 된다. - 개발과 운영 환경 차이를 최소화 하여 지속적인 배포가 가능하다. - 툴, 아키텍처, 개발 방식을 크게 바꾸지 않고 확장할 수 있다. 1. 코드 베이스 코드 베이스와 앱 사이에는 항상 1:1 관계가 성립해야 한다. 여러개 앱이 동일한 코드를 공유한다면 12-Factor 를 위반하는 것이다. 이를 해결하기 위해서는 공유 코드.. 2021. 1. 23.