일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- event loop
- elasticsearch
- Service
- 자바스크립트
- dockerfile
- K8S
- EC2
- docker
- terraform
- WSGI
- 쿠버네티스
- ansible
- leetcode
- Django
- AZ-900
- FastAPI
- asyncio
- Python
- intervals
- DevOps
- ebs
- AWS
- IAC
- Deployment
- EKS
- asgi
- Network
- Kubernetes
- AZURE
- POD
- Today
- Total
목록분류 전체보기 (171)
궁금한게 많은 개발자 노트
해당 문제는 숫자로 이루어진 배열에서, 순서와 상관없이 배열 내 숫자 중 연속되어 증가하는 숫자들이 존재하는 것들 중 가장 긴 길이를 반환하는 문제입니다. 예를 들면 [100, 4, 200, 1, 3, 2]의 배열에서는 1,2,3,4가 연속하며 증가하는 가장 긴 숫자들이므로 4가 정답입니다. 이 문제를 해결하기 위해서는 우선 배열을 오름차순으로 정렬하고 나서 보면 연속되는 부분 배열들을 살펴보면 1,2,3,4와 100 그리고 200 이렇게 세 부분 배열로 나눌 수 있습니다. 이 경우에 각 시작점의 특징은 해당 숫자보다 -1인 숫자가 배열 내에 존재하지 않는다는 특징이 있습니다. 그래서 -1인 숫자가 배열에 존재하지 않으면 시작점으로 판단하고 하나씩 증가시키며 배열에 존재할 때까지의 길이를 비교하며 제일 ..
우선 기본 코어 서버를 Django로 구축하여 사용 중에 수 많은 모듈들이 하나의 서버에 무겁게 구축되어 있는 상황에서 점점 더 코드 복잡도가 높아져 성능 개선 및 응집도 분산을 위해서 MSA로 넘어가면서, FastAPI라는 API 서버 웹 프레임 워크를 도입했습니다. FastAPI란 python 3.6이상에서 동작하는 표준 python type hint를 바탕으로한 현대적이고 빠른 API 서버 웹 프레임 워크입니다.Flask와 비슷한 구조를 가지고 있으며, 기본적으로 비동기식으로 작성되어 있어 I/O 병목현상이 자주 일어나는 웹 서버에서 빠른 성능을 보여주고 있어 python API서버로 적합하다고 생각됩니다. FastAPI의 장점은 아래와 같습니다.기존 Django는 웹 서비스를 만들기 위해 사용한다..
Django란 Python을 기반으로 웹 개발을 쉽게 할 수 있도록 도와주는 웹 프레임워크입니다. 기본적으로 로그인, 회원가입, 인증, CORS, Admin등 반복적으로 구현해야 하는 부분들은 대부분 구현이 되어있습니다.또한, Python을 사용할 수 있으므로 다양한 라이브러리들을 사용하여 손쉽게 웹 서버를 구축할 수 있습니다. Django의 장점으로는 Django에서 웹 페이지를 생성할 때 Frontend와 관련된 프레임워크(Vue, React, angular)를 사용하지 않고도 만들 수 있습니다. DTL(Django Template Language)를 사용하여 template에 html을 넣어 웹 페이지를 생성할 수도 있습니다. (Full Stack)데이터베이스와의 연동에 있어서도 ORM(Object..
해당 문제는 Node로 구성된 Graph를 그대로 복제한 그래프를 반환하는 문제입니다. 기존에 주어진 Node를 그대로 반환하면 안되고 새로 생성하여 반환해야 합니다. BFS를 사용하여 Root Node에서 출발하여 해당 노드를 복제하고, 인접한 노드들을 Queue에 추가하고 다시 반복하는 방식으로 구현하였습니다. 이 과정에서 Hash Table을 사용하여 기존 Node가 key가 되고 새로 복제된 Node를 value로 추가하여 방문한 인접노드를 중복으로 생성하거나 BFS Queue에 추가하는 것을 방지하였습니다. /* // Definition for a Node. class Node { public: int val; vector neighbors; Node() { val = 0; neighbors =..
해당 문제는 두 Linked List가 주어지고, 각 링크드 리스트의 노드는 숫자를 나타내고 있으며 각 숫자는 head 부터 tail까지 한 숫자의 각 자릿수를 나타냅니다. 두 링크드 리스트의 숫자를 더한 결과의 링크드 리스트를 반환하는 문제입니다. 일반적으로 두 수의 덧셈은 가장 아랫자리부터 덧셈이 이루어지므로 stack에 각 링크드 리스트의 숫자를 넣어 가장 아랫자리부터 나올 수 있도록 준비하고 덧셈의 결과 값도 마찬가지로 stack에 넣어 링크드 리스트로 하나씩 빼내며 만들 수 있습니다. /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(n..