도서


내가 알고있는 아파치 카프카 아파치 카프카는 Pub/Sub 패턴을 이용한 메세지 큐로 알고있습니다. 제가 생각하는 카프카의 장점으로는 1. 여러 프로그램 간의 이벤트를 주고 받을 때 사용하고 직접 데이터를 주고받지 않고 카프카를 통해서 Json데이터 형식으로 데이터를 주고받기 용이하다. (MSA아키텍처에서 활용시 좋을 것 같다는 생각..?) 2. 카프카를 통하면 복잡한 데이터의 흐름을 단순화 할 수 있다. 3. 네트워크를 통한 Pub/Sub 패턴을 제공하기 때문에 서로 떨어진 환경에서도 이벤트를 주고받을 수 있다. 정도만 알고있습니다. 아파치 카프카 책을 통해 알아볼 것 제가 아파치 카프카 책을 통해서 알아볼 것들은 아래와 같습니다. 1. 아파치 카프카의 목적 - 왜 아파치 카프카가 나오게 되었는가? 2..

가용성과 데이터 복제 데이터베이스가 크래쉬되었을 때 어떻게 하면 서비스를 다운시키지 않고 계속해서 운용할 수 있을까? 주제를 다룬다. 현재의 정석은 복제이지만, 장애 시의 데이터 로스를 어느 정도 허용할 수 있는지에 따라 방침은 변한다. 현재의 트랜드를 살펴보도록 하자. # 데이터베이스는 어떤 때에 크래쉬되는가? 세상에서 인기를 얻고 있는 서비스는 24시간 365일 끊임없이 방대한 액세스가 발생하고 있다. 동시에 데이터베이스에도 많은 트래픽이 발생하고 있다. 이러한 `언제든지 필요할 때 동작해야 하는` 서비스에서는 생각하지 않으면 안 되는 것이 바로 장애에 대한 대책이다. 장애는 어느 날 갑자기 발생한다. 평상시 사용하고 있는 PC가 Windows의 트러블로 블루 스크린을 표시하거나 디스크 고장으로 사용..


SQL 문의 특징과 이를 잘 다루는 법 데이터베이스를 다루는 애플리케이션이라면 예외 없이 사용하는 것이지만, 그 사용법이 틀리면 고생하는 것은 사실이다. SQL 문의 사용법에 대한 요점과 장점 및 단점을 알자보자. # 테이블 조작하기 SQL은 실로 심오한 언어이다. "SELECT 문이란 무엇인가?"와 같은 초보적인 이야기는 많은 독자들에게 있어 그다지 필요가 없으리라 생각한다. 그래서 이 장에서는 어느 정도 현장에서 사용할 수 있는 실용적인 이야기를 중점으로 설명하고자 한다. RDBMS로는 무엇을 사용해도 좋지만, 여기에서는 무료 데이터베이스 중 가장 널리 사용되고 있는 MySQL로 동작 시켜 보겠다. 테이블 작성하기 데이터베이즈 제품 간의 호환성 확보가 힘들다. 특정 RDBMS에서는 동작하는 것이 다른..

테이블 설계와 릴레이션 테이블 설계의 핵심에 대해 알아보자. 데이터 모델링이라고도 불리는 영역이다. -> 재대로 되어 있지 않으면 애플리케이션 수정 및 보수시에 매우 고생한다. 이것의 중요성은 향후에도 변하지 않을 것이다. 기초를 제대로 파악해 두어야 하는 부분이기도 하다. # 데이터 모델링 기술의 중요성 애플리케이션을 만들때 중요한 것은 바로 어떤 데이터 항목이 필요한가를 재대로 파악하는 것이다. 항목이 부족하면 나중에 추가할 필요도 있겠지만, 이는 대부분의 경우에 애플리케이션의 개선이 필요하고 가독 후에 실시하는 것이 쉽지 않기 때문이다. 어떤 항목이 필요한지를 적절히 결정하는 데에는 "데이터를 어떻게 사용하느냐"라는 "업무 요구사항"이 명확하게 되어 있어야 한다. 기능 추가가 자주 발생하는 애플리케..