전체 글 681

[Cloud] 클라우드 기초 개념 정리(1) : 가상화, VPC, 보안그룹, 웹 아키텍쳐 등

클라우드 일경험 프로젝트 사전 교육을 수강하며 정리한 내용입니다. 학교 전공 수업때 배웠던 내용이고, 이번 교육 때 한번 더 학습하면서 정리해보았다.목표 ) 개념을 확실히 하기 ! 1. 클라우드 컴퓨팅이란? 개념부터 가상화까지클라우드를 공부하기 전에!! 서버가 무엇인지부터 짚고 시작하겠다. 서버와 데이터센터서버는 요청을 받아 처리하고 결과를 응답해 주는 시스템 또는 소프트웨어이다.하드웨어로 보면 CPU, 메모리, 스토리지, NIC 등으로 이뤄진 장비이고, 소프트웨어로 보면 요청을 처리하는 웹 서버, DB 서버 같은 애플리케이션이다. 이런 서버와 네트워크, 스토리지, 보안장치, 냉각시설을 한곳에 모아 IT 장비가 안정적으로 동작하도록 지원하는 시설이 데이터센터다. 클라우드 컴퓨팅이란?클라우드 컴퓨팅은 인터..

DEVOPS/CLOUD 2026.10.26

[QA] CSTS 일반등급(FL) 합격 후기 (준비 방법, 정보, 후기)

준비 이유시험 본지 시간이 꽤 됐지만 뒤늦게라도 포스팅해본다. 개발자로 근무하면서 개발서버, 운영서버를 직접 테스트해보고 QA 분들과 소통하며 테스팅의 중요성을 깨닫게 되었다.QA 분들이 테스트를 진행하기 전에, 내가 먼저 체계적으로 테스트를 하면 더 업무가 효율적으로 이루어질 것이라 생각해 테스트에 대해 자세히 배워보고 싶다는 생각이 강해졌던 것 같다.그렇게 자연스럽게 해당 직무에 관심이 생기며, 자격증까지 알아보게되었다. 자격증을 따는 것은 실무를 제외하고 가장 쉽고 빠르게 해당 직무의 기초 개념을 쌓을 수 있는 방법이라 생각한다. 처음엔 ISTQB를 접했지만, 응시료가 만만치 않아(^ㅠ) CSTS로 방향을 틀었다. 시험 정보https://edu.tta.or.kr/edu/contents.do?ke..

QA 2026.09.24

[MySQL] 재귀 쿼리 (RECURSIVE CTE)

재귀 쿼리는 자기 자신을 참조하여 쿼리를 실행하는 것이다.영어로 Recursive CTE이다. CTE란?Common Table Expression의 약자WITH 문을 사용하여 만든 임시 테이블하나의 쿼리문 범위 내에서만 존재하며, 여러번 참조될 수 있는 일회성 테이블재사용이 필요한 서브 쿼리를 간결하게 표현할 때 유용 [CTE 기본 구조]WITH CTE_이름 AS ( -- CTE 내부의 쿼리 정의 SELECT ...)SELECT * FROM CTE_이름   재귀적(Recursive) CTERecursive CTE(재귀 공통 테이블 표현식)는 재귀적으로 데이터를 처리할 수 있는 CTE의 확장 버전주로 계층적 데이터(예: 조직 구조, 트리 구조)를 탐색하거나, 반복적인 계산이 필요한 경우에 사용 ..

DB 2024.12.17

[Linux] 소프트웨어 관리 명령어 정리(파일 압축, RPM, YUM)

파일 압축과 풀기 tar(Tape ARchiver)tar [파일과 디렉터리들] … : 하나의 파일로 묶기tar tvf [test.tar]: 묶여 있는 파일 미리보기tar xvf [test.tar] -C /tmp : test.tar를 /tmp에 풀기x: 파일 풀어줌, C: 풀릴 위치 지정rm -rf test.tar: tar 파일 제거star 명령어: 복사/이동 시 보안 콘텍스트 유지되게 원래 속성 유지GNU zipgzip [/root/install.log]: 파일 압축gzip -d [/root/install.log.gz]: 압축 파일 풀기gzip -r [/root]: 해당 디렉터리의 모든 파일/디렉터리 각각 압축 bzip2: gzip 보다 압축률 좋음   RPM RedHat Package Manager: ..

DEVOPS/LINUX 2024.07.30

[Linux] 관리자 명령어 - 파일시스템 보안

