분류 전체보기
스프링 시큐리티 - 초기화 과정 이해
인프런 정수원님의 스프링 시큐리티 완전 정복 6.x - 초기화 과정 이해를 정리한다. 스프링 시큐리티 6.x 이전 버전과 바뀐 점, 앞으로 무엇이 변할지도 설명하시는데스프링 시큐리티 내부 코드까지 다 파헤치면서 매우 자세한 설명을 하시기 때문에 수강하는 걸 추천한다. 스프링 시큐리티 완전 정복 [6.x 개정판] 강의 | 정수원 - 인프런정수원 | 스프링 시큐리티 6.x 최신 버전으로 제작된 개정판 강의로 초급에서 중.고급에 이르기까지 스프링 시큐리티의 기본 개념부터 API 사용법과 내부 아키텍처를 학습하게 되고 이를 바탕으www.inflearn.com프로젝트 구성 및 의존성강의를 위한 프로젝트 구성은 아래와 같다.스프링 부트 3.xJDK 17Gradle - Groovy의존성은 2가지를 추가한다. Spri..
MySQL - InnoDB 스토리지 엔진 아키텍처
Real MySQL 8.0 (신판)을 4장 아키텍처 InnoDB 스토리지 엔진 아키텍처를 정리한다. 자세한 내용이 궁금하면 책을 읽어보는 걸 권장한다. Real MySQL 8.0 (1권) - YES24 『Real MySQL 8.0』은 『Real MySQL』을 정제해서 꼭 필요한 내용으로 압축하고, MySQL 8.0의 GTID와 InnoDB 클러스터 기능들과 소프트웨어 업계 트렌드를 반영한 GIS 및 전문 검색 등의 확장 기능들을 추가로 www.yes24.com InnoDB 스토리지 엔진 아키텍처 InnoDB는 MySQL 스토리지 엔진 가운데 가장 많이 사용되며, 엔진 중에서 거의 유일하게 레코드 기반 잠금을 제공한다. 그 덕분에 높은 동시성 처리가 가능하고 안정적이며 성능이 뛰어나다. 프라이머리 키(PK..
MySQL - 엔진 아키텍처
Real MySQL 8.0 (신판)을 4장 아키텍처 일부분을 정리한다. 자세한 내용이 궁금하면 책을 읽어보는 걸 권장한다. Real MySQL 8.0 (1권) - YES24 『Real MySQL 8.0』은 『Real MySQL』을 정제해서 꼭 필요한 내용으로 압축하고, MySQL 8.0의 GTID와 InnoDB 클러스터 기능들과 소프트웨어 업계 트렌드를 반영한 GIS 및 전문 검색 등의 확장 기능들을 추가로 www.yes24.com MySQL 전체 아키텍처 MySQL 서버는 크게 MySQL 엔진과 스토리지 엔진 2가지로 구분되며, 이 둘을 합쳐 MySQL 서버라 부른다. MySQL 엔진 - 클라이언트의 접속 및 쿼리 요청을 처리하는 커넥션 핸들러와 SQL 파서 및 전처리기, 옵티마이저가 중심을 이룬다. ..
DDD 세레나데 2주차 - 크게 소리 내어 모델링하기
NEXTSTEP에서 진행하는 교육과정 DDD 세레나데 2기다. DDD(Domain-Driven Design) 세레나데 edu.nextstep.camp 교육을 수강한 지 1년이 지났지만, 이제야 후기를 작성한다. 2주차 후기 2주차는 모델링을 주제로 유비쿼터스 언어, 바운디드 컨텍스트, 이벤트 스토밍을 배우는데 간단하게 설명하면 유비쿼터스 언어는 구성원이 사용하는 비즈니스 용어를 하나로 통일한 언어이며 바운디드 컨텍스트는 도메인 범위를 정한다고 볼 수 있다. 이벤트 스토밍은 비즈니스 도메인을 빠르게 탐색하고 학습하여 유비쿼터스 언어와 바운디드 컨텍스트를 정하는 데 큰 도움을 준다. 이번에 배운 내용은 DDD를 적용하는 회사가 아니더라도 적용할 수 있는 좋은 내용이다. 이벤트 스토밍으로 구성원간 서로 다른 ..
이벤트 스토밍(Event Storming)
시작하면서 구성원이 수긍하는 유비쿼터스 언어나 바운디드 컨텍스트를 정하려면 어떻게 해야 할까? 비즈니스에 참여하는 구성원이 모여서 소통하고 정해야 할 것이다. 그러면 책상에 앉아 회의처럼 이야기해야 할까? 그럼 전체적으로 정하는데 많은 시간이 소비되고 피로도가 쌓일 것이다. 어떤 방식으로 해야할까? 알베르토 브란돌리니(Alberto Brandolini)가 제안한 비즈니스 도메인을 빠르게 탐색하고 학습할 수 있는 이벤트 스토밍에 대해 알아보자. 이벤트 스토밍이란? 도메인 전문가와 개발자를 학습 과정에 참여시키기 위한 빠른 설계 기술이다. 클래스와 데이터베이스가 아닌 비즈니스 및 비즈니스 프로세스에 중점을 둔다. 모든 사람이 동일한 수준으로 접근할 수 있게 시각적인 접근 한다. 진행 방법 큰 벽이나 화이트보..
DDD 세레나데 1주차 - 도메인 주도 설계 이해
NEXTSTEP에서 진행하는 교육과정 DDD 세레나데 2기다. DDD(Domain-Driven Design) 세레나데 edu.nextstep.camp 교육을 수강한 지 1년이 지났지만, 이제야 후기를 작성한다. 1주차 후기 1주차는 레거시 코드를 통해 도메인 주도 설계 등장 배경을 겪어보고, 왜 도메인 주도 설계인가를 알아본다. 리팩토링을 하기 위한 첫걸음으로 테스트 코드를 학습한다. 테스트 코드를 작성하는 방법은 여러 가지로 모두 경험해보고 어느 상황에 사용하면 좋을지 알아본다. 텐트를 세우기 위해 말뚝이 필요하듯이 리팩터링을 하기 위해선 테스트 코드가 필요하다. 나는 TDD, 클린코드 with Java 11기가 끝난 지 얼마 안 된 시점이라 생소한 개념이 많아서 따라가기 힘들었는데 아래의 개념을 들어..
DDD 세레나데 시작하면서...
NEXTSTEP에서 진행하는 교육과정 DDD 세레나데 2기다. DDD(Domain-Driven Design) 세레나데 edu.nextstep.camp 교육을 수강한 지 1년이 지났지만, 이제야 후기를 작성한다. 수강 이유 TDD, 클린 코드 with Java edu.nextstep.camp TDD, 클린코드 11기를 수강하고 나서 객체지향을 알게 되었고, 서적과 스터디로 오브젝트 등을 읽으면서 객체지향을 좀 더 알아가고 있었다. 당시 21년 하반기에 취업목표를 생각하고 있었고, 구인 공고를 찾아봤더니 DDD, MSA 용어가 많이 보였다. 커뮤니티 게시글이나 스터디 모집에서 DDD가 많이 보였고, 지인들도 DDD 스터디를 구한다고 했었다. 관심이 생겼지만, 커뮤니티에서 DDD, MSA는 난이도가 높아 나중..
9월 회고 및 목표
텐션이 다시 올라온 9월 9월은 구직 준비를 위해 이력서를 작성하고 NEXTSTEP 멘토링으로 이력서 피드백을 받고 수정하면서 회사에 넣을 준비를 했고, 진행 중이던 클린 코드, 이펙티브 자바 스터디가 무난하게 끝나고 다음 서적을 정했으며, 정리 못했던 교육 정리와 면접 준비를 하면서 잃어버린 텐션이 다시 올라오기 시작한 9월이었다...... 는 사실 희망사항일 뿐이다. 지난 9월은 시간이 어떻게 흘려갔는지 정신이 없었다. 왜 그랬는지, 순서대로 간략히 되돌아본다. NEXTSTEP 멘토링 - 1차, 2차 미팅 추석 전에 1차 미팅을 진행하면서 멘토님에게 이력서 기반으로 자기소개와 경력 소개를 했다. 아래는 당시 이력서의 내용 일부분이다. 나는 SI/SM 진행했지만 하나의 플랫폼을 구축하고 운영했기 때문에..