일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 3000 port kill
- conda base 기본 설정
- 려려
- time wait port kill
- 티스토리챌린지
- conda 기초 설정
- conda base 활성화
- window netstat time wait 제거
- conda 가상환경 설정 오류
- 실행중인 포트 죽이기
- 오블완
- Today
- Total
모도리는 공부중
2022.02. 내 궁금증, 검색한 것들, 공부 및 개발 일기 본문
5일
주말을 이용하여 node.js/express.js/restful api 등의 이해를 완벽히 끝내놓고자 게으름 끝에 카페에 나와 공부를 시작했다. 확실히 게으름 피우는 몸은 집에 가둬둘 것이 아니라 움직여 밖으로 나와야한다는 것을 다시금 깨닫고 공부하는 중이다.
시간은 왜 이리 야속하게도 빠른지.. 오늘 공부 가능 시간이 얼마 남지 않았으므로 좀 더 열차게 공부하자.
오랜만에 전에 듣다가 말았던 sk planet youtube 강의를 다시 꺼내서 듣고 있다.
https://www.youtube.com/watch?v=SGU_UMDVEdM&list=PL9mhQYIlKEhfedWZfhcP6JCb83gDo1T9r
오늘~내일 중으로 완강하고 restful api를 빠르게 들어갈 수 있도록 노력해보자.
강의를 듣던 중에 댓글을 봤더니 도움이 될만한 글 링크가 확인되었다.
글을 읽다가 스레드 개념이 다시 한 번 궁금해져서 제대로 다시 학습하고자 또 검색
Thread(스레드): 프로세스 내에서 실행되는 작업 흐름의 단위
- 프로세스 하나 당 한 스레드를 가지는 것이 보통이며
프로세스 환경에 따라 여러 스레드를 실행할 수 있다. <- 멀티 스레딩
Thread Pool(스레드 풀): 퍼포먼스 향상을 위해 미리 스레드를 만들어 놓는 것
- 생성시 os가 요청을 받아들여 확보해준 메모리 공간에서 할당받는다.
스레드는 동일한 메모리 영역에서 생성·관리되지만
생성·수거하는 작업이 프로그램 퍼포먼스에 지대한 영향을 줄 수 있기에 미리 생성해둔다.
7일
어제 공부하던 건 퇴근하고 집에 가서 이어서 하도록 하고,
오늘은 rest api를 구성하기 위해서 api doc 작성을 할 수 있는 swagger에 대한 공부가 필요하다.
금주 중으로 rest api data push test를 해야하므로 빠르게 학습하자.
행정업무에 밀려 못했다..
행정 업무야.. 나 좀 고만 괴롭혀.
10일
어제도 궁금했던 건데 왜 사수가 npm install(재설치)하자마자 해결된 back과 front 연결 화면이 내가 테스트분석용으로 만든 로컬 back단에서는 안되는걸까? (ㅂㄷㅂㄷ)
제쳐두고, 다른 개발용 환경 back에서 npm run start를 실행하면 vuetify로 연결된다.
이것은 app.js에서 route가 index.js로 연결시켜주고, index.js는 res.render('index', { title: 'Express' }); 를 렌더한다.
index.ejs로 연결되면 Welcome to <%= title %>를 띄우도록 되어있지만 화면에 비치는 것은 front단의 HelloWorld.vue
중간에 연결해주는 무엇인가가 더 끼어있는 것인데 어떻게 빠지게 된 건지는 잘 모르겠다. 컴포넌트가 연결된 것 같은데 이건 내가 몰라도 되는 걸까.. (먼산)
내가 해야하는 것은 localhost:3000/api로 값을 보내주는 작업들이다. 해보자.
rest api 사용 규칙
http method가 항상 헷갈린다. 아직 코딩이 덜 적응돼서 그런 거겠지. 빨리 적응하자.
11일
swagger api 문서를 그냥 읽으려니 영 이해가 잘 안 가서 검색
위 글에서는 swagger-jsdoc도 설치하라고 하지만 내가 작업중인 기존 프로젝트는 swagger-ui-express 하나로 전부 작업된 것 같으니 jsdoc은 킵해두고 진행
db 연결하면서 마주친 error.
(node: 12348) UnhandledPromiseRejectionWarning: TypeError: Assignment to constant variable.
12일
https://jhonnywest.tistory.com/81
모르겠어? 궁금해? 그럼 무조건 콘솔 찍어. 를 한 번 더 깨닫게 해주었던 블로그 글. 정말 내게 큰 설명이 됐다.
conn.query(sqlQuery, (err, rows, fields) => {
if (err) {
console.log(err);
} else {
console.log(rows);
console.log(fields);
}
})
craeteconnection 함수 대신에 나는 다른 로직을 사용했기 때문에 이 부분은 또 공부가 필요하다.
아무든 database.js와 dbCofig.js를 연결해서 db 접속정보는 creatpool에 담아 conn에 연결했고,
conn.query를 이용하여 만들어놓은 sql query 변수를 함수에 담아 쿼리문과 콜백함수를 인자로 전달.
rows는 콜백함수의 인자로 행의 정보를 담는 배열이 된다. fields는 컬럼의 정보를 담는다.
rows: [
{
Email: 'modory@studying-modory.com',
PasswordHash: '2020',
Name: '모도리',
gender: '여',
Phone: '010-1234-5678',
InstituteName: '모도리는공부중'
}
]
fields: [
ColumnDefinition {
_buf: <Buffer 01 00 00 01 06 37 00 00 02 03 64 65 66 0f 74 65 73 74 5f 73 74 65 70 2d 61 64 6d 69 6e 04 75 73 65 72 04 75 73 65 72 05 45 6d 61 69 6c 05 45 6d 61 69 ... 443 more bytes>,
_clientEncoding: 'utf8',
_catalogLength: 3,
_catalogStart: 10,
_schemaLength: 15,
_schemaStart: 14,
_tableLength: 4,
_tableStart: 30,
_orgTableLength: 4,
_orgTableStart: 35,
_orgNameLength: 5,
_orgNameStart: 46,
characterSet: 224,
encoding: 'utf8',
name: 'Email',
columnLength: 400,
columnType: 253,
flags: 16388,
decimals: 0
},
ColumnDefinition {
_buf: <Buffer 01 00 00 01 06 37 00 00 02 03 64 65 66 0f 74 65 73 74 5f 73 74 65 70 2d 61 64 6d 69 6e 04 75 73 65 72 04 75 73 65 72 05 45 6d 61 69 6c 05 45 6d 61 69 ... 443 more bytes>,
_clientEncoding: 'utf8',
_catalogLength: 3,
_catalogStart: 69,
_schemaLength: 15,
_schemaStart: 73,
_tableLength: 4,
_tableStart: 89,
_orgTableLength: 4,
_orgTableStart: 94,
_orgNameLength: 12,
_orgNameStart: 112,
characterSet: 224,
encoding: 'utf8',
name: 'PasswordHash',
columnLength: 800,
columnType: 253,
flags: 0,
decimals: 0
},
...(반복 후략)
]
담겨나온 json 형태의 값을 보고 있자니, mongoDB 빨리 공부해야겠다는 생각이 든다. 정말로 mongoDB로 할 수 있는 것들은 조금 더 간단하게 처리해버리고 싶은 욕구가 샘솟는다. 우선은 mariadb로 결정했으니 당장 할 것에 집중하자.
그리고 rows를 그대로 변수에 담았더니 아주 깔끔하게 나온다.
[
{
"Email": "modory@studying-modory.com",
"PasswordHash": "2020",
"Name": "모도리",
"gender": "여",
"Phone": "010-1234-5678",
"InstituteName": "모도리는공부중"
}
]
좋다.. rows를 넣었기 때문에 중괄호가 한 번 덧씌운 상태로 들어가는구나.
14일
나는 npm install 후에 npm audit fix가 일상화되어있는데 이게 같이 작업하는 위치에서 맞는지 아닌지 잘 모르겠다. 아무튼, 나는 audit fix를 한 후에 작업을 진행했는데 상대방은 그렇지 않아서 git pull을 하기 위해 git stash를 통해 내것을 임시저장했다. 그리고 git stash pop을 하고 싶은데 그게 잘 안된다.. commit을 하라는 것 같은데 나는 상대방 것을 방금 pull했는데 뭘 commit하란 말인가.
파일 수정 내용을 head 상태로 초기화하는 방법
git checkout -- [초기화할 파일명]
위 방법을 이용했다. 이미 npm audit fix를 해버렸기 때문에 frontend의 package-lock.json에는 변화가 생겨버렸고 이것을 다시 원상복구해줘야 한다. 원복을 위해 초기화 명령어를 사용했더니 frontend/package-lock.json에 있던 M 표시가 드디어 사라졌다.
git 원격 저장소를 2개를 붙여서 관리하고자 검색 → git remote set-url
날마다 해야 안 까먹으려나..
내 작업물을 master에 merge하기 전에 원격 저장소 작업물을 먼저 pull해오려고 했는데 그걸 잊고 merge를 먼저 해버렸다. 내 작업물이 삭제되는 큰 사고가 일어나면 안되므로 ㅜㅜㅜ 급하게 서치서치.
어느 글에서는 git merge --abort를 하면 된다고 하지만 그 명령어는 coflict 상황에서만 가능한 것인지 내 상황에서는 먹히지 않았다.
fatal: There is no merge to abort (MERGE_HEAD missing).
이런 결과만 내뱉을 뿐.. 그래서 다른 글을 찾았다.
git reset --merge ORIG_HEAD
ORIG_HEAD는 이전에 작업한 곳의 HEAD를 의미한다. pull이나 merge를 한 경우 ORIG_HEAD를 남기게 되어 잘못 작업한 경우 이 명령어를 이용하면 된다고 한다.
위 글에 나오는 --option(soft, mixed, hard)은 나중에 git study 공간에서 따로 테스트하며 익혀야겠다.
15일
깃을 버전으로 관리할 수 있다는 것을 보고 신기해서 일단 킵해두기
원격 저장소 주소 바꾸고 나서 동기화 설정하는 방법까지 나와있음
나중의 나를 위해 (여기 와서 기억하고 가면 좋겠다만) 킵
16일
쿠키와 세션 활용이 필요해졌다.
Approaches to OpenAPI
- Code First a.k.a "bottoms up"
- Design First a.k.a "top down"
21일
강의를 보면서 궁금해진 yamljs
그리고 postman 이야기가 나와서 이게 뭔지 진심으로 궁금해짐
22일
강의를 듣다가 궁금해져서 Buffer.allocUnsafe에 대해 검색
https://yceffort.kr/2021/10/understanding-of-nodejs-buffer
https://runebook.dev/ko/docs/node/buffer
runebook.dev는 node.js 17.4 공식 문서를 번역한 곳인 것 같다. 확실히 상세하니 좋네.
25일
Error code - SyntaxError: Invalid shorthand property initializer
만들기 바빠서 이것도 거의 못했구나 내가..
28일
임시 비번 생성! 잘해보자.
'내 지식 정리 > 날것 그 자체' 카테고리의 다른 글
[Bitbucket] 어느 날 갑자기 bitbucket git 로그인이 풀렸다 | bitbucket app password 생성 | fatal: Invalid credentials | git pull & push error (1) | 2022.03.15 |
---|---|
2022.03. 내 궁금증, 검색한 것들, 공부 및 개발 일기 (0) | 2022.03.01 |
2022.01. 내 궁금증, 검색한 것들, 공부 일기 (0) | 2022.01.06 |
2021.12. 검색한 것들. (0) | 2021.12.13 |
[MongoDB] 학습 다이어리 (+json) (0) | 2021.12.02 |