진짜 대충 그린 그림...이런 아키텍처를 만들어볼 것이다.1. nginx (10.10.10.10)1) ngnix 설치apt updateapt install -y nginx 2) nginx 설정vi /etc/nginx/sites-enabled/default 설정 파일 들어가서 아래 내용 붙여넣기 (필요 없는 주석들 다 지운 상태)이때, tomcat_backend 서버 IP 주소에는 내가 설정할 톰캣 서버 IP 주소를 입력해야 한다.upstream tomcat_backend { server 10.10.10.40:8080; server 10.10.10.50:8080;}server { listen 80 default_server; listen [::]:80 d..
전체 글
DB 서버 핫 사이트 구성해보기마스터 (Active) 설정 - (10.10.10.124)1) keepalived 설치apt install -y keepalived 2) keepalived 설정 파일 생성vi /etc/keepalived/keepalived.conf 안에 내용 작성 interval 5 , fall 4, rise 2=> 5초에 한 번 확인하는데, 4번 실패하면 중단되게 하라global_defs { router_id node01 enable_script_security script_user root}vrrp_script track_mariadb { script "systemctl is-active mariadb" interval 5 fall 4 rise 2..
HAProxy로 DB 서버 부하분산준비haproxy 서버 1대 (haproxy 설치)DB 서버 2대 (mariadb 설치, user 생성 후 권한 부여)haproxy 서버vi /etc/haproxy/haproxy.cfg 맨 밑줄에 다음 내용 추가 DB 서버이기 때문에 포트 번호는 3306번으로 하고, server에는 만들어둔 DB 서버 두 개의 IP 주소를 추가한다.listen stats bind *:9000 mode http option dontlog-normal stats enable stats realm Haproxy\ Statistics stats uri /statslisten mariadb bind :3306 mode tcp balance..
재해 복구 (DR)Mirror Site (미러 사이트): 주 센터와 동일한 수준의 데이터와 시스템을 원격지에 구축하고 Active 상태로 실시간 동시 서비스를 제공하는 방식 Hot Site (핫 사이트): 주 센터와 동일한 수준의 데이터와 시스템을 원격지에 구축하여 Stand-by 상태로 유지하며 재난 발생 시 Active 상태로 전환하여 서비스 제공 Warn Site (웜 사이트): 데이터만 원격지에 보관하고 서비스를 위한 시스템은 확보하지 않거나 최소한으로만 구성하고 재난 발생 시에 필요한 시스템을 구성하여 복구 Cold Site (콜드 사이트): 최소한의 준비만 해두는 것 기존 데이터를 양쪽과 똑같이 설정 (백업, 복구)DB 데이터 백업mysqldump -u root -p --all-databas..
TCP 프로토콜인터넷에 연결된 컴퓨터에서 실행되는 프로그램 간 통신을 안정적으로, 순서대로, 에러 없이 교환할 수 있게 한다.중요한 데이터를 안전하게 주고 받을 때 사용한다.UDP 보다 느리다.날아가면 안 되는 데이터를 통신할 때 사용 (ID, PW 등) TCP 플래그: 보낼 때 양식 종류Ack와 Syn이 제일 중요함 !U : Urgent - 긴급 bitA : Acknowledgment - 승인 bitP : Push - 밀어넣기 bitR : Reset - 초기화 bitS : Syn - 동기화 bitF : Fin - 종료 bitUDP 프로토콜일반적으로 오류의 검사와 수정이 필요 없는 프로그램에서 수행할 것을 가정으로 한다.전송 방식이 단순해서 서비스의 신뢰성이 낮고, 데이터그램 도착 순서가 바뀌거나 중복되..
컴파일 언어개발자가 작성한 코드를 실행하려면 컴파일이라는 과정을 거쳐서 실행 파일로 만든 후 실행=> 소스코드를 컴파일이라는 과정을 거쳐서 운영체제에 맞는 실행 파일로 바꿔줘야 한다. 인터프리터 언어개발자가 작성한 코드를 실행하려면 인터프리터에서 실행해야 한다.=> 인터프리트 언어는 운영체제에 맞는 인터프리터가 설치가 되어 있어야 실행할 수 있다. 컴파일: 운영체제에 맞는 실행 파일로 바꾸는 과정윈도우 운영체제면 윈도우에 맞는 실행파일로 바꿔야 소스코드를 실행할 수 있다.리눅스 운영체제면 똑같은 코드여도 리눅스에 맞는 실행 파일로 바꿔야 한다.윈도우 실행파일은 리눅스에서 실행 못 한다.컴파일을 하면 원래 소스코드로 돌리기 힘들다. (원래 코드를 못 본다.)자바자바 코드를 실행시키려면 컴퓨터에 자바가 깔려..
JMeter 설치공식 사이트https://jmeter.apache.org/ Apache JMeter - Apache JMeter™Apache JMeter™ The Apache JMeter™ application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to othjmeter.apache.org 설치를 하고 bin 폴더에 jmeter.bat 파일을 실행하면JMeter 프로그램 창이 뜬다. ..
성능 체크하는 방법1. EXPLAINEXPLAIN SELECT문;EXPLAIN SELECT * FROM customers; SELECT 앞에 EXPLAIN을 붙이면 데이터를 얼만큼 찾아보고 찾아냈는지, 찾아본 데이터의 수가 총 몇 개인지 설명해준다. LIMIT이나 WHERE를 사용해도 전체 데이터를 조회한다.=> 조건이 맞는지 안 맞는지 마지막 데이터까지 확인해보기 때문에, 어떤 조건을 달아도 결국 데이터를 다 찾아보게 된다. 2. 프로파일링 (profiling)SET profiling = 1; # profiling 기능 켜는 설정SELECT * FROM customers WHERE country = 'USA';SELECT * FROM post WHERE createdAt > '2024-12-02';..
11.25 ~ 11.292주차 회고를 시작하기에 앞서,,,11월 3주차 우수 회고자로 선정되었다 헤헤😎기프티콘이.. 제 생각보다 좋아서.... 아주 잘 썼답니다앞으로 계속 꾸준히 써보기로 다짐했다,, 목표는 끊기지 않기!이번 주에 배운 내용들웹 서버, 웹 어플리케이션 서버(WAS), DB 서버 연동 실습DBMS란? / ERD 다이어그램 / 관계 데이터 모델Git이란? / Git 사용법정규화란? / 정규화 과정형상관리SQL 연습 (윈도우 MySQL Workbench) 마크다운 사용법 정리 워드프레스 서버 - DB 서버 연동 실습 UML 다이어그램 (유스케이스, 클래스) SQL 문법 객체 지향 / 데이터 모델링 SQL 코테 문제 풀어보기 (프로그래머스) 데이터베이스란? / DB 서버 실습컴파일 언어 VS ..
[Level 1] - 조건에 부합하는 중고거래 댓글 조회하기 https://school.programmers.co.kr/learn/courses/30/lessons/164673 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 22년 10월에 작성된 글을 조회하는 것이기 때문에 WHERE 절에 LIKE로 2022년 10월을 넣어주고,댓글 작성일 기준으로 오름차순, 작성일이 같다면 게시글 제목을 기준으로 오름차순 하라고 했기 때문에ORDER BY 댓글 작성일, 게시글 제목 으로 정렬 우선순위를 지정해준다.SELECT USED_GOODS_BOARD.TITLE, USED_GOODS_BOARD.BOARD_ID, ..