[Kafka, 카프카] Kafka Shell Sciprt 명령어
개발공부/Kafka2025. 1. 6. 21:28[Kafka, 카프카] Kafka Shell Sciprt 명령어

Kafka topic을 조작하는 Shell Script인 Kafka-topics.sh, Kafka-configs.sh 등의 명령어를 정리해보겠습니다 !당장 학습하며 자주 사용하는 명령어 위주로 작성할 예정이지만 Kafka를 계속 공부하면서 지속적으로 업데이트할 예정입니다 ! Kafka-topics.sh 명령어topic 생성하기(기본 옵션)bin/kafka-topics.sh --create --bootstrap-server my-kafka:9092 --topic hello.kafkahello.kafka는 생성하고 싶은 topic 이름my-kafka는 Kafka브로커의 호스트이름 또는 도메인 이름topic 생성하기(옵션 추가)bin/kafka-topics.sh --create --bootstrap-serv..

[CS]캐시, 캐싱이란 ?
IT이론/네트워크2024. 12. 31. 17:51[CS]캐시, 캐싱이란 ?

프로젝트에 데이터를 캐시로 관리하던 중 Redis 캐시에 대해 글을 작성하기 전 캐시와 캐싱에 대해 한번 정리하면 좋을 것 같아 빠르게 정리하고 넘어가려고 합니다 !❓ 캐시와 캐싱이란 ?먼저 캐시와 캐싱에 대해 알아봅시다 !캐시동일한 데이터에 반복해서 접근해야 하거나 많은 연산이 필요할 때, 결과를 빠르게 이용하고자 성능이 좋은 혹은 가까운 곳에 저장하는 것입니다. 즉, 캐시는 컴퓨터의 성능을 향상 시키기 위해 사용되는 메모리를 말합니다. 주기억장치와 CPU 사이에 위치하고, 자주 사용하는 데이터를 기억합니다.캐싱이 캐시 영역으로 데이터를 가져와서 접근하는 방식이며, 해당 영역을 사용하는 것을 캐싱이라고 합니다.서버의 관점에서 봤을 때 캐싱은 DB로 접근하여 가져오는 자주 사용하는 데이터를 캐시 저장소에..

[Kafka, 카프카] Kafka의 내부 구조와 데이터 파이프라인으로 적합한 이유
개발공부/Kafka2024. 12. 30. 12:15[Kafka, 카프카] Kafka의 내부 구조와 데이터 파이프라인으로 적합한 이유

Kafka의 내부 구조기존에 1:1 매칭으로 개발하고 운영하던 데이터 파이프라인은 커플링으로 인해 한쪽의 이슈가 다른 한쪽의 애플리케이션에 영향을 미치곤 했지만, 카프카는 이러한 의존도를 타파하였습니다.이제 소스 애플리케이션에서 생성되는 데이터는 어느 타깃 애플리케이션으로 보낼 것인지 고민하지 않고 이단 Kafka로 넣으면 됩니다. Kafka 내부에 데이터가 저장되는 파티션의 동장은 FIFO방식으로 큐 자료구조와 유사합니다.큐에 데이터를 보내는 것이 프로듀서이고 큐에서 데이터를 가져가는 것이 컨슈머입니다.  Kafka가 데이터 파이프라인으로 적합한 이유높은 처리량동일한 양의 데이터를 보낼 때 네트워크 통신 횟수를 최소한으로 줄인다면 동일 시간 내에 더 많은 데이터를 전송할 수 있습니다. 많은 양의 데이터..

[Kafka, 카프카] 카프카 설치 및 실행하기
개발공부/Kafka2024. 12. 17. 21:56[Kafka, 카프카] 카프카 설치 및 실행하기

회사 업무도 많고, 혼자 만들고 있는 서비스도 있고 이런 저런 공부도 하고 바쁘다 바빠 현대사회~~~~~그래도 꾸준하게 공부하기 위해 개념만 알고 서비스에 간단하게 적용만 해보았던 Kafka를 유료 강의와 함께 깊게 공부해 보려고합니다 !! 🦾 Kafka 설치하기설치 환경 : Mac OS M1카프카 버전 : 3.1.0 카프카를 설치하기 전 Java JDK를 먼저 설치해주세요 ! 3.1.0에 맞는 JDK 버전은 11이라고 합니다. 먼저 아래의 경로를 통해 .tgz 파일을 다운 받아줍니다 !  Apache KafkaApache Kafka: A Distributed Streaming Platform.kafka.apache.org 저는 강의에 맞춰 아래 파일을 다운 받았습니다 ! 다운 받은 파일의 압축을 해제..

