일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 도커 컨테이너
- 컴퓨터공학과
- HTTP/0.9
- gunicorn
- http 메소드
- 프론트엔드
- 도커기본개념
- HTTP/1.0
- HTTP/3.0
- Nginx개념
- HTTP버전
- Javascript
- IT
- 자바스크립트
- Nginx
- HTTP/2.0
- 코딩테스트
- Jupyter notebook
- 도커명령어
- docker
- JavsScript
- CS
- HTTP
- Python
- CS기술면접
- 운동
- 백준
- 컴퓨공학과
- 헬스
- 취준생
- Today
- Total
목록IT (20)
dogo_ day
REST API 란? REST API: Representational State Transfer Application Programming Interface 웹 서비스에서 자주 사용되며, 클라이언트와 서버 간의 통신을 위한 인터페이스로 사용된다. 다양한 리소스(데이터 또는 서비스)를 URI로 표현하고, HTTP Method(GET, POST, PUT, DELETE 등)를 사용하여 해당 리소스에 대한 액션을 수행한다. URI: Uniform Resource Identifier 인터넷 상에서 특정 자원을 나타내는 유일한 주소이다. URL(Uniform Resource Locator)은 URI의 하위 개념으로, 인터넷 상에서 특정 자원의 위치를 나타내는 주소이다. 즉, 모든 URL은 URI지만 모든 URI가..
개인적인 생각이지만 IT용어에 대한 개념을 배울 땐 역시나 등장배경을 알면 좋은 것 같다. Nginx에 대해서는 이미 글을 올려두었으니 보고 오는 것을 추천한다. Nginx 란? Nginx 란? 높은 성능과 확장성을 갖춘 오픈 소스 웹 서버 소프트웨어이다. Igor Sysoev에 의해 개발되었으며, 현재는 Nginx Inc.가 관리하고 있다. Nginx는 경량화된 디자인과 이벤트 기반 아키텍처를 가 lucky-dev.tistory.com 등장배경 초창기에는 웹서버로 정적파일들만 주고받았다. 이후 클라이언트의 요청이 다양해지고 복잡해지면서 동적 파일에 대한 요청이 발생했다. 그래서 스크립트를 서버에 저장하고 요청에 따라 스크립트를 실행시켜 결과를 반환해주는 아키텍처가 필요했고 웹 어플리케이션 서버라는 개념..
Nginx 란? 높은 성능과 확장성을 갖춘 오픈 소스 웹 서버 소프트웨어이다. Igor Sysoev에 의해 개발되었으며, 현재는 Nginx Inc.가 관리하고 있다. Nginx는 경량화된 디자인과 이벤트 기반 아키텍처를 가지고 있어 많은 웹 트래픽과 연결을 효율적으로 처리할 수 있다. 정의만 이야기하면 재미가 없으니 Nginx의 탄생배경도 알아보자 Apache(아파치)를 많이 들어보았을 것 이다. 아파치는 웹 서버 소프트웨어로, 초창기에는 인터넷 상에서 웹 페이지를 제공하는 역할을 했다. 아파치 특징 1. prefork 형식 : 요청 전 프로세스를 미리 생성하는 컨셉으로 동적 컨텐츠 처리 가능 및 확장성(다양한 모듈을 생성->서버에 빠르게 추가 가능) 2. 프로세스가 많다 : 메모리 부족 현상 발생 3...
Docker 란? 2013년 3월 Docker, Inc에서 출시한 오픈 소스 컨테이너 프로젝트이다. 현재 전 세계적으로 큰 인기를 끌고 있으며 컨테이너 분야에서 사실상 표준으로 자리 잡았다. 로컬pc와 개발서버와의 인프라환경의 가변성에 대한 문제를 해결하기 위해, 개발환경 세팅에 대한 근본적인 여러 문제들해결 하기 위함도 있다. 그리고 리눅스/유닉스 환경에서 오랫동안 사용해왔던 쉘 스크립트로 설치 및 설정 자동화를 구현해도 되지만 이것도 한계(복잡한 설정 및 사소한 설정 하나가 운영체제와 서비스의 안정성에 큰 영향을 미침)가 있었고 이를 해결하기 위한 패러다임으로 도커가 탄생되었다. 즉, 컨테이너화된 소프트웨어 프로젝트에서는 모든 개발 작업이 Docker Container안에서 이루어진다. 개발자의 로컬..
IT일을 하다보면 데이터를 다룰 일이 빈번하게 생긴다. 보이는 것만 보인다는 이야기가 있다. 지금 까지 나는 데이터를 다루는 것은 데이터베이스를 통해야만 할 수 있다고 생각했다. 그리고 비정형데이터를 다루는 일은 데이터베이스를 사용하여 처리 하기엔 한계가 있다. python을 이용하자. python 라이브러리 pandas를 이용하자. Jupyter Notebook을 이용하자. 여러 패키지들의 버전을 관리해주는 anaconda를 이용하자. Jupyter Notebook 이란? 코드 작성, 시각화 및 문서 작성이 가능한 대화형 환경을 제공하는 도구 개인적으로 사용하든, 업무적으로 사용하든 나는 사용 환경(공간)에 제약받는 것을 싫어한다. 언제나 어디서나(피카츄가 옆에있어,,,,😇) 작업할 수 있도록 dock..
Python은 무엇인가? 정의는 다음과 같다. Phython은 웹 애플리케이션, 소프트웨어 개발, 데이터 과학, 기계 학습(ML)에 널리 사용되는 프로그래밍 언어입니다. 개발자는 Python이 효율적이고 배우기 쉬우며 여러 플랫폼에서 실행될 수 있으므로 Python을 사용합니다. Phython 소프트웨어는 무료로 다운로드할 수 있고, 모든 유형의 시스템과 원활하게 통합되며, 개발 속도를 증가시킵니다. //출처 : https://aws.amazon.com/ko/what-is/python/ Django란 무엇인가? Django는 웹 애플리케이션을 효율적으로 빠르게 개발하는 데 사용할 수 있는 소프트웨어입니다. 대부분의 웹 애플리케이션에는 인증, 데이터베이스의 정보 검색, 쿠키 관리 등의 몇 가지 공통적인 기..
🔅알고리즘 난이도 Lv. 2 🌈문제풀이 Map객체를 사용할 수 있다면 쉽게 문제를 해결 할 수 있다. 이름의 중복이 없다는 가정하에 이름-가입순서로 Map을 생성한다. 그리고 sort를 사용하여 정렬을 할 때 나이가 같다면 Map객체에서 가입순서를 가지고와서 정렬의 기준으로 삼는다. let fs = require('fs'); let input = fs.readFileSync('/dev/stdin').toString().split('\n'); let n = Number(input[0]); let client = []; for(let i = 1; i { if(a[0] != b[0]) return a[0] - b[0] else return joinMap.get(a[1]) - joinMap.get(b[1]); ..
🔅알고리즘 난이도 Lv. 2 🌈문제풀이 문제를 이해하기가 조금 난해했다. N개의 좌표 Xn을 좌표 압축을 적용했을 때 새로운 좌표 X`n이 생성된다. X'n의 좌표는 새로운 특징을 가지고 있다. X' i번째 좌표의 값은 i번째 X좌표 > j번째 X좌표 를 만족하는 개수이다. 즉, X좌표에서 가장 작은 값은 새로운 좌표에서는 0의 값을 가진다. 그 다음 작은 값은 새로운 좌표에서느 1의 값을 가진다. 정렬을 이용하면 해결할 수 있는 알고리즘이다. Set과 Map을 활용하면 문제를 해결 할 수 있다. let fs = require('fs'); let input = fs.readFileSync('/dev/stdin').toString().split('\n'); let n = Number(input[0]); l..