본문 바로가기

전체 글

[NestJs] microservice RabbitMQ 적용 - (적용) 이전 글에서 NestJs에서 microservice-RabbitMQ 개념을 설명했습니다. RabbitMQ은 docker을 통해 띄웠는데, 다른글 참조해주세요. 0. RMQ_URL과 RMQ_QUE // ex: amqp://guest:guest@localhost:5672 // RMQ 최초 아이디/비밀번호는 guest/guest RMQ_URL = amqp://{rmq id}:{rmq pw}@{host}:{port} // ex: hellow RMQ_QUE = que name 1. main.ts에서 microservice start async function bootstrap() { const app = await NestFactory.create(AppModule); const configService = ap.. 더보기
[NestJs] microservice RabbitMQ 적용 - (개념) NestJs에서 RabbitMQ를 적용한 레퍼런스가 많지 않습니다. 이전에 MSA(MicroService Architecture)를 구축했었기에, 금방할거라 생각했지만 꽤 걸렸네요. 두 글에 걸쳐서 적용하는 과정을 공유하려 합니다 NestJs는 microservice 기능을 제공한다. http단계를 넘어 transport단계까지 아우를수 있다고 한다. *transport 수단으로 RabbitMQ를 사용한다 이해하면 좋다 https://docs.nestjs.com/microservices/basics Documentation | NestJS - A progressive Node.js framework Nest is a framework for building efficient, scalable Node.j.. 더보기
[NestJs]Instead change the require of index.js in /Users/user/Desktop/url-shorter/dist/url/url.service.js to a dynamic import() which is available in all CommonJS modules. url 친화적인 난수 생성을 위해 nanoid 모듈을 사용합니다. https://www.npmjs.com/package/nanoid nanoid A tiny (116 bytes), secure URL-friendly unique string ID generator. Latest version: 4.0.2, last published: 4 months ago. Start using nanoid in your project by running `npm i nanoid`. There are 6922 other projects in the npm registry using nanoid. www.npmjs.com 그런데 아래 에러가 발생하는데요... Instead change the require of index.. 더보기
[자료구조] hash, hash table, mapping table, bloom filter, bit map 해시 해시함수(단방향 암호화)를 통해 도출된 고정된 길이의 비트 해시 테이블(=해시맵) 해시 함수를 통해 생성된 value와 원래값을 key로한 구조 가짐. 매핑 테이블 RDBS에서 N:N관계를 1:N, N:1로 징검다리 역할하는 것 블륨필터 특정 원소가 집합에 포합되어 있는지 검색 가능한 자료구조. 값이 없는데 있다고 말하는 긍정 오류는 발생하지만, 값이 있지만 없다고 말하는 긍정 오류는 발생안함. 데이터 추가는 가능하지만 삭제 불가 비트맵 디지털 이미지 저장하는 방식. 메모리 저장 방식중 한개 더보기
미묘한 차이 일본 도로는 정말 조용하지만, 가끔 난폭한 차 하나가 다닌다. 한국 시장은 정말 정있지만, 가끔 과자에 7만원을 받는다. 미국 사람은 정말 다채롭지만, 가끔 획일적이다. 보고 듣고 느낀 경험이 많을수록 미묘함을 놓치기 쉽다. 그땐 이렇게 됐어, 저땐 그렇게 됐지. 비슷한 맥락속 기억을 더듬어 이후를 예측한다. 한줄, 한마디로 판단하는 편안함에 안주한건 아닐까. 세상과 현상을 단편적으로 본게 아닐까. 경험이 쌓일수록 복기하고 의식해야 한다. 미묘함과 모호함을 구분해야한다. 더보기
[NestJs] Redis with Docker docker로 띄운 Redis terminal 접속은 아래 명령어로 가능합니다 docker exec -it redisDB redis-cli 더보기
[MongoDb] terminal 명령어 1. show dbs 전체 db 목록 가져오기 2. use db 사용. 없으면 생성 3. db.getCollectionNames() 전체 컬렉션 목록 가져오기 4. db.user.insertOne({username:"seungjin",password:"111111"} user 컬렉션에 값 추가(실 서비스에서 민감한 정보를 추가하면 안됩니다) 5.db.user.find() user 컬렉션 data 전체 보기 컬렉션, 디비 개념과 위 명령어만 알면 mysql과 유사해 금방 적응할듯합니다. 이상입니다 더보기
[NestJS] MongoDb with Docker 로컬 설치 대신 docker container을 통한 MongoDB에 대해 알아보겠다. *yml 파일 설정은 생략 yml을 통해 컨테이너를 띄우면, localhost:로 웹브라우저 접근시 아래 문구가 뜬다. 성공적으로 띄워졌다. It looks like you are trying to access MongoDB over HTTP on the native driver port. terminal에 "mongo"를 치면 접속이 안된다. 어떻게 하지? 접속하려면 docker로 먼저 container bash실행후, mongosh를 실행해야한다. // 1 docker exec -it mongoDB bash // 2 mongosh #now it is mongosh to access shell 이상입니다. *코드가 .. 더보기