파일시스템 보안 명령어 정리 chroot: 어느 디렉터리를 가상의 최상위 / 디렉터리로 만들어 cd .. 했을 때 더이상 상위 디렉터리로 이동 못하게chcon: 파일 B의 보안설정이 파일 A의 보안설정과 동일하게 설정되도록chattr: 속성 변경+i : 파일 속성 변경, 추가, 삭제 등 불가lsattr: 속성 보기SetUID: 파일의 소유자 권한으로 파일을 실행chmod 명령어 뒤에 4xxx를 붙이면 설정됨setGID: 파일을 소유한 그룹의 권한으로 파일을 실행sticky bit: 이 비트가 설정된 디렉토리는 공용 디렉토리가 되지만, 파일을 소유한 사용자만 그 파일을 삭제하거나 수정할 수 있음IPC(Inter-Process Communication): 서로 다른 프로세스 간에 데이터를 주고받거나 통신을 ..

DEVOPS/LINUX 2024.07.30

[MySQL] 프로시저, 이벤트 스케줄러 만들기

프로시저란?어떠한 동작을 일괄 처리하기 위한 쿼리문의 집합으로, MySQL에서의 메서드라고 보면 된다. 함수처럼 매개변수를 받고 그에 따라 결과를 나타내는 것이 가능하다.SQL 명령의 묶음으로, 프로시저로 묶인 SQL 문 질의들은 처리될 때 하나의 쿼리로 해석된다.  프로시저 사용법DELIMITER //CREATE PROCEDURE 프로시저명(매개변수)BEGIN SQL 문1; SQL 문2;END//DELIMITER ; "DELIMITER //" 을 선언해서 기존 구분 문자인 ";" 에서 "//"로 바꿔준다.CREATE PROCEDURE로 프로시저를 등록한다.프로시저 등록을 마친 후 "DELIMITER ;"을 통해 다시 구분 문자를 ";"으로 바꿔준다. call 프로시..

DB 2024.06.01

[JAVA] 자바 메모리 구조와 static

자바 메모리 구조 메서드 영역: 클래스 정보 보관스택 영역: 실제 프로그램이 실행되는 영역힙 영역: 객체(인스턴스가 생성되는 영역) (new 키워드) 메서드 영역클래스 정보를 보관하는 영역 클래스 정보 - 클래스, 메서드 등의 실행 코드 static 영역 - static 변수 보관상수 풀 - 상수 관리 스택 영역실제 프로그램이 실행되는 영역 지역 변수, 중간 연산 결과, 메서드 호출 정보 등 힙 영역인스턴스가 생성되는 영역 객체 배열가비지 컬렉션이 이뤄지는 영역  같은 클래스에서 생성된 객체여도 인스턴스 내부 변수 값은 다를 수 있지만 메서드는 공통된 영역을 공유한다.따라서 메서드는 메서드 영역에서 공통으로 관리되고 실행된다. 멤버 변수(필드)의 종류 인스턴스 변수static이 붙지 않은 멤버 변수인스턴..

BACK/JAVA 2024.05.16

[Spring] AOP를 이용한 Request 로깅

AOP 개념에 관한 이전 포스팅https://yeoncoding.tistory.com/732 [Spring] AOP란Spring AOP 관점 지향 프로그래밍(AOP-Aspect Oriented Programming) AOP는 관점을 기준으로 묶어 개발하는 방식을 말한다. 관점(aspect)이란, 어떤 기능을 구현할 때 그 기능을 핵심 기능과 부가 기능으로 구분yeoncoding.tistory.com  AOP(Aspect-Oriented Programming)를 이용하여 HTTP 요청과 응답을 로깅했습니다. package contest.collectingbox.global.config;import jakarta.servlet.http.HttpServletRequest;import lombok.extern...

BACK/SPRING 2024.05.05

[Spring] @ExceptionHandler를 사용해 예외 처리하기

스프링은 API 예외 처리 문제를 해결하기 위해 @ExceptionHandler를 사용한 편리한 예외 처리 기능을 제공한다. 다음은 진행하고 있는 프로젝트에 @ExceptionHandler를 적용한 코드이다. @Getter @AllArgsConstructor public enum ErrorCode { // 400 NOT_SELECTED_TAG(BAD_REQUEST, "수거함 태그는 반드시 한 개 이상 설정해야 합니다."); // 404 // 409 // 500 private final HttpStatus httpStatus; private final String message; } enum 클래스를 만들어 상태 코드와 메세지를 담은 열거형을 정의한다. @Getter public class Collecti..

BACK/SPRING 2024.04.18

[JPA] 객체지향 쿼리 언어 JPQL 기본 문법

기본 문법과 쿼리 API TypedQuery, QueryMember member = new Member();member.setUsername("member1");member.setAge(10);em.persist(member);TypedQuery query1 = em.createQuery("select m from Member m", Member.class);TypedQuery query2 = em.createQuery("select m.username from Member m", String.class);Query query3 = em.createQuery("select m.username, m.age from Member m"); // 타입 정보를 받을 수 없을 때  결과 조회 APIMember si..

BACK/JPA 2024.04.08
반응형