분류 전체보기
-
[npm] wsl2에서 npm 명령어의 반응이 느림 - 해결!node.js 2022. 2. 10. 21:54
npm 명령어 반응이 느리다. 혼자 node.js 공부를 하면서 npm을 사용할 일이 생기기 마련이었다. $ npm init npm init을 했는데 명령 수행까지 한 3~4초나 소요되는 것이다. -verbose 옵션을 주고 처리시간을 봤는데 처리하는데 실질적인 시간을 얼마 안걸리고, 명령어가 처음 실행되는 시간이 무척 오래걸렸다. 참을 수 없어서 이유를 찾아보다가 뜻밖에 장소에서 이유를 찾을 수 있었다. https://docs.microsoft.com/ko-kr/windows/dev-environment/javascript/react-on-wsl Linux용 Windows 하위 시스템에 React 설치 WSL(Linux용 Windows 하위 시스템)에 React를 설치하고 React 구성 요소와 cre..
-
[Node.js] http 서버 생성 - http.createServer() 함수node.js 2022. 2. 5. 23:19
node.js에서 http 서버 만들기 http.createServer() 함수로 request를 받고 response할 수 있는 서버(http.server) 객체를 만든다. http.createServer의 인자로 있는 callback 함수는 request, response를 인자로 하고 있으며 각각 요청과 응답에 관한 정보를 가지고 있다. 전체 코드 const http = require("http"); let app = http.createServer(function (request, response) { //응답 url const _url = request.url; //URL 객체 생성 - url의 정보를 object 형식으로 보여준다. const test_url = new URL(_url, "ht..
-
[npm] pm2 관련 자주쓰는 명령어node.js 2022. 2. 4. 22:29
PM2??? PM2 is a daemon process manager that will help you manage and keep your application online 24/7 pm2는 npm에서 설치할 수 있는 패키지로, 우리의 애플리케이션을 모니터링해주는 데몬형식의 프로세스 매니저이다. 쉽게 말하면 우리가 node.js에서 실행시키는 프로그램(프로세스)를 관리해주는 툴이라고 볼 수 있다. 여러 기능들이 있지만, 가장 유용하게 쓰이는 것은 개발할때 코드를 수정할 때마다 node 런타임을 껐다가 다시 켰어야 했는데, 이 pm2는 코드 수정을 감지하고 자동으로 수정된 코드로 다시 프로세스를 실행시켜줘서, 직접 껐다 켰다 할 필요가 없다는 것이다. 또, 예기치 않게 프로세스가 종료되었을때, pm2가 ..
-
Kafka streams로 kafka 내부 데이터 처리Kafka 2022. 1. 13. 14:16
Kafka streams Kafka Streams는 Stream API로 구축된 애플리케이션이고, 브로커와 별도로 구성된다. //Stream API : 컬렉션, 배열등의 저장 요소를 하나씩 참조하며 함수형 인터페이스(람다식)를 적용하며 반복적으로 처리할 수 있도록 해주는 기능 kafka 내부에서 메시지 파이프라인을 구성한다고 생각할 수 있다. 따라서 브로커의 특정 토픽을 구독하여 일련의 로직을 처리한 뒤에, 다시 다른 토픽으로 publish한다. 쉽게 말하면 kafka내부에 있는 데이터에 가공처리한 후 다시 다른 토픽이나 같은 토픽으로 넣어주는 역할을 한다. Kafka streams는 라이브러리로 제공되기 때문에 단순히 main 함수 내에서도 구현이 가능하고, 특정한 프레임워크에 종속되지 않을 수 있다...
-
Kafka connect로 kafka와 여러 서비스 연결하기Kafka 2022. 1. 12. 12:30
Kafka connect??? kafka connect는 kafka와 다른 데이터 시스템 사이에 데이터를 스트리밍해주는 오픈소스 툴이다. kafka connect는 쉽고 간단하게 메시지 파이프를 구성하도록 도와준다. 데이터베이스 전체를 읽을 수 있고, metrics 정보도 모을 수 있다. kafka connect 구성 connector connect 내부의 실제 메시지 파이프라인 connect에 connector를 구성할 땐 connect에 connector 관련 설정을 전달하면 됨 구성된 connector는 주기적으로 메시지를 확인하고, 새로운 메시지가 있으면 파이프라인을 통해 흘려 보낸다. Source connector 외부 애플리케이션에서 kafka로 데이터를 가져오는 역할 외부 애플리케이션 -> ..
-
Kubernetes 위에 kafka 구축 - strimziKafka 2022. 1. 11. 10:32
Kafka를 수동으로 운영하려면 수많은 구성 요소를 꼼꼼히 설정해야 하므로 일이 매우 복잡해진다. Strimzi에서 제공하는 오퍼레이터를 사용하여 Apache Kafka 설정을 순조롭게 원활히 배포한다. strimzi github page https://github.com/strimzi/strimzi-kafka-operator GitHub - strimzi/strimzi-kafka-operator: Apache Kafka running on Kubernetes Apache Kafka running on Kubernetes. Contribute to strimzi/strimzi-kafka-operator development by creating an account on GitHub. github.com ..
-
Kafka 튜닝, 최적화 방안Kafka 2022. 1. 10. 11:07
**이 글은 kafka3 이전 버전 기준으로 쓰여졌음을 알립니다 성능목표 이해 Kakfa는 사용하려는 서비스 목적에 따라 성능 목표를 크게 Throughput, Latency, Durability, Availability 네가지로 분류할 수 있습니다. 각 목표는 상호 trade-off 관계로 모든 목표를 동시에 모두 최적화할 수 없다. · Thoughput: kafka 특성상 많은 데이터를 빠르게 쓰는 것은 문제가 없음 · Latency: 하나의 메시지를 가능한 빠르게 전달 (producer -> broker -> consumer) · Durability: 메시지의 유실을 최소화, 이벤트 기반 마이크로서비스 또는 데이터 수집 파이프라인 · Availability: kafka 서버의 다운타임 최소화, 장애..
-
Oracle cloud instance에 ssh로 접속하기, 공개키 추가하기cloud computing 2021. 10. 28. 12:37
oracle instance가 생성되어 있고 접근 가능한 상태여야 합니다. oracle instance를 생성할 때, 애초에 ssh 공개키값과 개인키를 설정하면 쉽지만, window의 경우 putty를 쓰면 접근이 번거로운 경우가 있습니다. 다른 사람의 instance 에 접근할 수 있도록 추가하는 방법, putty를 쓰지 않고 접근하는 방법입니다. WSL, linux, unix로 접근하기 ssh-keygen -t rsa 이 명령어의 결과로 id_rsa와 id_rsa.pub가 생깁니다. passphrase 입력하라는게 나오는데, ssh키의 비밀번호라고 생각하시면 됩니다. 이걸 설정하면 ssh키를 쓸때마다 설정한 비밀번호를 입력해야합니다. 설정하고 싶지 않으면 그냥 enter 누르시면 됩니다. cd ~/...