DB 스키마 형상을 소스 코드가 아닌 DB 테이블로 관리하기 위한 툴로 flyway를 많이 사용한다. flyway의 동작 방식과 관련해선 여기를 참고하면 이해하기 수월하다. 그리고 여기를 참고했을 때 DB 스키마에 변경사항이 생겼지만 스크립트 파일을 누락한 경우 애플리케이션이 실행되지 않는 불상사가 발생하여 주의해야 한다고 한다. 출처 ht...
[MSA] Kafka 도메인 이벤트 순서 보장하기
MSA환경에서 Kafka를 활용한 데이터 동기화 포스팅에서 MSA환경에서 카프카를 활용하여 두 마이크로서비스간의 데이터를 동기화하기 위한 방법들에 대해 알아보았고 아래 이미지처럼 4가지 경우의 수애 대해서 알아보았다. 도메인 이벤트별 토픽 나누는 방식의 단점(3, 4) 도메인 이벤트 별 토픽 나누는 방식(order-create-topic, or...
[MSA] MSA환경에서 Kafka를 활용한 데이터 동기화
MSA 로 구성된 환경에서 카프카를 활용하여 도메인 이벤트를 기반으로 처리를 할 땐 아래 요소들을 고민해야 한다. 어떤 방식으로 데이터를 주고 받을 것인지? (Full-Payload 방식 or Zero-Payload 방식) 토픽을 어떻게 나눌 것인지?(도메인 이벤트를 기준으로 나눌 것인지 or 도메인 기준으로 나눌 것인지) 위 두 가지 ...
[함께자라기][애자일] 애자일을 애자일스럽게 도입하기
많은 기업들이 애자일을 포함 정말 다양한 방법론을 도입하려 노력해왔찌만, 그노 력에 비해 성공률은 그렇게 높은 것 같지 않다. 왜 그럴까? 마지막 부분에서 이 질문에 한 가지 답변을 하게 될 것이다. 도요타가 자동차 개발, 설계에 대해 업계에 혁신을 가져왔다는 점에 대해선 반론을 하기 힘들다. ...
[함께자라기][애자일] 당신의 조직에 새 방법론이 먹히지 않는 이유
심리치료 연구에선 기념비적인 연구가 하나있다. 아이였을 때 뉴욕주에서 심리치료를 받은 어른들을 조사했는데 정상적인 생활을 하고 있는 건강한 사람과 그렇지 못한 사람에 대한 차이를 연구했다. 심리치료를 한 사람이 누구였느냐가 중요한 요인으로 작용했다. 당시 아이들 사이에선 유능한 치료사를 일...
[Kafka] Kafka Rebalancing
출처 https://joooootopia.tistory.com/30 https://www.verica.io/blog/understanding-kafkas-consumer-group-rebalancing/ https://techblog.gccompany.co.kr/%EC%B9%B4%ED%94%84%EC%B9%B4-%EC%BB%A8%EC%8A...
[함께자라기][애자일] 애자일 도입 성공 요인 분석
2010년 여의도에서 애자일 실천법 세미나가 있었는데, 저자가 ‘애자일 도입 성공 요인 분석’ 이라는 발표를 진행했다. 다음은 그 발표에서 일부분을 발췌하고 추가 및 수정한 글이다. 이 발표는 애자일을 도입한 회사들에게 있어 무엇이 성공과 실패를 가르는 핵심적 요인이었는지를 분석, 정리한 것이다. 애자일 도입 설문 일전에 애자일 ...
[함께자라기][함께] 프로젝트 확률론
이번 프로젝트는 제때에 끝낼 수 있을 것 같았는데 한 명의 관리자와 7명의 개발자가 있다. 관리자는 예술적인 칼놀림으로 프로젝트를 7개의 독립적인 일 덩어리로 잘라 개발자들에게 나누어줬다. 개발자들은 다른 개발자의 일에 관심을 둘 필요가 없다. 서로 분리된 일을 하면 된다. 프로젝트 중반쯤 되어 관리자는 ...
[함께자라기][애자일] 애자일의 씨앗
종종 10분 같이 짧은 시간 안에 애자일에 대해 설명해 달라고 부탁하는 분들이 있다. 10분 만에 애자일을 전달하는 것은 무척 어렵다. 저자는 그런 상황 속에서 애자일의 핵심, 애자일의 씨앗이라 할 수 있는게 무엇일까 고민하였다. 글이나 말을 통해 애자일을 배우는 것은 한계가 있고 결국은 어떤 씨앗을 갖고 각자 자신의 토양에서 고유한 나무...
[함께자라기][애자일] 애자일
좁은 의미의 애자일 애자일의 좁은 정의로는 ‘애자일 소프트웨어 개발 방법론’은 소프트웨어를 개발하는 한 가지 스타일을 일컫는다. 대략 1990년대에 그 모습을 드러내기 시작했는데, 당시에 쓰던 전통적인 소프트웨어 개발 방식이 1990년대의 비즈니스적 상황, 고객의 요구 등과 잘 맞지 않는다고 생각한 사람들이 있었다. 그들은 각자 자기들만의...