분류 전체보기
-
1. 엔터프라이즈 아키텍처 (Enterprise Architecture, EA)범위: 조직 전체 (기업 수준)목적: 비즈니스 목표와 IT 전략의 일치설명: 회사의 비즈니스 프로세스, 데이터, 애플리케이션, 기술 인프라가 전체적으로 어떻게 맞물려 돌아가는지 정의하는 가장 거시적인 설계참고 자료: https://www.gartner.com/reviews/market/enterprise-architecture-tools2. 솔루션 아키텍처 (Solution Architecture, SA)범위: 특정 프로젝트 또는 서비스목적: 비즈니스 요구사항을 기술적 해결책으로 변환설명: 특정 문제를 해결하기 위해 필요한 소프트웨어, 인프라, 보안, 데이터 관리 등을 어떻게 통합하여 하나의 완성된 시스템(솔루션)을 만들지 설..
기타 - 아키텍처의 종류1. 엔터프라이즈 아키텍처 (Enterprise Architecture, EA)범위: 조직 전체 (기업 수준)목적: 비즈니스 목표와 IT 전략의 일치설명: 회사의 비즈니스 프로세스, 데이터, 애플리케이션, 기술 인프라가 전체적으로 어떻게 맞물려 돌아가는지 정의하는 가장 거시적인 설계참고 자료: https://www.gartner.com/reviews/market/enterprise-architecture-tools2. 솔루션 아키텍처 (Solution Architecture, SA)범위: 특정 프로젝트 또는 서비스목적: 비즈니스 요구사항을 기술적 해결책으로 변환설명: 특정 문제를 해결하기 위해 필요한 소프트웨어, 인프라, 보안, 데이터 관리 등을 어떻게 통합하여 하나의 완성된 시스템(솔루션)을 만들지 설..
2026.04.23 -
문제 상황Laravel에서 SMTP로 메일 발송 시 다음 오류가 발생했다.Unable to connect with STARTTLS: stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages: error:0A000086:SSL routines::certificate verify failed원인 분석먼저 메일 서버 인증서 상태를 확인했다.openssl s_client -starttls smtp -connect office.example.co.kr:25 -servername office.example.co.kr 2>&1 | grep -E "(Verify return code|verify error)"결과:ver..
Laravel - Unable to connect with STARTTLS: stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages: error:0A000086:SSL routines::certificate verify failed 에러 해결문제 상황Laravel에서 SMTP로 메일 발송 시 다음 오류가 발생했다.Unable to connect with STARTTLS: stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages: error:0A000086:SSL routines::certificate verify failed원인 분석먼저 메일 서버 인증서 상태를 확인했다.openssl s_client -starttls smtp -connect office.example.co.kr:25 -servername office.example.co.kr 2>&1 | grep -E "(Verify return code|verify error)"결과:ver..
2026.02.05 -
기본 명령어# 특정 호스트의 주요 포트 스캔 (1000개 포트)nmap 192.168.1.1# 특정 포트만 스캔nmap -p 80,443,3306 192.168.1.1# 포트 범위 스캔nmap -p 1-65535 192.168.1.1# 서비스 버전 확인nmap -sV -p 80,443 192.168.1.1옵션 설명# === 포트 지정 ===-p 80 # 80번 포트만 검사 (nginx/apache 확인할 때)-p 80,443,3306 # 여러 포트 동시 검사 (웹+DB 서버 확인)-p 1-1000 # 1번부터 1000번까지 순서대로 검사-p- # 1~65535번 전부 검사 (시간 오래 걸림)-p U:53,T:80 # UD..
Linux - nmap 포트 스캔기본 명령어# 특정 호스트의 주요 포트 스캔 (1000개 포트)nmap 192.168.1.1# 특정 포트만 스캔nmap -p 80,443,3306 192.168.1.1# 포트 범위 스캔nmap -p 1-65535 192.168.1.1# 서비스 버전 확인nmap -sV -p 80,443 192.168.1.1옵션 설명# === 포트 지정 ===-p 80 # 80번 포트만 검사 (nginx/apache 확인할 때)-p 80,443,3306 # 여러 포트 동시 검사 (웹+DB 서버 확인)-p 1-1000 # 1번부터 1000번까지 순서대로 검사-p- # 1~65535번 전부 검사 (시간 오래 걸림)-p U:53,T:80 # UD..
2026.01.22 -
개요서버 작업을 하다 보면 DB 덤프를 떠야 하는 상황이 자주 생긴다.로컬 서버, 원격 서버, 도커 컨테이너 등 환경에 따라 명령어가 달라서 헷갈릴 때가 많아 환경별 덤프 명령어를 정리해보았다.1. 로컬 MariaDB 서버에서 DB 덤프기본 명령어mariadb-dump -u root -p database_name > backup.sql사용 예시# 특정 데이터베이스 덤프mariadb-dump -u root -p my_laravel_db > ~/Desktop/laravel_backup_20250117.sql# 모든 데이터베이스 덤프mariadb-dump -u root -p --all-databases > ~/Desktop/all_databases.sql# 특정 테이블만 덤프mariadb-dump -u roo..
Database - mariadb, mysql dump(로컬, 원격, docker)개요서버 작업을 하다 보면 DB 덤프를 떠야 하는 상황이 자주 생긴다.로컬 서버, 원격 서버, 도커 컨테이너 등 환경에 따라 명령어가 달라서 헷갈릴 때가 많아 환경별 덤프 명령어를 정리해보았다.1. 로컬 MariaDB 서버에서 DB 덤프기본 명령어mariadb-dump -u root -p database_name > backup.sql사용 예시# 특정 데이터베이스 덤프mariadb-dump -u root -p my_laravel_db > ~/Desktop/laravel_backup_20250117.sql# 모든 데이터베이스 덤프mariadb-dump -u root -p --all-databases > ~/Desktop/all_databases.sql# 특정 테이블만 덤프mariadb-dump -u roo..
2026.01.17 -
Docker 설치# 필수 패키지 설치sudo apt-get updatesudo apt-get install apt-transport-https ca-certificates curl software-properties-common# Docker GPG key 추가curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg# Docker 저장소 추가echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https..
Docker - Ubuntu 서버에 docker, docker compose 설치하기Docker 설치# 필수 패키지 설치sudo apt-get updatesudo apt-get install apt-transport-https ca-certificates curl software-properties-common# Docker GPG key 추가curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg# Docker 저장소 추가echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https..
2026.01.15 -
2021. 12. 07 기준 전기통신번호관리세칙 기반 국내 전화번호 형식 종류구분번호형식세칙 근거설명시내전화0202-XXX(X)-XXXX제7조③, 별표1서울031031-XXX(X)-XXXX제7조③, 별표1경기032032-XXX(X)-XXXX제7조③, 별표1인천033033-XXX(X)-XXXX제7조③, 별표1강원041041-XXX(X)-XXXX제7조③, 별표1충남042042-XXX(X)-XXXX제7조③, 별표1대전043043-XXX(X)-XXXX제7조③, 별표1충북044044-XXX(X)-XXXX제7조③, 별표1세종051051-XXX(X)-XXXX제7조③, 별표1부산052052-XXX(X)-XXXX제7조③, 별표1울산053053-XXX(X)-XXXX제7조③, 별표1대구054054-XXX(X)-XXXX제7조..
Js - 국내 전화번호 정규식2021. 12. 07 기준 전기통신번호관리세칙 기반 국내 전화번호 형식 종류구분번호형식세칙 근거설명시내전화0202-XXX(X)-XXXX제7조③, 별표1서울031031-XXX(X)-XXXX제7조③, 별표1경기032032-XXX(X)-XXXX제7조③, 별표1인천033033-XXX(X)-XXXX제7조③, 별표1강원041041-XXX(X)-XXXX제7조③, 별표1충남042042-XXX(X)-XXXX제7조③, 별표1대전043043-XXX(X)-XXXX제7조③, 별표1충북044044-XXX(X)-XXXX제7조③, 별표1세종051051-XXX(X)-XXXX제7조③, 별표1부산052052-XXX(X)-XXXX제7조③, 별표1울산053053-XXX(X)-XXXX제7조③, 별표1대구054054-XXX(X)-XXXX제7조..
2026.01.06 -
ACID란?ACID는 데이터베이스 트랜잭션이 안전하게 처리되기 위해 반드시 지켜야 하는 4가지 속성이다.Atomicity (원자성)트랜잭션 내 모든 작업이 완전히 성공하거나 완전히 실패해야 한다.예시: 계좌이체 시 A계좌 출금과 B계좌 입금이 모두 성공하거나 모두 취소된다. 출금만 되고 입금 실패는 불가능하다.Consistency (일관성)트랜잭션 전후로 데이터베이스가 일관된 상태를 유지해야 한다.예시: 쇼핑몰에서 주문 시 "재고수량 ≥ 주문수량" 규칙이 있다면, 재고 10개인 상품을 15개 주문하려고 하면 트랜잭션 자체가 거부된다. 트랜잭션이 완료되면 반드시 재고가 충분히 남아있는 상태가 보장된다.Isolation (격리성)동시 실행되는 트랜잭션들이 서로 영향 없이 독립적으로 실행되어야 한다.예시: 콘..
DB - ACIDACID란?ACID는 데이터베이스 트랜잭션이 안전하게 처리되기 위해 반드시 지켜야 하는 4가지 속성이다.Atomicity (원자성)트랜잭션 내 모든 작업이 완전히 성공하거나 완전히 실패해야 한다.예시: 계좌이체 시 A계좌 출금과 B계좌 입금이 모두 성공하거나 모두 취소된다. 출금만 되고 입금 실패는 불가능하다.Consistency (일관성)트랜잭션 전후로 데이터베이스가 일관된 상태를 유지해야 한다.예시: 쇼핑몰에서 주문 시 "재고수량 ≥ 주문수량" 규칙이 있다면, 재고 10개인 상품을 15개 주문하려고 하면 트랜잭션 자체가 거부된다. 트랜잭션이 완료되면 반드시 재고가 충분히 남아있는 상태가 보장된다.Isolation (격리성)동시 실행되는 트랜잭션들이 서로 영향 없이 독립적으로 실행되어야 한다.예시: 콘..
2025.12.10 -
개요락(Lock)에 대해 찾아보다 Mysql이 "자동으로 비관적 락을 건다"는 말을 발견했는데 '그럼 내가 따로 코드를 짤 필요가 없는 건가?' 싶은 마음에 헷갈려서 정리해보았다.Mysql 자동 락의 역할Mysql(InnoDB)은 UPDATE나 DELETE 실행 시 자동으로 해당 행에 락을 건다.예시: 동시 수정 방지재고를 10으로 변경하는 A 요청과 20으로 변경하는 B 요청이 동시에 실행되는 상황이다.// A 요청UPDATE products SET stock = 10 WHERE id = 1;// B 요청 (거의 동시)UPDATE products SET stock = 20 WHERE id = 1;자동 락 덕분에:A의 UPDATE 실행 중 → B는 대기A 완료 → B 실행결과: stock = 20자동 락..
Mysql - 비관적 락(Pessimistic Lock)개요락(Lock)에 대해 찾아보다 Mysql이 "자동으로 비관적 락을 건다"는 말을 발견했는데 '그럼 내가 따로 코드를 짤 필요가 없는 건가?' 싶은 마음에 헷갈려서 정리해보았다.Mysql 자동 락의 역할Mysql(InnoDB)은 UPDATE나 DELETE 실행 시 자동으로 해당 행에 락을 건다.예시: 동시 수정 방지재고를 10으로 변경하는 A 요청과 20으로 변경하는 B 요청이 동시에 실행되는 상황이다.// A 요청UPDATE products SET stock = 10 WHERE id = 1;// B 요청 (거의 동시)UPDATE products SET stock = 20 WHERE id = 1;자동 락 덕분에:A의 UPDATE 실행 중 → B는 대기A 완료 → B 실행결과: stock = 20자동 락..
2025.12.10