전체 글 썸네일형 리스트형 [Kafka] 카프카(Kafka) - 프로듀서(Producer) "Kafka 프로듀서는 단순히 메시지를 전송하는 게 아니라, 성능, 신뢰성, 확장성을 조절할 수 있는 다양한 설정을 가진 강력한 구성요소입니다." 1. 프로듀서 기본 흐름Producer👉🏻send(record)👉🏻serializer👉🏻partitioner👉🏻Accumulator👉🏻Sender👉🏻Broker전송byte[]로 변환파티션 결정배치에 모음전송 send(): 메시지 전송 시작Serializer: 문자열 → byte[] 변환Partitioner: 어떤 파티션으로 보낼지 결정Accumulator: 배치 버퍼에 잠시 쌓아둠Sender: 실제 전송 담당 스레드 프로듀서의 파티션 선택 방법라운드로빈 또는 키로 선택같은 키를 갖는 메시지는 같은 파티션에 저장(같은 키는 순서 유지됨) .. 더보기 [Kafka] 카프카(Kafka) 란? 1. 카프카(kafka)?실시간 데이터 스트리밍을 처리할 수 있는 오픈소스 메시지 브로커 시스템분산 이벤트 스트리밍 플랫폼으로 대용량 실시간 데이터 스트림을 처리하고 저장하는데 사용카프카는 원래 링크드인(LinkedIn)에서 개발되었으며 현재는 아파치 소프트웨어 재단의 오픈소스 프로젝트로 관리되고 있음주로 데이터 파이프라인, 로그 수집, 실시간 분석 같은 분야에서 많이 사용 2. 주요 구성요소카프카를 이해할 때 카프카 클러스터와 카프카 전체 주요 구성요소를 구분해서 볼 수 있다.카프카 클러스터 구성요소: 브로커(Broker), 토픽(Topic), 파티션(Partition), 리플리카(Replica), 컨트롤러(controller), 주키퍼(Zookeeper)카프카 전체 주요 구성요소: 프로듀서(Prod.. 더보기 [GitHub] 깃 허브 ssh 키 생성 및 등록 1. SSH 공캐키 생성하기 1) 공개키 생성 $ ssh-keygen -t {키유형} -C "{깃허브email}" Enter file in which to save the key(): 엔터 누르기 Enter passphrase(empty for no passphrase): 암호 입력하고 엔터 누르기 Enter same passphrase again: 방금 위에서 입력한 암호를 입력하고 엔터 누르기 완료되면 콘솔에서 파일이 생성된 경로를 확인할 수 있다. cf) 키유형 더보기 RSA와 Ed25519는 각각 다른 공개 키 알고리즘으로, 주로 서명 및 인증을 위한 목적으로 사용됩니다. 키 크기와 구조: RSA: 키 크기가 상대적으로 크다. 일반적으로 2048비트나 3072비트의 키를 사용하지만, 더 큰 키도 .. 더보기 [Node.js] 노드 버전관리 NVM(Node Version Manager) 1. NVM이란? Node Version Manager의 약자로 NOde.js의 여러 버전을 관리하고 전환할 수 있게 해주는 도구 2. NVM 설치(homebrew 이용) 1) homebrew 최신 상태로 업데이트 brew update 2) nvm 설치 brew install nvm 3) Shell 설정 nvm을 사용 할 수 있도록 현재 사용 중인 쉘에 설정을 추가해야한다. 쉘은 주로 bash 또는 zsh를 사용하고 설정파일은 .bashrc, bash_profile, .zshrc 와 같은 이름임 export NVM_DIR="$HOME/.nvm" [ -s "$(brew --prefix nvm)/nvm.sh" ] && . "$(brew --prefix nvm)/nvm.sh" # This loads nvm [.. 더보기 [React] 리액트 번들러 Webpack 번들러(Bundler)는 여러 개의 파일 및 종속성을 하나의 파일로 결합하고 최적화하는 도구입니다. 리액트 프로젝트에서 번들러는 주로 JavaScript 파일들 및 다양한 리소스들을 하나의 번들로 묶어서 브라우저에서 효율적으로 로딩되도록 도와줍니다. 주요한 리액트 프로젝트에서 사용되는 번들러 중 하나는 Webpack입니다. Webpack은 모듈 번들러로서 JavaScript 파일 뿐만 아니라, CSS, 이미지, 폰트 등 다양한 유형의 파일도 처리할 수 있습니다. Webpack은 프로젝트의 각 모듈 및 종속성 간의 의존성을 해결하고, 필요한 리소스를 번들로 묶어주며, 코드를 최적화하여 성능을 향상시킬 수 있습니다. Webpack은 일반적으로 다음과 같은 작업을 수행합니다: 번들링 (Bundling): 여러.. 더보기 [React] 리액트 프로젝트 생성하기 create react-app yarn$ yarn create react-app {프로젝트명} npm$ npm create react-app {프로젝트명} npxnpx는 npm 패키지를 실행하거나, 로컬에 설치하지 않고 일회성으로 실행할 때 사용하는 도구입니다. npx를 사용하면 매번 최신 버전의 패키지를 다운로드하여 사용할 수 있습니다.$ npx create react-app {프로젝트명} 발생한 에러 npm create react-app react_templatenpx: installed 64 in 2.899sYou are running Node 12.22.12.Create React App requires Node 14 or higher. Please update your version of Node. 원인현재 사용 중인 .. 더보기 [Node.js] npm과 yarn npm과 yarn은 JavaScript 패키지 관리 도구로 프로젝트의 의존성을 관리하고 패키지를 설치하는데 사용되며 주로 Node.js 프로젝트에서 사용됩니다. npm은 Node.js의 공식 패키지 관리 도구로서, Node.js를 설치하면 함께 제공됩니다. yarn은 Facebook에서 개발한 대체 도구로, npm과 비슷한 목적으로 사용됩니다. 설치 속도: npm: npm은 패키지를 설치할 때 인터넷 연결 및 패키지 종속성 체인을 다시 계산하는 데 시간이 소요됩니다. yarn: yarn은 패키지를 더 빠르게 설치할 수 있는 캐싱 메커니즘을 갖추고 있습니다. 이미 다운로드한 패키지를 캐시에 저장하여 동일한 패키지를 다시 설치할 때 더 빠르게 진행됩니다. 보안 및 안정성: npm: npm은 패키지의 보안 검.. 더보기 [Node.js] 노드 Express 라우터(Router) 라우터(Router)는 웹 애플리케이션에서 클라이언트의 요청에 대한 적절한 응답을 처리하는 역할을 하는 부분 라우터는 URL에 따라 어떤 로직이 실행되어야 하는지를 결정하고 요청을 처리함 Node.js에서는 주로 Express.js 프레임워크 라우터를 사용함 1. 라우터 생성 및 등록 Express.js에서는 express.Router를 사용하여 새로운 라우터 객체를 생성함 const express = require('express'); const router = express.Router(); // routes-index.js var express = require("express"); var router = express.Router(); module.exports = router; 2. 라우터에 미.. 더보기 이전 1 ··· 18 19 20 21 22 23 24 ··· 82 다음