[Java, Spring] BeanDefinitionStoreException 에러
Error2024. 11. 15. 19:19[Java, Spring] BeanDefinitionStoreException 에러

전에 만들어 놨던 클래스명에 오타가 있어 수정하고 작동을 했더니 아래와 같은 에러가 발생했다 !org.springframework.beans.factory.BeanDefinitionStoreException: I/O failure while processing configuration class [최상의 클래스] 원인클래스 경로에 포함된 설정 파일의 경로나 구성이 잘못되어 있을 경우 또는 파일이 손상되어 읽을 수 없을 때 발생할 수 있다고합니다 ! 해결방법파일이 삭제된 것이 아닌 변경된 클래스를 찾지 못하는 것 같아 build clean를 진행한 후 다시 빌드를 하니 JVM이 정상적으로 경로를 찾아 실행이 되었습니다 !

[Java, Spring] 코드 문서화를 위한 주석 규칙 알아보기
프로그래밍/Java2024. 10. 31. 12:34[Java, Spring] 코드 문서화를 위한 주석 규칙 알아보기

다수와 같이 프로젝트를 할 때 메모를 남기는 것은 필수라고 생각합니다. Swagger, Javadoc 등으로 메모한 내용들을 문서화할 수 있고, 평소에는 Swagger만 사용하다 프로젝트 내부에 조금 더 자세히 기록을 남기고 싶어 오늘은 Javadoc 코드 문서화하는 규칙을 알아보려고합니다 ! JavaDoc Tag와 작성 규칙@version구현체(클래스, 메소드, 변수 등)의 버전@author작성자@deparecated해당 구현체가 곧 삭제, 업데이트 중단을 의미@since해당 구현체가 추가된 버전@see외부 링크나 텍스트, 다른 필드나 메소드를 링크할 때 사용@linksee와 동일한 기능, 참조에 대한 링크 제공@exception발생할 수 있는 Exception을 정의@throws코드에서 throw할 ..

[Spring, SpringBoot] 다중 DB 연동하기
프로그래밍/Java2024. 10. 8. 18:46[Spring, SpringBoot] 다중 DB 연동하기

Spring Boot와 Mabatis를 사용하는 프로젝트를 진행하는 중 데이터베이스를 한 프로젝트 내부에서 두개 사용해야될 일이 생겼다.같은 서버, 같은 포트에 등록 되어 있어서(스키마만 다르다.) 쿼리 작성 시 테이블명 앞에 스키마명만 추가해주는 방법도 있지만, 추후 마이그레이션으로 인한 서버 이전과 확장성을 고려하여 DB를 다중으로 연동하기로 했다 ! 💁‍♂️ DB정보 관리하기applicatio.properties 또는 .yml 파일에 사용할 두 DB의 정보를 입력해줍니다.## main DBspring.main.datasource.driver-class-name=net.sf.log4jdbc.sql.jdbcapi.DriverSpyspring.main.datasource.jdbc-url=jdbc:log..

[Java, Spring] Linux 파일 서버 경로 연결하기
프로그래밍/Java2024. 10. 1. 15:32[Java, Spring] Linux 파일 서버 경로 연결하기

Linux Ubuntu 환경에 프론트와 백엔드 서버가 각각 배포되어있는 상태입니다.각 회원마다 등록한 본인의 프로필 이미지가 서버 특정 폴더에 저장이 되어있는 상태이고, img 태그의 src 경로를 통해 서버에 업로드 되어있는 이미지를 가져오려합니다 ! ⚙️ 프로젝트 환경Spring Boot : 2.7.14Node : 20.6.0Linux : Ubuntu 22.04 🎇 img태그 설정아래와 같이 /icon-image/를 기본 경로로 지정해 놓고 이후 회원의 이미지 파일명을 받아 서버 폴더에서 불러오려고합니다.만약 파일이 없을 경우에는 public 폴더에 저장해 놓은 기본 이미지를 띄워주겠습니다 !src에 설정해 놓은 경로로 이미지를 서버로 요청합니다.src의 서버의 실제 파일의 위치로 설정해 놓는 것은..

image