본문 바로가기

분류 전체보기209

[AWS] Elastic Beanstalk(EB) 사용해서 웹 애플리케이션 배포하기 0. 개요 AWS Elastic Beanstalk는 Java, .NET, PHP, Node.js, Python, Ruby, Go, Docker를 사용하여 Apache, Nginx, Passenger, IIS와 같은 친숙한 서버에서 개발된 웹 애플리케이션 및 서비스를 간편하게 배포하고 조정할 수 있는 서비스이다. 👍 이점 빠르고 간편한 시작 개발자 생산성 적절한 규모 유지 완벽한 리소스 제어 📌 AWS Elastic Beanstalk에서 웹 앱 배포 를 보고 배포해보자! 1. 웹 애플리케이션 구축 1) 배포할 앱 생성 간단하게 nest app을 생성했다. 2) 로컬에서 실행 작동 여부를 확인했다. 2. AWS Elastic Beanstalk ✔️Create Application Elastic Beansta.. 2022. 9. 22.
[Java] 클래스와 객체, 변수와 메서드, 오버로딩, 생성자 1. 객체지향언어 ✔️ 객체 지향 프로그래밍 객체 지향 프로그래밍은 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것이다. 각각의 객체는 메시지를 주고받고, 데이터를 처리할 수 있다. (협력) 객체 지향 프로그래밍은 프로그램을 유연하고 변경이 용이하게 만들기 때문에 대규모 소프트웨어 개발에 많이 사용된다. ✔️ 특징 코드의 재사용성이 높다. 코드의 관리가 용이하다. 신뢰성이 높은 프로그래밍을 가능하게 한다.(캡슐화) ✔️ 핵심개념 캡슐화 상속 추상화 다형성 자바 언어 자바 언어의 다형성을 활용 역할 = 인터페이스 구현 = 인터페이스를 구현한 클래스, 구현 객체 객체를 설계할 때 역할과 구현을 명확히 분리 객체 설계시 역할(인터페.. 2022. 9. 17.
[Node.js] Nest.js에서 프로젝트 시작하기 0. 개요 [ 왜 Nest.js 인가 ] 이전 프로젝트에서는 Node.js에 express 프레임워크를 사용해서 개발을 해왔다. 하지만 express가 불편하다는 생각을 가지고 있었다. 명확하게 정해져 있는 구조가 없다보니 개발자마다 폴더 구조 등이 자유로웠고 가끔은 이런 것들이 꼬이기도 했다. (그리고 나는 프로젝트 문서화를 중요하게 생각하는데 Express에서는 하나하나 yaml 파일로 작성하고 있었다. 물론 express에서도 좀 더 자동화할 수 있지만 nest에서는 좀 더 간편하게 swagger 문서를 자동으로 달 수 있었다.) ( 참고 ) express에서 nest.js처럼 사용할 수 있는 방법도 있다. expresss 서버 구조 : https://jhyeok.com/node-backend-st.. 2022. 9. 14.
[AWS] Storage 서비스 [ 스토리지 종류 비교 ] S3 (Simple Storage Service) : 오브젝트 스토리지 REST 용량 무한 분산저장 데이터 저장 : 객체(Object) 객체는 버킷(Bucket) 리소스에 저장 EBS (Elastic Block Store) : 블록 스토리지 EFS (Elastic File system) : 파일 스토리지 이때, EBS와 EFS는 EC2에 마운트 시켜서 자신이 가진 볼륨처럼 보이는 스토리지다. S3는 HTTP나 HTTPS 프로토콜을 사용해서 REST API 방식으로 데이터를 저장하는 방식이다. 1. AWS RDS AWS에서 RDBMS 구성하는 방식 EC2 인스턴스에서 설치형으로 구성 AWS 완전 관리형 DB 서비스 : RDS 특징 자유롭게 확장 및 축소 가능 여러 AZ(Avail.. 2022. 9. 11.
[kakao x goorm] 구름톤(9oormthon) 후기 📌 지난 포스팅 : 링크 지난 포스팅에서 작성했듯이 카카오 구름톤에 합격했다! 그것도 400명이 넘게 지원한 해커톤에서 30명 안에! 백엔드는 총 6명이었는데 나는 그중 한 명에 들었다. 와~~ 박수👏 1️⃣일차 : 기술 교육 입구에서 출석 명단을 작성하고 머그컵과 명찰을 받는다. 귀여웡 첫날부터 옆자리에 같이 앉은 디자이너 분이 너무 재밌고 유쾌하셔서 금방 친해졌다♥️ (그리고 서로 분야를 물어봤는데 디자이너냐고 물어봐주셔서 감격했다..(?) 별 의도 없이 자연스럽게 물어본 거 겠지만 일단 기분이 좋았다(?) 큼큼) 그리고 구름톤은 진짜 의외로 I가 희귀하다. (나 개발 시작하고 E들이 이렇게 많은 거 처음이야~ 다들 재질이 비슷해~) 모두 모이면 해커톤에 대한 안내를 받고 간단한 아이스브레이킹을 한다.. 2022. 9. 1.
[kakao x goorm] 구름톤(9oormthon) 지원부터 합격, 준비까지 https://9oormthon.goorm.io/?utm_source=community&utm_medium=social&utm_campaign=goormthon&utm_content=init&utm_term=1st 첫 번째 구름톤에 초대합니다! #카카오 #구름 #제주 #해커톤 #K-Digital Platform 9oormthon.goorm.io 우선 해당 글은 해커톤 후기가 아닌 해커톤 '지원 ~ 참가 준비'까지의 제가 준비한 과정에 대해서 설명한 글입니다! 해커톤 후기는 업로드될 예정입니다! (만관부😗) 개인 회고랑 정보가 함께 포함되어 있는 글입니다. 내용이 길기 때문에 정보를 얻길 원하시는 분은 1번은 넘겨주세요. 0. 구름톤 (9oormthon) 우선 '구름'이라는 회사에 대해서 알아보자. (첫날.. 2022. 8. 21.
[SQL/Programmers] 집계함수 | MAX, MIN, COUNT, SUM, AVG, STDDEV, VARIAN 프로그래머스 문제집을 풀며 대표적인 집계함수 몇 가지를 간단히 사용해보았다. https://school.programmers.co.kr/learn/courses/30/parts/17043 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 집계함수 (Aggregate Function) 여러 행들의 그룹이 모여서 그룹당 단 하나의 결과를 돌려주는 함수 집계함수명 (ALL | DISTINCT 칼럼/표현식) - Defualt = ALL 주로 숫자 유형에 사용하며 MAX, MIN, COUNT 함수는 문자, 날짜에도 적용 가능하다. 1. MAX ([ALL|DISTINC.. 2022. 8. 15.
[자료구조] 서로소 집합 (Disjoint Sets), 사이클 판별 알고리즘 서로소 집합: 공통 원소가 없는 두 집합을 의미한다. 1. 서로소 집합 자료구조 서로소 부분 집합들로 나누어진 원소들의 데이터를 처리하기 위한 자료구조이다. 합치기 찾기(Union-find) 자료구조라고 부르기도 한다. ✔️연산 합집합(Union): 두 개의 원소가 포함된 집합을 하나의 집합으로 합치는 연산 찾기(Find): 특정한 원소가 속한 집합이 어떤 집합인지 알려주는 연산 ✔️ 동작 예시 1) 합치기 연산 1. 합집합(Union) 연산을 확인하여, 서로 연결된 두 노드 A, B를 확인한다. 1) A와 B의 루트 노드 A', B'를 각각 찾습니다. 2) A'를 B'의 부모 노드로 설정합니다. 2. 모든 합집합(Union) 연산을 처리할 때까지 1번의 과정을 반복합니다. ✔️ 기본 소스 코드 예제 #.. 2022. 8. 8.
[알고리즘] 그래프 탐색 알고리즘 DFS / BFS 탐색(Search): 많은 양의 데이터 중에서 원하는 데이터를 찾는 과정 ex) 선형 검색, 이진 검색, 너비우선탐색(BFS), 깊이우선탐색(DFS) 1. DFS (Depth-First Search) 깊은 부분을 우선적으로 탐색하는 알고리즘이다. - 스택 자료구조(혹은 재귀 함수) 이용 ✔️ 동작 예시 최대한 깊게 들어가는 형태로 동작한다. * [Step1] 시작 노드인 '0'을 스택에 삽입하고 방문 처리를 한다. * [Step2] 스택의 최상단 노드인 '0'에 방문하지 않은 인접 노드 '1', '4'가 있다. 이 중 가장 작은 노드 '1'를 스택에 넣고 방문 처리한다. * [Step3] 스택 최상단 노드인 '1'에 방문하지 않은 인접 노드 '2'를 스택에 넣고 방문 처리한다. 0->1->2->3->4 .. 2022. 8. 3.
[자료구조] 그래프(Graph) 1. 그래프(Graph) - 연결되어 있는 객체 간의 관계를 표현하는 자료 구조 - 그래프는 정점(Vertex)과 이들을 연결하는 간선(Edge)들의 집합으로 구성된다. - N:N 관계 표현이 용이하다. ✔️ 종류 : 간선(edge)의 종류에 따라 구분 무향 그래프 (Undirected Graph) 양 방향으로 이동 ex) (A,B) (B,A) 유향 그래프 (Directed Graph) 간선의 방향으로만 이동 가능 ex) 가중치 그래프 (Weighted Graph) 간선에 비용(cost) 또는 가중치(weight)가 할당된 그래프 ex) 네트워크 사이클 (Cycle) 시작 정점과 종료 정점이 동일한 그래프 비순환 그래프 (Acyclic Graph) 사이클이 없는 그래프 완전 그래프 (Complete Gr.. 2022. 8. 1.
[Linux] 파일 시스템 1. 파일 시스템 운영체제가 파일을 시스템의 디스크상에 구성하는 방식 🔺디렉토리 : 리파일과 다른 디렉토리들을 분류하기 위해 붙이는 이름 공간 : 파일과 하위 디렉토리들을 그룹으로 묶은 개념 🔺 파일 : 컴퓨터에서 의미가 있는 정보를 담는 논리적인 단위 : 주기억장치나 디스크처럼 물리적인 하드웨어 저장 공간에 저장되는 데이터의 집합 ✔️ 종류 FAT, NTFS, EXT ✔️ 디렉토리 구조 : 리눅스 파일 시스템의 디렉토리 구조는 트리(tree) 구조 $ tree 2. 소유권과 권한 ✔️ 파일 속성 ✔️ 파일의 권한 [ 권한 변경: chmod ] chmod [파일권한] [변경할 파일 위치 또는 이름] 읽기(4) 쓰기(2) 실행(1) : 777 권한은 모든 사용자가 모든 권한을 얻는다는 의미 [ 소유권 변경.. 2022. 7. 31.
[자료구조] 트리 (Tree) 비선형 구조, 그래프의 특수한 형태 중 하나이다. 1. 개념 그래프 정점(vertex)과 간선(edge)로 이루어져 있는 자료구조 방향이 있는 간선을 포함한 그래프를 유향 그래프 처음 시작한 정점으로 다시 돌아오는 경로를 '사이클' 트리 특별한 성질을 갖는 그래프를 트리로 각 노드가 하나의 부모 노드와 간선으로 연결되어있는 자료구조 가계도와 같은 계층적인 구조를 표현할 때 사용할 수 있는 자료구조 트리의 크기가 N일 때, 전체 간선의 개수는 N-1개. • 트리의 간선들은 모두 방향성을 갖는다. • 어떤 정점을 가리키는 정점의 개수는 최대 1개이다. • 어떤 정점에서 다른 정점으로 이동할 수 있는 경로는 1개다. • 트리는 사이클을 갖지 않는다. 디렉터리(폴더) -> 트리 구조 예시 이진 탐색 트리 (Bi.. 2022. 7. 29.
리눅스 기초 1. 소개 리누스 토발즈(Linus Torvalds)에 의해 만들어진 컴퓨터 운영 체제이다. ✔️ GNU 프로젝트 GNU = Gnu is not Unix 유닉스 운영체제를 여러 회사에서 각자 개발하며 소스코드를 공유하지 않는 문화에 대한 반발로 생겼다. 오픈 소스를 지향한다. kernel : 하드웨어를 제어하는 코드를 통해 소프트웨어와 커뮤니케이션을 하며 시스템의 모든 자원을 통제 관리하는 역할을 수행한다. 프로세스/메모리/파일시스템/장치관리등 컴퓨터의 모든 자원 초기화 및 제어가능 shell : 명령어 해석기라고 불리며 사용자가 입력한 명령어를 커널에게 전달하는 역할을 수행한다. 2. 종류 패키지 형식 패키지 관리자 운영체제 이름 레드햇 .rmp yum centOS 페도라(Fedora) 데비안 레드햇 .. 2022. 7. 27.
[자료구조] 연결 리스트 (Linked list) 0. 개요 순차 리스트 연결 리스트 장점 i 번째 원소의 값 접근이 빠름 연속된 값 읽기가 빠름 원소의 삽입 / 삭제가 빠름 단점 원소의 삽입 / 삭제가 느림 i 번째 원소의 값 접근이 느림 연속된 값 읽기가 느림 ✔️ 메모리 컴퓨터에는 3가지 중요한 부품 CPU 메모리(memory) : RAM 스토리지(storage) : HDD/SSD 메모리 : 속도 빠르다. 용량이 작다. 전기를 끄면 데이터가 사라진다. 스토리지 : 속도 느리다. 용량이 크다. 전기를 꺼도 데이터가 남아있다. 따라서 데이터는 기본적으로 스토리지에 저장되고 프로그램을 실행할 땐 프로그램과 데이터는 메모리로 옮겨져 CPU는 메모리에 로드된 데이터로 작업을 한다. 🚩 자료구조를 공부하는 이유: 메모리의 효율적인 사용 1. 구조 node (.. 2022. 7. 27.
[StudyJam][#3] Kubernetes로 클라우드 Orchestrating 하기 본 포스팅은 구글 스터디 잼에 참가하여 유료 플랫폼인 '퀵랩'을 무료로 제공받아 학습한 내용을 정리한 글입니다. 📚 오늘 공부할 내용 Kubernetes Engine을 사용하여 완전한 Kubernetes 클러스터를 프로비저닝 kubectl을 사용하여 Docker 컨테이너를 배포하고 관리 Kubernetes의 디플로이먼트 및 서비스를 사용하여 애플리케이션을 마이크로서비스로 분할 ✔️ 프로젝트 설정 $ gcloud config set project $PROJECT_ID ✔️ 컴퓨팅 리전 설정: 리전 내에 대략적으로 클러스터와 리소스가 존재하는 위치 $ gcloud config set compute/zone us-central1-b 한국 리전을 사용할 때는 다음 리전을 사용할 수 있다. compute/zone.. 2022. 7. 21.
반응형