일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Nest.js
- Bull
- game
- react
- GIT
- Queue
- Dinosaur
- OCR
- nodejs
- Sequelize
- Python
- typeORM
- 게임
- MongoDB
- AWS
- TypeScript
- 정렬
- nestjs
- cookie
- flask
- MySQL
- JavaScript
- dfs
- 자료구조
- Express
- 공룡게임
- mongoose
- class
- jest
- Today
- Total
목록분류 전체보기 (651)
포시코딩
https://cchoseonghun.github.io/OCR_Helper OCR Helper Camera Upload Reset Preview Default Grayscale OTSU Change Excel Download cchoseonghun.github.io https://github.com/cchoseonghun/OCR_Helper GitHub - cchoseonghun/OCR_Helper: Free Online OCR Free Online OCR. Contribute to cchoseonghun/OCR_Helper development by creating an account on GitHub. github.com 진행기간 2023년 6월 21일 ~ 7월 27일(약 한달) 기능 인식을 위한 이..
process.exit() // process.exit(code) process.exit(0) process.exit(1) 동기적으로 프로세스를 종료시키는 코드 파라미터는 '종료 코드'를 나타낸다. 종료 코드의 default 값은 0 종료 코드가 생략되거나 0이면 '성공' 1인 경우 '실패'와 함께 종료된다. 문자열 정수 가능 해당 코드를 통해 프로세스를 종료시킬 수 있지만 공식문서에서는 이벤트 루프에서 보류 중인 추가 작업이 없으면 Node.js 프로세스는 자체적으로 종료되기 때문에 직접 호출하지 말고 이벤트 루프에 대한 추가 작업을 예약하지 않음으로써 프로세스가 자연스럽게 종료되도록 설정하는 것을 추천하고 있다. process.exitCode() process.exitCode = 1; process..
개요 이런 질문을 받은 적이 있다. cpu에서 연산에 시간이 걸리는(약 10초 이상) 함수 A와 setTimeout에 의해 3초 뒤 실행되는 함수 B, 6초 뒤 실행되는 함수 C 이렇게 세 함수가 실행될 때 3초 뒤, 6초 뒤 실행되는 함수 B, C는 실질적으로 처음 기준 몇 초 뒤에 실행될까요? 당시에는 이벤트 루프의 동작 방식에 대해 어느정도 알고 있다 생각했기에 A 함수가 CPU 연산이 될 동안 (10초) Web API에 의해 B, C의 타이머가 따로 진행되서 이미 3초, 6초가 지나버려 callback queue에 B, C의 콜백 함수가 들어오고 call stack에서 A 함수가 pop되는 순간 바로 B, C의 콜백 함수가 실행되어 결과적으로 함수 실행 후 10초 뒤 A, B, C 출력이 연속으로..
설치 brew install nginx 설치 확인 brew services list 세팅 cd /usr/local/etc/nginx rm -rf nginx.conf vi nginx.conf nginx.conf.default 파일이 있기 때문에 그냥 편하게 지우고 다시 만들기 nginx.conf 파일 수정 worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; upstream backend { server localhost:8080; server localhost:8081; } server { listen 80; location / { proxy..
개요 면접 보다가 어느 개발자분께서 내 프로젝트에 대해 아주 흥미로운 질문을 한 적이 있다. "Bull과 Event-Emitter를 통해 동시성 문제를 해결하셨다고 했는데 만약 서버가 여러 대라면 그대로 동작할까요?" 잠시 생각해보니 Job을 생성하고 대기하는 service와 Job을 감지하고 꺼내 쓰는 consumer 및 service가 각기 다른 서버에서 동작할 경우 둘 다 길을 잃어 제대로 동작하지 않겠구나란 생각을 했다. 한번도 고려해보지 않은 문제라 솔직하게 생각해보지 않았고 따로 한번 알아보겠다고 했던 기억이 난다. 면접이 끝난뒤부터 이 숙제는 계속 날 따라다녔다. 해당 문제를 어떻게 구현시킬까? 서버를 한 대 더 배치한 후 로드 밸런싱을 통해 테스트해봐야 하나? 그럼 local로 동작하는 R..
개요 오랜만에 Jest를 통해 테스트 코드를 작성하던 중 mockImplementation과 mockResolvedValue의 쓰임새에 대해 헷갈려 정리할 겸 포스팅 mockImplementation const mockResult = new Promise((resolve, reject) => { resolve({ message: '참여 성공' }); }); jest.spyOn(meetupsService, 'join').mockImplementation(() => mockResult); 모의 함수를 직접 구현할 때 사용한다. mockResolvedValue const mockResult = new Promise((resolve, reject) => { resolve({ message: '참여 성공' });..
개요 새로운 프로젝트를 만들기 앞서 '최고의 튜닝은 순정이지' 라는 생각으로 (사실은 추가적인 러닝 없이 사용할 수 있는) npm을 사용했지만 yarn을 사용해볼까 했다. 이왕 쓰는거 yarn 최신 버전으로 업그레이드하고 쓸려고 검색을 좀 하는데 내가 알던 yarn은 1.x 버전에서 더 이상 지원하지 않고 yarn-berry를 yarn2로써 사용하고 있다는 것이었다. 자, 그럼 PnP 지원 등의 이유로 yarn 대신 yarn-berry를 쓴다는건 알았다. 여기서 추가로 pnpm에 대해서도 새롭게 알게 되었고 아래 글들을 통해 어느정도 차이점들을 확인할 수 있었다. 비교 고맙게도 비교적 최근인 작년 기준으로 패키지 매니저들을 비교해 작성된 글들이 꽤 있었고 다음과 같다. https://velog.io/@s..
https://nangman14.tistory.com/27 Onclick vs AddEventListener 어떤 것을 사용해야 할까? Onclick과 AddEventListener 라는 비슷한 메소드 중 어떤 것을 사용해야 할까? 우선 Onclick() 메소드는 다음과 같이 사용할 수 있다. 1 element.attachEvent('onclick', function() { /* do stuff here*/ }); attachEvent() 메소드 nangman14.tistory.com https://ko.javascript.info/bubbling-and-capturing 버블링과 캡처링 ko.javascript.info
개요 자료구조를 공부할 때 파이썬이 다루기 쉽다해서 자료구조, 알고리즘은 파이썬으로만 해왔는데 얼마전, 토스 코딩테스트에서 node.js 부문에 대해 문제를 봤을 때 오로지 JavaScript로만 풀 수 있게 되있는걸 볼 수 있었다. 문제를 풀 수 있고 없고를 떠나, 앞으로 node.js 관련 개발을 베이스로 깔고 갈텐데 자료구조나 알고리즘을 JavaScript로 다루지 않는다는게 좀 웃긴거 같아서 당분간은 죽이되든 JavaScript로 연습해볼 생각이다. Queue class Node { constructor(data) { this.data = data; this.next = null; } } class Queue { constructor() { this.head = null; this.tail = n..
개요 여러 개의 문자열 중 특정 문자열을 찾을 때 효과적인 트라이(Trie) 자료구조에 대해 알아보자 먼저, 이름은 retrieval(검색) tree에서 따왔다 정도의 유래가 있는듯하다. 위에서 말한바와 같이 여러 개의 문자열 중 특정 문자열을 찾을 때 하나하나 확인한다면 O(n) (n은 list의 길이)의 시간복잡도를 가지거나 정렬 후 이진 탐색을 사용한다면 O(nlog n)의 시간복잡도를 가지는 반면, 트라이의 경우 최선일 경우 O(1), 최악일 경우에도 O(m) (m은 문자열의 길이) 안에 할 수 있다고 한다. 따라서, 문자열이 아주 길거나 자동 완성 및 검색어 추천 기능 등에서 Trie 자료구조를 통해 효과를 볼 수 있다. 형태 문자열 집합 {'rebro', 'replay', 'hi', 'high..