분류 전체보기
[TIL] Interrupt 란?
인터럽트란? (Interrupt) CPU가 프로그램을 실행하고 있을 때, 입출력 하드웨어 등의 장치나 예외상황이 발생하여 처리가 필요할 경우에 CPU에게 알려 처리할 수 있도록 하는 것을 말한다. CPU가 어떤 프로그램을 순차적으로 수행하는 중에 외부로부터 인터럽트 요구가 들어오게 되면, CPU는 원래 프로그램의 수행을 중단하고, 인터럽트를 먼저 처리해준다. 인터럽트 처리가 끝나면 원래의 프로그램으로 복귀한다. 인터럽트가 필요한 이유? 하나의 CPU에서는 매 순간 하나의 프로그램만 실행시킬 수 있다. 그렇기 때문에 현재 CPU를 할당받아 실행되고 있는 프로그램이 I/O 처리와 같이 수행하는데 오래 걸리는 작업을 할 때에도 CPU를 점유하고 있다면, CPU라는 자원을 낭비하게 된다. 따라서 운영체제는 ..
[TIL] SSL/TLS
SSL / TLSSSL 및 TLS 는 네트워크를 통해 작동하는 서버, 시스템 및 응용프로그램간에 인증 및 데이터 암호화를 제공하는 암호화 프로토콜이다. TLS 는 SSL3.0 을 기반으로 하는 보다 안전한, SSL의 업데이트된 버전이며, SSL 자체는 현재 사용하지 않는다. SSL에서 TLS로 명칭이 변경되었지만, TLS 및 SSL는 모두 'SSL'이라고 불리기도 한다. 암호화 방식대칭키 암호화대칭키 암호화 방식은 암복호화에 사용하는 키가 동일한 암호화 방식을 말한다.공개키 암호화공개키 암호화 방식은 암복호화에 사용하는 키가 서로 다른 암호화 방식을 말한다.개인 키 : 이 키는 비공개로 유지되며 정보를 암호화 할 수 있고, 공개 키로 암호화된 정보를 복호화할 수 있다.공개 키 : 사람들에게 공개된 키이며..
[TIL] CORS 문제와 해결법
CORS(Cross-origin Resource Sharing) 웹 생태계에는 다른 출처로의 리소스 요청을 제한하는 것과 관련된 두 가지 정책이 존재한다. 한 가지는 CORS 이고, 다른 한 가지는 SOP(Same-Origin Policy)이다. 그중 CORS 가 무엇이며, 이것이 생긴 이유와 해결책 등 전반적으로 CORS에 관한 부분을 정리한다. 출처(Origin)출처는 Protocol 과 Host, Port 의 조합을 말한다.[출처] https://evan-moon.github.io/2020/05/21/about-corsProtocol, Host, Port 의 세 가지가 모두 같아야 같은 출처 이며, 세 가지 중 하나라도 다르다면 다른 출처 이다. CORS 란?CORS (Cross-Origin Res..
[TIL] Spring의 의존성 주입 방법
Spring 프레임워크의 핵심 기술 중 하나는 DI(Dependency Injection, 의존성 주입)이다. 이번 포스팅에서는 Spring이 제공하는 3가지의 의존성 주입 방법들을 알아보고, 가장 권장되는 방법이 무엇인지 정리하고자 한다. 📌 의존성 주입(DI) 이란? 의존성 주입은 객체 지향 프로그래밍에서 의존하는 객체를 직접 생성하거나 관리하지 않고 외부에서 주입받는 것을 의미한다. 다시 말해, 필요한 객체를 직접 생성하는 것이 아닌 외부로부터 객체를 받아 사용하는 것이다. 의존성 주입을 할 경우, 객체간의 결합도를 줄이고 코드의 재활용성을 높일 수 있다는 장점이 있다. 📌 의존성 주입의 3가지 방법Spring은 @Autowired 어노테이션을 이용해 다음의 3 가지 의존성 방법을 제공한다. ..
[Linux] Nginx와 Wordpress로 WAS 구성
📌Nginx 란?정적인 리소스를 클라이언트에게 보내주는 웹서버이다. 📌Wordpress 란? 웹 사이트를 쉽게 만들어줄 수 있는 php & mysql 기반 프레임워크이다. 📌 Php-fpm 이란? php 파일을 실행해주는 프로그램이다. Nginx & Wordpress 구성을 웹 애플리케이션으로 동작할 수 있도록 하는 실질적인 역할을 한다. 이번 실습을 통해, Nginx와 Wordpress로 웹 애플리케이션 서버(WAS) 구성을 진행해보겠다.✅ 실습 환경Windows 11VMware CentOS 81) 웹 서버 준비# nginx 설치yum install -y nginx 2) php 설치dnf install -y https://dl.fedoraproject.org/pub/epel/epel-rele..
[Linux] MariaDB 설치
📌데이터베이스란? 데이터를 효율적으로 관리하기 위해서, '데이터들 사이에 관계를 맺어둔 파일' 데이터베이스를 관리하는 시스템을 '데이터베이스 서버' 또는 'DBMS(Database Management System)' 라고 한다. 그 중에서도 관계형 데이터베이스 서버로는 Oracle, MySQL, DB2, SQL Server, MariaDB 등 이 있다. 이번 포스팅에서는 MariaDB 서버 설치를 다뤄보겠다.✅ 실습 환경Windows 11VMware CentOS 8 1) DB 서버 프로그램 설치yum install -y mariadb-server MariaDB 서버를 설치하면, 자동으로 'mysql' 이라는 클라이언트 프로그램이 설치된다. 이 클라이언트 프로그램을 통해, MariaDB..
[Linux] 기본 명령어
✅ 프로그램 설치yum install [프로그램이름] yum은 일종의 패키지 매니저이다. 만약, yum이 프로그램들을 가져오는 사이트(저장소)에 받고 싶은 프로그램이 없다면 직접 저장소에 추가해야한다. 📌 주의 사항인터넷이 되는 리눅스 컴퓨터에서만 할 수 있음Install 이 안 될 경우 : 1) 인터넷 연결 확인, 2) 저장소에 해당 프로그램이 존재하는지 확인+) ifconfig (IP 주소확인 명령어) 설치 : yum install net-tools ✅ 디렉토리 내용 확인ls -al #a: 숨겨진 파일 표시, l: 자세히 표시 ✅ 디렉토리 관련 작업#1) 복사cp -r [원본 경로] [사본 경로] # -r:폴더까지 복사#2) 이동mv [원본 경로] [이동할 경로]#3) 이름 변경mv [..