개발자 14

DBA 의 컴퓨터 공부 - write throuth , write back 그리고 Postgres

기존의 MCU가 아닌 리눅스 기준으로 write throuth , write back 을 정리해보자 차이라면 아마도 디스크냐 메모리에 기입이냐 차이가 아닐지싶다.  write-through 방식은 캐시 데이터가 변경될 때 즉시 디스크에도 기록하는 방식이다. 성능은 낮지만, 데이터 일관성과 안정성을 보장하는 데 유리하다. 예를 들어, 매우 중요한 데이터를 다루는 시스템에서 write-through가 사용될 수 있다. 리눅스에서는 데이터를 캐시나 버퍼에 먼저 저장한 후, 일정 시점에 디스크로 기록하는 write-back 방식을 많이 사용한다. 이는 성능을 극대화하기 위한 것이며, 시스템 충돌이나 전원 장애 시 데이터 손실의 위험이 있을 수 있다. 그러나 데이터베이스나 파일 시스템에서 로그나 WAL을 사용해 ..

DBA의 길 2024.10.20

DBA 의 컴퓨터 공부 - 엔지니어로써 알아야 할 LINUX Memory (free -h)

Postgres 공부를 하면서 그리고 datapage , memory에 관한 공부를 진행하면서 더욱 근본적인 컴퓨터에 대해서 공부의 필요성을 느꼈다. 어쩌면 컴퓨터에서 일어나는 일이기에 당연한 것이기도하다. 컴공과 출신이 아닌 내가 지금이라도 한 번 정리해야하는건 필연적인 과정이다. 리눅스에서 메모리는 시스템 성능에 매우 중요한 역할을 한다. 메모리 자원의 적절한 관리는 시스템 안정성과 성능을 유지하는 데 필수적이다. `free -h` 명령어는 시스템의 메모리 사용 상태를 확인하는 데 유용한 도구로, 사람이 읽기 쉽게 메모리 사용량을 보여준다. 여기서는 `free -h` 명령어의 출력 항목을 기반으로 리눅스 메모리 관리에 대해 설명한다. 1. Mem (물리적 메모리) 섹션 - total (전체 메모리) ..

DBA의 길 2024.10.20

[Ansible] Control node & Managed node 설치 및 ssh 접속

Ansible 실습환경 구성 virtualBox 를 이용한 가상 환경 Virtual Machine CPU : dual core memory : 2GB 제어 노드 구성 필수요소 ★ sshd 활성화 python 3.x 버전 interpreter 설치 pip 패키지 설치 Control node 를 구성하기 위한 ubuntu 배포판 설치 및 설정 ubuntu 설치에 대해서는 따로 다루지 않겠다 특별히 주의할것은 없고 네트워크 설정에서 네트워크 브리지로 설정해주자 우분투 설치가 완료되면 다음과 같이 명령어를 입력해준다. sudo apt-get install openssh-server curl vim tree # ssh daemon 설치 # curl : text browser # vim : 확장 vi # tree ..

Python & Automation 2022.02.15

Python Strudy - day 5

자동화를 위한 Python 공부 5일차 시퀀스 자료형 - list 2 산술 내장 함수 sum() : list에 대한 합계 계산 max() : list에 대한 최소값 계산 min() : list에 대한 최소값 계산 abs() : 절대값 계산 round() : 소수점 이하 자릿수 결정 #list 산술 내장함수 원리 구현 A = [ 32.515, 62.718, 82.638, 71.376, -53.995 ] print( f'l = {A} ( {len( A )} )' ) max_number = A[0] min_number = A[0] total = 0 for i in A: if i > max_number: max_number = i if i < min_number: min_number = i total += i ..

Python & Automation 2022.01.31

Python study - day 2

자동화를 위한 Python 공부 2일차 제어문 - 알고리즘은 일처리 순서를 의미하고 알고리즘을 프로그램에 적용하기 위해 제어 구조를 구성한다. - 제어 구조 종류 순차 구조 : 명령을 순차적으로 나열한 구조 선택 구조 : 조건 판단에 따른 제어 방향을 결정하는 제어 구조 반복 구조 : 일정 횟수 또는 조건에 따라 명령을 반복적으로 수행하는 구조 - 선택 구조 if ~ elif ~ else keyword 를 사용하여 구조를 구성 if gender: if age > 20 and army: print( '나이가 20세이상이고 군대 다녀옴' ) else: print( '나이가 20세이상이고 군대 안다녀옴' ) else: print( '미필' ) - 반복 구조 - for 문 range() 함수 : 반복 횟수를 정..

Python & Automation 2022.01.26

HTTP 웹 기본 지식 정리 - HTTP 메서드

