728x90
반응형
- [ 언어·프레임워크/Node.js ][Node.js] 시퀄라이즈로 컬럼 또는 테이블 추가 방법2024-06-11 09:56:261. 데이터 손실 없이 칼럼 추가 가능? 시퀄라이즈(Sequelize)는 DB 작업을 쉽게 할 수 있도록 도와주는 ORM 라이브러리이다. 시퀄라이즈는 모델을 통해 DB 테이블과 칼럼을 자동으로 생성해 준다. 기존 테이블에 칼럼을 추가할 경우 해당 테이블의 데이터에 손실이 발생할 수 있다. 여기에서는 데이터 손실 없이 칼럼을 추가하는 방법을 알아본다. 2. Node.js 프로젝트 생성2.1. 프로젝트 생성npm init 2.2. express 설치노드 서버를 구동하기 위해 설치한다.npm install express --save😉 공식 문서 : https://expressjs.com/ko/starter/installing.html 2.3. nodemon 설치프로젝트 코드 수정 시 자동으로 서버를 재시작하..
- [ 카테고리 없음 ][MySQL] 윈도우에서 only_full_group_by 비활성화 방법2024-06-07 16:54:161. my.ini 찾기win + r 키를 눌러 실행창이 활성화되면 "services.msc"를 입력한다. 2. only_full_group_by 비활성화기존에 작성되어 있는 sql_mode를 주석 처리한 후 아래의 코드를 복붙 한다.sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION" 3. MySQL 다시 시작 ✔️ 참고한 자료 : http://www.koreaoug.org/dbms/8354✔️ 리눅스의 경우 링크의 5-5 참조 : https://postforty.tistory.com/437
- [ CS/DBMS ][redis] 윈도우에 redis 설치2024-06-07 15:24:141. 설치 파일 다운로드마이크로소프트 깃허브에서 설치 파일을 다운로드할 수 있다.😉링크 : https://github.com/microsoftarchive/redis[그림 1]에서 Releases를 클릭하면 다운로드 가능한 파일 리스트를 확인할 수 있다. [그림 2]의 리스트에서 msi 파일을 다운로드 후 설치하면 된다. 2. redis 서버 작동 확인netstat, tasklist 명령을 이용해 아래와 같이 출력된다면 redis 서버가 6379 포트로 정상 작동 중인 것이다.2.1. cmd에서 netstat 명령으로 6379 포트 사용 여부 확인>netstat -ano | findstr :6379 TCP 0.0.0.0:6379 0.0.0.0:0 LIS..
- [ CS/Linux ]생활코딩 리눅스 : rsync(백업할 때 유용)2024-05-28 09:40:411. rsync✔️ 출처 : https://opentutorials.org/course/2598/145081.1. 새로운 디렉터리로 전송파일과 디렉터리를 동기화는 강력한 도구.mkdir -p rsync/src # 실습을 위해 디렉터리 생성cd rsync/src # 생성한 디렉터리로 이동touch test{1..10} # test1~10이라는 10개의 실습 파일 생성cd .. # 상위 디렉터리로 이동rsync -av src/ dist # rsync를 이용해 src 디렉터리의 모든 파일을 dist 디렉터리(자동 생성)에 복사# 사용한 rsync 옵션 설명# -a (archive)# 아카이브 모드 활성화.# 아카이브 모드는 디렉터리와 파일을 재귀적으로 복사함# 복사 내용은 심볼릭 링크, 파일 권한, 사용자 및..
- [ 언어·프레임워크/React Native ][React Native] 카카오맵 연동을 위한 webview 설치, React 개발자 도구 사용2024-05-23 11:27:591. 웹뷰 설치카카오맵은 웹뷰에서 띄울 수 있다.npm i react-native-webview 😉npm 문서 : https://www.npmjs.com/package/react-native-webview2. 에러 핸들링을 위한 React 개발자 도구 설치npm install -g react-devtools # 설치react-devtools # 실행
- [ CS/자료구조와 알고리즘 ][자료구조와 알고리즘] 유데미 강의 "JavaScript 알고리즘 & 자료구조 마스터클래스" 정리(섹션 17: 기수 정렬)2024-05-21 23:10:55섹션 17: 기수 정렬버블, 선택, 삽입, 합병, 퀵 정렬은 비교 정렬에 속한다. 반면 기수 정렬은 정렬할 숫자를 비교하지 않고 bucket이라는 10개의 배열(0~9)에 담았다가 병합하는 방식으로 정렬한다. 이렇게 bucket에 담았다가 병합하는 과정은 정렬할 숫자의 최대 자릿수만큼 일어난다. // 자릿수에 해당하는 숫자 반환function getDigit(num, i) { return Math.floor(Math.abs(num) / Math.pow(10, i) % 10);}// 숫자의 자리수 세기function digitCount(num) { if (num === 0) return 1; // log 계산은 지수와 밑이 같으면 1이다. // 지수가 10이기 때문에 두자리 수인 10..
- [ CS/자료구조와 알고리즘 ][자료구조와 알고리즘] 유데미 강의 "JavaScript 알고리즘 & 자료구조 마스터클래스" 정리(섹션 16: 퀵 정렬)2024-05-20 21:57:35섹션 16: 퀵 정렬이 코드는 배열에서 가장 왼쪽의 값을 피봇으로 삼는 방식으로 작성되어 있다. 피봇 값 보다 작은 값은 피봇 값 왼쪽에 위치하도록 하는 정렬 방식으로 재귀 함수를 이용해 이 과정을 반복하여 정렬한다. function pivot(arr, start = 0, end = arr.length + 1) { function swap(arr, i, j) { [arr[i], arr[j]] = [arr[j], arr[i]] } var pivot = arr[start] var swapIdx = start for (var i = start + 1; i arr[i]) { swapIdx++ swap(arr, swapIdx, i) ..
- [ 언어·프레임워크/Spring Boot ][Spring Boot][TROUBLESHOOTING] 6초 이상의 첫 로딩 시간 문제 해결2024-05-20 17:08:361. 6초 이상의 첫 로딩 시간문제백엔드는 Spring Boot, 프런트엔드는 React.js로 작성된 서비스이다. 이 서비스에 접근하면 6초 이상의-극악의-로딩 시간이 필요했다. 2. 원인크롬 개발자 도구에서 확인해 보니 전체 로딩 시간 중 5초 이상을 백엔드 API 호출이 차지하고 있었다. 백엔드 코드(서비스 클래스)를 확인해 보니 API 호출 시 GET과 UPDATE 요청이 각각 순차적으로 이루어지며, UPDATE 요청이 완료되면 GET 요청 결과를 응답하도록 작성되어 있었다. UPDATE 요청도 여러 번 시도되고 있었기 때문에 이 부분에서 병목 현상이 발생하고 있다고 보았다. 3. 비동기 처리하여 1초 미만으로 개선UPDATE 요청을 비동기 처리하여 GET 요청이- UPDATE 요청이 완료될 때..
728x90
반응형