Topic
-
[ MongoDB ] 몽고DB 컬렉션 내 필드 전체에 update하는 방법Topic/Database 2022. 9. 1. 13:39
프로젝트를 진행하다가 기획이 수정되어 컬렉션 내 모든 곳에 필드를 추가할 일이 생겼다. 한 개를 변경하는 것은 updateOne으로 쉽게 했었는데 이번에 updateMany를 사용하게 되면서 일괄적으로 데이터를 추가하는 방법을 알아보자. updateMany의 인자는 총 3개이다. 첫번째 인자는 조회 조건을 가리킨다. 두번째 인자는 변경할 요소를 의미하고, $set 키워드를 사용하지 않는다면 작성한 내용으로 문서 전체가 변경된다. 세번째 인자는 upsert 여부와 다중으로 모두 수정할 것인지를 선택하는 옵션이다. dbName.updateMany({ lastName: LEE }, { $set: { isPass: true}}, { multi: true } ) 이렇게 작성해주면 실제 DB에서 lastName이 ..
-
AWS | EC2와 로드밸런서 연결하는 방법Topic/AWS | JENKINS 2022. 8. 30. 09:36
서로 다른 EC2 인스턴스를 생성 후 ELB를 적용 1. EC2 인스턴스 생성 ELB에 연결할 2개의 EC2 인스턴스를 생성한다. 두 인스턴스의 서브넷(가용영역) 위치를 다르게 설정하기 ap-northeast-2a 서브넷으로 지정된 첫번째 인스턴스 ap-northeast-2c 서브넷으로 지정된 두번째 인스턴스 2. Load Balancer 적용 EC2 서비스페이지에서 좌측 메뉴 하단에 로드 밸런싱->로드밸러서를 클릭해서 접속한다. classic Load Balancer를 선택한다. 로드밸런서 이름 -> next 보안 그룹 할당 기존에 생성되어있는 보안 그룹을 할당시켜줬다. 80 HTTP만 설정되어있으면 된다. 상태검사 구성 로드밸런서에 연결할 인스턴스의 헬스체크와 관련된 설정이다. 기본값으로 두고 넘어간..
-
EC2 만들고 웹스톰에서 SSH 연결해서 레포 clone받는 방법Topic/AWS | JENKINS 2022. 8. 25. 23:47
EC2 생성하고(t3.micro) 30Gb 설정 (pem파일 잘 저장해놓기) 웹스톰 Tools - Start SSH session 클릭해서 edit Host -> EC2 퍼블릭 IPv4주소 Username -> 쓰고 싶은 이름 Authentication type: Key pair Tools - Deployment - Connection 클릭 Type -> SFTP SSH configuration -> SSH session 네임 클릭 Test Connection 해보고 Root path는 /home/ubuntu 로 진행하면 된다. 우분투 접속 후 터미널에 차례대로 입력 sudo apt-get update curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0...
-
NoSQL이란?Topic/Database 2022. 6. 22. 23:35
NoSQL : NoSQL은 (non SQL 또는 non relational) 기존 RDBMs 형태의 관계형 데이터베이스가 아닌 다른 형태의 데이터 저장 기술을 의미하며, 관계형 데이터 베이스의 한계를 극복하기 위한 데이터 저장소의 새로운 형태로, 수평적 확장성을 갖고 있다. RDBMS가 클라이언트/서버 환경에 맞는 데이터 저장기술이라면, NoSQL은 클라우드 환경에 맞는 저장 기술이다. NoSQL의 특징 NoSQL은 RDBMS와는 달리 데이터 간의 관계를 정의하지 않는다. RDBMS에 비해 훨씬 더 대용량의 데이터를 저장할 수 있다. 분산형 구조이다. 고정되지 않은 테이블 스키마를 갖는다. RDBMS 와 NoSQL의 차이 RDBMS 장점 - DATA를 Column과 Row 형태로 저장 - 데이터의 분류,..
-
Node js란 무엇일까? (다시 개념정리)Topic/Node.js | server 2022. 6. 13. 23:01
Node.js Node js란 "Chrome V8 JavaScript 엔진으로 빌드된 JavaScript 런타임"이다. Chrome V8? V8은 웹 브라우저를 만드는 데 기반을 제공하는 오픈 소스 자바스크립트 엔진! 구글 크롬 브라우저와 안드로이드 브라우저에 탑재되어 있다. C++로 만들어졌고 싱글 스레드를 제공! JavaScript Engine? 자바스크립트 엔진은 자바스크립트 코드를 실행하는 프로그램! 여러 목적으로 자바스크립트 엔진을 사용하지만 대체적으로 웹 브라우저에서 사용된다. ex) Google V8 엔진 JavaScript Runtime? 런타임이란 프로그래밍 언어가 구동되는 환경으로, 자바스크립트 런타임은 자바스크립트 엔진, Web API, 콜백 큐, 이벤트 루프, 렌더 큐로 구성된다. ..
-
객체 지향 프로그래밍(Object-Oriented Programming, OOP)Topic/JavaScript 2022. 6. 8. 21:25
객체 지향 프로그래밍 (Object-Oriented Programming: OOP) 객체 지향 프로그래밍(Object-Oriented Programming, OOP)은 속성(properties)과 메소드(method)를 하나의 "객체"(class)에 묶어서 청사진을 만들고, 그 청사진을 바탕으로 인스턴스 객체(instance object)를 만드는 것을 말합니다. OOP에서 말하는 객체는 자바스크립트에 내장 객체(object)와 다르며, 클래스(class)라고 부른다. OOP는 사람이 세계를 보고 이해하는 방법을 흉내낸 방법론 OOP는 사람이 세계를 보고 이해하는 방법과 매우 흡사하다. 클래스(class)와 오브젝트 인스턴스를 실생활과 연관지어 예를 ..
-
Props Driling이란? (feat. REACT)Topic/React | Redux 2022. 5. 31. 23:53
Props Drilling이란? props drilling, 프로퍼티 내리꽂기 React 컴포넌트 트리의 일부로 데이터를 전달하기 위한 프로세스 props를 통해 데이터를 전달하는 과정에서 중간 컴포넌트는 그 데이터가 필요하지 않음에도 자식 컴포넌트에 전달하기 위해 props를 전달해야하는 과정이다. Prop Drilling의 장점 컴포넌트 간에 데이터를 전달하는 가장 쉽고 빠르게 전달 가능 컴포넌트를 잘게 분할해서 props drilling을 통해 전달하면, 코드를 실행하지 않고 정적으로 따라가는 것만으로도 어떤 데이터가 어디서 사용되는지 쉽게 파악할 수 있으며, 수정도 용이하다. (작은 규모라면..!) Prop Drilling이 야기하는 문제들 어플리케이션의 규모가 커지고, 컴포넌트의 수가 많아지면..