4천만 MAU 를 지탱하는 서비스 설계와 데이터 처리 기술 강의 메모
4천만 MAU 를 지탱하는 서비스 설계와 데이터 처리 기술 강의 메모 1. 대규모 서비스에서 발생하는 기술적 이슈 및 장애 사례 1-1. IT 서비스 혁신 = 비즈니스 모델의 혁신 ∋ 기술의 혁신 {기술 발전}이나 {소비자 욕구 변화}에 따라 혁신적인 {제품 또는 서비스}를 제공 aws - {가상화 기술 발전}과 {합리적 소비 확산}에 따라 혁신적인...
4천만 MAU 를 지탱하는 서비스 설계와 데이터 처리 기술 강의 메모 1. 대규모 서비스에서 발생하는 기술적 이슈 및 장애 사례 1-1. IT 서비스 혁신 = 비즈니스 모델의 혁신 ∋ 기술의 혁신 {기술 발전}이나 {소비자 욕구 변화}에 따라 혁신적인 {제품 또는 서비스}를 제공 aws - {가상화 기술 발전}과 {합리적 소비 확산}에 따라 혁신적인...
RoutingDataSource 를 사용한 분산 데이터베이스 환경에서 JTA 를 이용한 트랜잭션 처리 네이버 D2 문서를 읽고 필요한 내용을 추가하고 정리한 문서입니다. 전체 테스트 코드는 이 링크 를 확인해 주세요. 1. 테스트 환경 1) Java 1.8 2) 데이터베이스 구성 3) 주요 Maven 의존성 - spring-boot-...
1. 들어가기 비즈니스 로직과 관련된 쿼리들이 여러 종류의 데이터베이스에 걸쳐 수행될 수 있습니다. 이 경우 하나의 데이터베이스를 대상으로 하는 DataSourceTransactionManager 를 사용한 방법으로는 트랜잭션 동기화를 사용할 수 없습니다. JdbcTemplate 내부에서 DataSourceTransactionManager 를 통해 ...
데이터베이스 트랜잭션 경계와 동기화 테스트 이전 트랜잭션 경계와 동기화 에서 알아본 내용을 실제로 테스트 해 보겠습니다. 전체 코드는 이 링크 를 참고해 주세요. 1. 테스트 구성 JDBC 와 MySql 을 사용해 테스트 했습니다. name 과 seq 컬ㄹ머을 가진 간단한 테이블에 여러 사용자를 같은 트랜잭션에서 추가하고 추가하는 도중 예외 ...
데이터베이스 트랜잭션 경계와 동기화 1. 들어가기 비즈니스 로직과 관련된 쿼리들을 처리하는 도중에 네트워크가 끊기거나 서버에 장애가 생겨 작업을 완료할 수 없게 되면 그 때 까지 처리된 쿼리들은 초기 상태로 되돌려져야 합니다. DBMS 에 하나의 쿼리를 처리하는 경우에는 트랜잭션을 보장한다고 믿을 수 있습니다. 하지만 여러 개의 쿼리 작업을 하...
출처1 : https://www.javacodegeeks.com/2012/08/io-demystified.html 출처2 : https://docs.oracle.com/javase/7/docs/api/java/nio/channels/AsynchronousChannelGroup.html 출처3 : https://docs.oracle.com/jav...
출처1 : https://www.javacodegeeks.com/2012/08/io-demystified.html 출처2 : https://reakwon.tistory.com/117 출처3 : https://rammuking.tistory.com/entry/Epoll%EC%9D%98-%EA%B8%B0%EC%B4%88-%EA%B0%9C%EB%85%...
출처1 : SW 아키텍처 설계 강의(IMQA 손영수 상무) Reactor 패턴 (1) 요청을 처리하는 핸들러들을 가지고 있고 각 요청에 맞는 핸들러로 처리해 프로토콜 추가에 유연한 Dispathcer 입니다. 1. Dispatcher 패턴 1-1. 디스패처 패턴이란 리액터 패턴을 알아보기전 디스패처 패턴을 먼저 알아보겠습니다. 서버는 여러가지...
출처1 : https://www.youtube.com/watch?v=q-KfKdLdXSM&list=PLs4Vf-D53YHm6MA7ZHnYoxD2sAn9NOBZr&ab_channel=YoungSuSon 출처2 : Head first design pattern 출처3 : https://refactoring.guru/ko/design-p...
리눅스의 fork(), exec() 시스템 콜 자식 프로세스는 보통 fork(), exec() 시스템 콜을 통해 생성된다. 부모 프로세스에서 다른 프로그램을 실행하는 자식 프로세스를 실행하려는 경우, (1) 자식 프로세스를 생성한다. (2) 자식 프로세스에서 새로운 프로그램을 생성한다. 로 단계를 나눌 수 있다. (1) 단계는 fo...