※ 본 포스팅은 Inflearn - 김영한 강사님의 'HTTP 웹 기본 지식 정리' 을 참고,공부하여 만들었습니다. HTTP 메시지 HTTP 메시지로 모든 것을 전송한다. HTML , TEXT IMAGE , 음성 , 영상 , 파일 JSON , XML 거의 모든 형태의 데이터 전송 가능 서버간의 데이터를 주고 받을 때도 대부분 HTTP 사용 HTTP 메시지 형식 A) 시작라인 a. 요청메시지 구성 request - line = method(공백)request-target(공백)HTTP-version(엔터) 리퀘스트 라인은 위의 형식을 맞춰줘야함 , 공백 엔터 등등 method : http 메서드 (GET : 요청 , 조회) / GET , POST , PUT , DELETE 등등 request-tartget..

Web 2021.09.09

HTTP 웹 기본 지식 정리 - 본격! HTTP 기본

※ 본 포스팅은 Inflearn - 김영한 강사님의 'HTTP 웹 기본 지식 정리' 을 참고,공부하여 만들었습니다. 모든 것이 HTTP ! HTTP ( Hyper Text Transfer Protocol ) HTML , TEXT , JSON ,XML 이미지 음성 등등 거의 모든 형태의 데이터가 전송 가능하다. 서버간에 데이터를 주고 받을 때도 대부분 HTTP 사용 고로 지금은 HTTP 시대라고 하는것! 우리가 알아야 하는 HTTP의 특징 • 클라이언트 서버 구조부터 파악하자 • 무상태 프로토콜(stateless), 비연결성 • HTTP 메시지 • 단순함, 확장 가능 1. 클라이언트 서버 구조부터 파악하자 요청 , 응답 의 구조 클라이언트는 서버에 요청을 보내고 응답을 대기한다. 서버가 요청에 대한 결과를..

Web 2021.09.08

HTTP 웹 기본 지식 정리 - URI 와 웹 브라우저 요청 흐름

※ 본 포스팅은 Inflearn - 김영한 강사님의 'HTTP 웹 기본 지식 정리' 을 참고,공부하여 만들었습니다. URI (Uniform Resource Identifier) 통합 자원 식별자(Uniform Resource Identifier, URI)는 인터넷에 있는 자원을 나타내는 유일한 주소이다. URI의 존재는 인터넷에서 요구되는 기본조건으로서 인터넷 프로토콜에 항상 붙어 다닌다. 그런데 URI URL URN ? 이것들의 차이점이 뭐지? URI의 하위개념으로 URL, URN 이 있다. URI 는 Resource Identifier 로써 URL 과 URN 을 포함하고 있다. URL : Resource Locator - 리소스가 있는 위치를 지정 URN : Resource Name - 리소스에 이름..

Web 2021.09.07

HTTP 웹 기본 지식 정리 - 인터넷 네트워크

※ 본 포스팅은 Inflearn - 김영한 강사님의 'HTTP 웹 기본 지식 정리' 을 참고,공부하여 만들었습니다. IP (Internet Protocol) 인터넷 프로토콜(ip)의 역할 ( 엄밀히 말하자면 IP는 인터넷 통신규약이고 아래는 ip덕분에 가능한일들 ) 지정한 IP주소에 데이터를 전달한다. 패킷(Packet) 이라는 통신 단위로 데이터 전달 IP Packet 출발IP , 목적지IP , 전송데이터 등을 담아서 패킷형태로 전송 , 누가 보내느냐에 따라 클라이언트 패킷 , 서버 패킷 으로 나뉨 IP 의 한계 비연결성 - 패킷을 받을 대상이 없거나 , 서비스불능 상태 (서버가 닫혀있거나 , 상대방 컴퓨터가 꺼져있을때) 에도 패킷 전송 비신뢰성 - 중간에 패킷이 사라지거나 순서대로 오지않을수 있다. ..

Web 2021.08.31

[Inflearn] 컴포넌트 스캔과 자동 의존 관계 주입

※ 본 포스팅은 Inflearn - 김영한 강사님의 '스프링 핵심 원리 - 기본편' 을 참고,공부하여 만들었습니다. 이 주제를 선택한 이유 , 개발자의 고충 스프링 빈을 등록할 때 자바 코드의 @Bean , XML 의 등을 통하여 스프링빈을 등록한다. Singleton 에서 참고로 사용했던 'AppConfig' 라는 DI컨테이너 내부에 '개발자'가 설정정보를 입력하여 , 빈을 등록하고 의존관계를 주입하였다. 예제차원에서는 빈으로 등록할 개수는 많지 않았기에 AppConfig에 빈과 의존관계를 주입하는게 어렵지는 않았다. 하지만, 실제 서비스 수준에서 생각해볼때 모든 객체를 AppConfig에 설정정보를 입력하여 관리하는게 과연 효율적일까? 만약 AppConfig에 등록해야할 객체를 누락한다면 ? 무엇보다..

Spring/Spring Study 2021.08.20