목록전체 글 (41)
공돌이의 지식 저장소

HTTP/HTTPS 서버를 구성하기 전에 http와 https에 대하여 간단히 이야기하겠다. HTTP(Hyper Text Transfer Protocol) HTTP는 인터넷에서 데이터를 주고받을 수 있는 프로토콜(통신 규약)이다. 이러한 약속이 없으면 정보를 주고 받을 때 각 정보를 이루는 데이터의 형태가 다를 수 있는데 그렇게 된다면 정보의 일관적인 처리를 할 수 없게 된다. 반대로 말하면 정보를 이루는 데이터의 형태가 일정하면 일관적인 처리를 할 수 있어 효율적이라고 할 수 있다. HTTP에 대하여 조금 더 자세하게 이야기 하면 OSI(Open Systems Interconnection) 네트워크 통신 모델의 애플리케이션 계층 프로토콜이며 여러 유형의 요청과 응답을 정의한다. 웹 사이트를 불러올 때는..
NoSQL 특징 종류 Redis, Cassandra, HBase, Firebase Realtime Database, MongoDB 등장점 RDBMS에 비해 저렴한 비용으로 분산처리와 병렬 처리 가능 비정형 데이터 구조 설계로 설계 비용 감소 = 가변적인 구조로 데이터 저장이 가능 = 데이터 모델의 유연한 변화가 가능 단점 데이터 업데이트 중 장애가 발생하면 데이터 손실 발생 가능 많은 인덱스를 사용하려면 충분한 메모리가 필요. 인덱스 구조가 메모리에 저장 데이터 일관성이 항상 보장되지 않음(즉, 데이터가 서로 일치하지 않거나 중복이 발생할 수 있음) RDBMS의 특징 종류 MySQL, MariaDB, Oracle, PostgreSQL 등 장점 스키마에 따른 명확한 데이터 구조(데이터 무결성) 보장 데이터..
핵심 에러 내용 : "Referencing column 'collaborator' and referenced column 'userId' in foreign key constraint 'boardgroups_ibfk_2' are incompatible." 원인 : 참조하는 모델 속성의 타입이 달랐음 해결 방법 : 참조하는 모델 속성의 타입을 일치시키면 된다.
오류 내용 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. (더 자세한 내용은 시스템의 정보가 있으므로 생략함) ..
이번 일주일 동안 한 일 node.js에서 미들웨어(middleware)란게 무엇인지 이해하고 코드에서 적용해보기 mongoose 사용해보기 AWS RDS를 이용한 MYSQL 클라우드 환경 DB 구축하기 일을 하며 느낀 것 이번 주차에서는 캠프에서 운영 방식에 문제가 있었다고 느꼈다. 그 이유가 캠프 내에서 강의와 강의 자료를 배포하는데 강의 자료 중에서 일부 함수가 deprecated 된 것을 사용했다던가 아니면 빠진 내용이 있다던가 해가지고 너무 시간을 날렸다. 앞으로는 강의를 믿고 듣지는 못할 것 같다. 위에 적은 이유로 인해 전체 프로젝트를 하는데 시간이 매우 촉박했다. 원래 프로그램 공부를 하다보면 궁금한 것도 생겨서 검색도 해보고 코드 내에서 어떻게 동작하는지도 관찰해보며 실력을 쌓아가야 하는..
새벽에 자료 하나를 보면서 학습을 하는데 문제가 발생하였다. 발생한 문제 MongooseError: Operation users.findOne() buffering timed out after 10000ms 해결 방법 그냥 자료에서 단순히 빼먹은 부분이 있었다. 데이터베이스와 연결하고 나서 자바스크립트 메인 실행 파일에 require을 해줘야 하는데 그 과정을 빼먹어서 발생한 오류이다.
라즈베리파이로 삽질한 내용은 나중에 서버 카테고리에서 환경설정 하는 법으로 따로 올리겠다. (아직 성공 못한 것도 있고 명령어도 하나씩 파악 중이라 시간이 걸림) 그 동안 학습한 내용은 http 통신이 어떻게 이루어지는지, 그리고 http 통신을 할 때 헤더와 바디에 어떤 정보가 담기는지, 쿠키랑 세션에 대한 개념 및 http 프로토콜 기반으로 구현하는 것을 해본 상태다. 그리고 express에 대해 많이 사용되는 메소드들에 대하여 어떻게 쓰이고 추가적으로 다른 형태로는 안쓰이는지 확인하는 시간을 가졌다. 그 과정에서 별도의 문제점은 발생하지 않았다.
이번 일주일 동안 한 일 node.js express framework 사용 흐름 익히기(+ 개인과제) 라즈베리파이 서버 구축(미완성) 일을 하며 느낀 것 서버 프로그래밍은 처음 해보는데 에러 핸들링하는 부분에서의 시간이 생각보다 오래 걸렸다. 그리고 에러 핸들링 하는 것도 생각보다 어려웠다. (그리고 코드도 더럽게 짰다) 그래도 프론트엔드의 css 만지는 것 보다는 재미있는 것 같다. 일은 아니지만 라즈베리파이 서버를 구축하며 느낀 것이 알아야 할 리눅스 명령어가 생각보다 많다는 것이다. 명령어에 대한 이해 없이 그냥 복사 붙여넣기를 하다보면 운영체제가 말을 안듣기 시작하는데 이게 어디서 생긴 문제인지 파악을 못하겠다 ㅠㅠ 특히 su, su -, sudo, sudo su, sudo su - 이것들이 너..