개발15 Effective C++ 항목 26: 변수 정의는 늦출 수 있는 데까지 늦추는 근성을 발휘하자. Effective C++ 항목 26을 읽고 요약 정리한 글입니다. Effective C++ 항목 26: 변수 정의는 늦출 수 있는 데까지 늦추는 근성을 발휘하자. 블로그 목차 1. 서론 2. 변수를 정의했는데 사용하지 않는 경우가 있을까? 3. 루프 안에서 사용되는 변수는 어떻게 정의해야 할까? 4. 결론 서론 - 생성자와 소멸자를 필요로 하는 변수를 정의하는 순간 두 가지의 비용이 발생한다.- 생성자 호출과 소멸자 호출이다.- 이 비용은 변수가 정의되었으나 사용되지 않는 경우에도 발생할 수 있다.변수를 정의했는데 사용하지 않는 경우가 있을까? - 이런 경우로는 변수를 미리 정의해두었는데 이 변수를 사용하기 전에 예외를 던지는 경우가 있을 수 있다.std::string encryptPassword.. 2025. 6. 29. Effective C++ 항목 20: '값에 의한 전달'보다는 '상수객체 참조자에 의한 전달' 방식을 택하는 편이 대개 낫다!! Effective C++ 책을 가지고 스터디를 진행하고 있는데, 제가 맡았던 부분에 대해서 기록을 남겨볼까 합니다. Effective C++ 항목 20: '값에 의한 전달'보다는 '상수객체 참조자에 의한 전달' 방식을 택하는 편이 대개 낫다!! 블로그 목차 1. 개요 2. 왜 고비용의 연산이 될까? 3. 해결책 4. 복사 손실 문제 (Slicing Problem) 이란? 5. 항상 상수객체 참조자에 의한 전달을 사용하나? 6. 결론 개요 - 기본적으로 C++는 함수로부터 객체를 전달받거나 함수에 객체를 전달할 때 '값에 의한 전달 (pass-by-value) 방식을 사용한다.- 함수 매개변수에는 '사본'이 전달되며, 함수를 호출한 쪽은 '사본'을 받는다.- 이때, 사용되는 것이 복사 생성자인데, .. 2025. 6. 17. Kafka 그리고 Kafka의 파티션(Partition)과 컨슈머 그룹(Consumer group) kafka를 사용할 때, 파티션과 컨슈머 그룹 개념이 등장하는데 사실 인터넷에 정리된 글들을 읽어봐도 잘 이해가 되지 않았다. 특히 병렬 처리의 개념이 잘 이해가 되지 않았는데 왜 이게 필요한지가 와닿지 않아서라고 생각한다. 물론 나도 예를 들면서 설명하지는 못하지만 그림을 통해 열심히 설명해보도록 하겠다. 그 외에도 전반적으로 Kafka의 개념에 대해 설명한다. Kafka 그리고 Kafka의 파티션(Partition)과 컨슈머 그룹(Consumer group) 블로그 목차 1. Kafka 2. 파티션과 컨슈머 그룹추천글 Kafka - 특징들을 쭉 나열하면 다음과 같다. 1) 오픈 소스 플랫폼이다. 2) 많은 양의 데이터를 낮은 지연 시간으로 처리 가능하다. 3) 이벤트를 토픽이라는 단위로 구분한.. 2025. 2. 14. Spring에서 Kafka Consumer, Producer 설정 이전 글이 Kafka를 실행하는 법이었다면, 이제 Spring에서 Producer와 Consumer를 설정하는 것에 대한 게시글이다. Spring에서 Kafka Consumer, Producer 설정 블로그 목차 1. Consumer 설정 2. Producer 설정 3. 입력하기 4. 입력하기 추천글 Consumer 설정 - 먼저, kafka 라이브러리 의존성을 추가한다.- Maven 기준이며, Kafka 2.8.1을 썼기 때문에 라이브러리 버전도 맞춰줬다. org.springframework.kafka spring-kafka 2.8.1 - 이제 Configuration 클래스를 작성한다.@Configuration@EnableKafkapublic class KafkaConsume.. 2025. 2. 14. Kafka를 window 및 Mac os에서 설치 및 실행하는 법 Kafka를 프로젝트에 들여올 일이 생기면서, Widnow 환경과 Mac os에서 설치 및 실행시킬 필요가 있었다. 나도 나중에 까먹지 않도록 기록하려고 한다. Kafka를 window 및 Mac os에서 설치 및 실행하는 법 블로그 목차 1. Kafka 설치 2. Kafka 실행 Kafka 설치 - 설치는 아주 간단하다.- Windows 환경 1) https://kafka.apache.org/downloads에 접속해서 kafka를 다운받는다. Apache KafkaApache Kafka: A Distributed Streaming Platform.kafka.apache.org나는 2.8.1 버전을 선택했으며, Binary downloads에서 Scala 2.13을 다운받았다. 2) 다운이 완료.. 2025. 2. 14. 분산 트랜잭션 및 보상 트랜잭션 최근에 Legacy를 마이크로서비스로 전환하면서 분산 트랜잭션에 대해 공부를 해야 했는데, 어떻게 보면 좋은 유튜브 자료를 찾아서 공부를 하게 되었다. 그 자료는 바로 토스 SLASH 24에서 발표된 내용으로 환전 서버에서 일어나는 분산 트랜잭션을 어떻게 구현했고, 에러 핸들링은 어떻게 했는지에 관한 얘기였다. 이들이 한 고민을 우리의 프로젝트로 옮겨오는 것은 시간 문제라고 생각한다. 추후, 실제 구현으로 넘어가는 것까지 해볼 예정이다. 분산 트랜잭션 및 보상 트랜잭션 블로그 목차 1. 분산 트랜잭션의 도입 2. 보상 트랜잭션의 원리 3. 에러 핸들링 4. 모니터링 및 결론추천글 분산 트랜잭션의 도입 1. 분산 환경의 탄생 - 토스는 모놀리식 시스템을 MSA로 점진적으로 전환중에 있다고 한다.- .. 2025. 2. 12. 이전 1 2 3 다음 반응형