반응형

프로그래밍 개발(Development) 13

MySQL 설치 및 외부 접속

ubuntu 22.04 기준으로 설치하는 방법을 정리 하였다 1. 우분투 업데이트sudo apt-get update 2. MySQL 설치sudo apt-get install mysql-server 3. 외부 접속 오픈, 서비스 자동 실행 및 시작sudo ufw allow mysqlsudo systemctl enable mysqlsudo systemctl start mysql 4. cnf 파일 수정sudo vi /etc/mysql/mysql.conf.d/mysqld.cnfcnf 파일 중 bind-address = 127.0.0.1 부분 주석 처리 5. MySQL 재시작sudo systemctl restart mysql 계정 생성과 권한 부여에 대한 부분은 아래의 글을 참고!!!2025.03.21 - [프로..

부모 - 자식 관계 테이블 설계하기(MySQL)

MySQL을 사용하여 부모와 자식간의 관계를 효과적으로 저장하는 테이블을 설계하는 방법을 설명하겠다. VMware의 host와 vm간의 관계를 예를 들어 테이블 설계VMware 환경에서는 host(부모)와 VM(자식)이 계층적인 관계를 가진다 1. 부모 - 자식 관계 테이블 설계 1) 부모테이블 (hosts)각 Host(부모)는 여러개의 VM을 가질 수 있음Primary Key(id)를 기준으로 자식 테이블(VM) 과 연결된CREATE TABLE hosts ( id INT AUTO_INCREMENT PRIMARY KEY, hostname VARCHAR(255) NOT NULL UNIQUE, ip VARCHAR(45) NOT NULL UNIQUE, cpu_cores INT NOT NU..

Python datetime 유틸리티 사용하기

Python에서 날짜와 시간을 다루는 실용적인 예제입니다.어제 날짜, 지난달, 지난주의 기간을 구하고 UTC를 KST로 변환하는 방법에 대해서 알아 보겠습니다.  필요한 라이브러리from datetime import datetime, timedeltafrom dateutil.relativedelta import relativedeltafrom dateutil.rrule import MO, TU, WE, TH, FR, SA, SUfrom pytz import timezonefrom pytz import utc 1. 어제 날짜 구하기어제의 시작 시간(00:00:00)과 종료 시간(23:59:59)을 구하는 방법입니다today = datetime.today()yesterday_start = datetime(t..

Web Server와 WAS의 차이?

웹 서버와 WAS의 차이가 무엇일까? 웹 서버는 정적 데이터, WAS는 동적 데이터를 제공한다라고 알고 있다. 웹 서버와 WAS의 기본 개념은 아래를 참고 하자. 2022.04.21 - [프로그래밍 개발(Development)/Web] - Web Server, WAS, Web Application 이란? Web Server, WAS, Web Application 이란? 웹 개발을 하다보면 Web Server, WAS, Web Application 용어를 많이 들어봤지만, 헷갈리는 경우가 있어 다시 한번 정리를 해보자. 1. Web Server(웹서버) 란? 웹 브라우저(Web Browser)와 같은 클라이언트(Client).. choco-life.tistory.com 그렇다면 먼저 정적 데이터와 동적 데..

Web Server, WAS, Web Application 이란?

웹 개발을 하다보면 Web Server, WAS, Web Application 용어를 많이 들어봤지만, 헷갈리는 경우가 있어 다시 한번 정리를 해보자. 1. Web Server(웹서버) 란? 웹 브라우저(Web Browser)와 같은 클라이언트(Client)로부터 HTTP 요청을 받아서, HTML 문서나 정적인 오브젝트(이미지 파일 등)를 전송해주는 소프트웨어이다. 즉, 쉽게 말하면 웹 페이지를 클라이언트로 전달하는 것이다. 대표적인 웹 서버는 Apache, IIS, Nginx, GWS 등이 있다. 2. Web Application Server(WAS) 란? 웹 애플리케이션과 서버 환경을 만들어 동작시키는 기능을 제공하는 소프트웨어 프레임워크이다. 인터넷 상에서 HTTP를 통해 사용자 컴퓨터나 장치에 애..

React + django Rest Framework

리액트(React, React.js 또는 ReactJS)는 자바스크립트 라이브러리의 하나로서 사용자 인터페이스를 만들기 위해 사용된다. 페이스북과 개별 개발자 및 기업들 공동체에 의해 유지보수된다. React는 싱글 페이지 애플리케이션이나 모바일 애플리케이션 개발에 사용될 수 있다. 대규모 또는 복잡한 리액트 애플리케이션 개발에는 보통 라우팅, API통신 등의 기능이 요구되는데 리액트에는 기본적으로 제공되지 않기 때문에 추가 라이브러리를 사용해야 한다. 페이스북에서 좋아요를 누르고 댓글을 달고 페메를 보내는 건 전부 한 페이지에서 이뤄진다. 넷플릭스 또한 어떤 작품을 누르든 장르 범주를 바꾸지 않는 이상 해당 페이지에서 계속해서 데이터가 바뀌고 DOM구조가 바뀐다. 지속적인 데이터 변화 및 구조가 변경되..

Python MultiProcessing Pool사용법

Array, List를 처리하는 방법으로는 for문, while문 등 루프를 이용해서 순차적으로 데이터를 처리한다. 데이터의 양이 많지 않을 경우에는 순차적으로 처리해도 무방하지만, 방대한 양의 데이터를 처리하기엔 시간이 다소 오래 걸린다. 그래서 많이 사용하는 MultiProcessing pool의 대해서 알아보자. MultiProcessing pool이란 사용자가 일정 범위 내의 Process를 지정하면, 지정한 범위 내에서 작업이 순차적으로 이루어진다. 예를 들어 100개의 작업 리스트가 있고 10개의 Process를 지정 하였다면, 순차적으로 10개를 먼저 병렬 처리 방식으로 데이터를 처리하고 먼저 종료 되는 작업이 다음 순서의 작업을 불러오는 방식이다. 작업리스트에는 순서가 있지만, 실제로 po..

입력 순서를 기억하는 Dictionary[OrderedDict]

Python을 개발하다보면 dictionary를 사용하는 경우가 많다. 많이 사용하는 방법 중의 하나가 아래와 같은 방법으로 많이 쓰이지만, x ,y, x key 값의 순서는 보존되지 않는다. test = {} test['x'] = 'x1' test['y'] = 'y2' test['z'] = 'z3' for k, v in test.items(): print (k, v) 결과를 보면 입력은 x, y, z 순이지만 결과는 y, x, z 순으로 순서의 개념이 없다. 그래서 사용되는 collections 라이브러리의 OrderedDict 클래스를 사용할 경우 입력 순서를 기억하여, 그대로 출력을 하게 된다. from collections import OrderedDict test = OrderedDict() t..

Python sort by value in dictionary list

사전형 리스트 데이터에서 value 값으로 정렬을 하는 방법을 알아보자 아래와 같이 month와 day가 key인 사전형 리스트가 있다 datelist = [ { "month": 8, "day": 22}, { "month": 8, "day": 30}, { "month": 5, "day": 9}, { "month": 9, "day": 15}, { "month": 9, "day": 29}, { "month": 12, "day": 3} ] 1. lambda를 이용한 정렬 - reverse 옵션을 추가할 경우 역정렬 - 'month' 정렬 후 'day' 정렬 시도 # 오름차순 result = sorted(datelist, key=lambda date: (date['month'], date['day'])) # 결..

반응형