분류 전체보기233 04. HTTP 1.1 HTTP 1.1 용어사전 TCP의 다양한 기능을 수행하기 위해서는 TCP헤더에 다양한 정보가 필요한데, 데이터를 전송할 때에 꼭 필요하지 않은 처리나 정보 등을 일컫는 말 오버헤드(Overhead) 컨텐츠의 수가 증가하면서 TCP의 연결에 부담이 걸려 그 문제를 해결해야 하는 필요성이 생겨 발달했다. 위 그림에서 초창기에는 요청마다 왼쪽과 같이 TCP를 새로 연결시켜 줘야 했다. 때문에 1.1버전에서는 지속연결(presistent Connection)을 통해 여러개의 컨텐츠를 요청할 수 있게 되었다. 1.0에서는 Connection: keep-alive 을 통해 연결을 유지 했지만, 1.1부터는 모든 요청/응답이 Connection을 재사용하도록 설계 되었고 Connection: close 를 통해 명시.. Study/HTTP 2024. 4. 16. Ubuntu 22.04에 Nginx 설치하기 Nginx란?? 트래픽이 많은 웹사이트의 서버(WAS)를 도와주는 비동기 이벤트 기반구조의 경량화 웹 서버이다. Nginx에는 다양한 기능이 있다. 기본적으로 정적 리소스에 대한 응답을 해주는 Web Server의 역할과 Reverse Proxy Server로 활용하여 WAS의 부하를 줄이는 로드밸런서 역할을 하기도 한다. Nginx 설치 apt update하기 항상 명심해야 하는 apt update... 무언가를 설치하기 전에는 항상 해주기로 하자. sudo apt update sudo apt-get update Nginx 설치하기 sudo apt install nginx Nginx 실행하기 # Nginx 시작하기 sudo systemctl start nginx # Nginx 상태 확인 sudo sys.. OS/Linux 2024. 4. 16. PostgreSQL 비밀번호 없이 콘솔 진입되는 문제 해결하기!! PostgreSQL 접속 Postgres 진입하기 SQL을 작성할 수 있는 화면으로 진입을 해야한다. 필자의 경우 docker를 통해 생성하였기 때문에 다음과 같은 명령어를 사용한다. docker exec ${컨테이너명} -it /bin/bash # 위 명령어로 도커 컨테이너에 진입 후 postgreSQL에 진입한다. psql -U ${유저} pg_hba.conf 파일 위치 확인 비밀번호를 입력하기 위한 설정은 해당 파일에 존재한다. show data_directory; # /var/lib/postgresql/data pg_hba.conf 파일을 수정 vim, cat 등을 이용하여 해당 내용을 수정하자. vi /var/lib/postgresql/data/pg_hba.conf 아래 표시한 부분을 수정한다... DataBase/PostgreSQL 2024. 4. 13. Linux에서 파일 및 폴더에 권한 부여하는 방법 권한 권한이란? 파일 및 폴더에 접근 할 수 있는 사용자를 선별하기 위해 필요한 것이다. 권한부여 Window, MacOS 등과 같이 Linux에도 파일 및 폴더 별로 권한을 부여할 수 있다. xxx/xxx/xxx 인 규칙으로써 3개씩 각각의 의미를 부여한다. 처음 세자리 : 파일 및 폴더를 생선한 소유자에 대한 권한 중간 세자리 : 파일 소유자가 속한 그룹에 대한 권한 마지막 세자리 : 시스템의 다른 사용자에 대한 권한 권한부여 규칙 권한 2진수 8진수 설명 --- 000 0 권한 없음 --x 001 1 실행 -w- 010 2 쓰기 -wx 011 3 쓰기 및 실행 r-- 100 4 읽기 r-x 101 5 읽기 및 실행 rw- 110 6 읽기 및 쓰기 rwx 111 7 읽기 및 쓰기 및 실행 특수 권한 .. OS/Linux 2024. 4. 9. Ununtu 22.04 WireGuard를 이용한 VPN 접속하기 필요 요소 Ubuntu 22.04 서버 슈퍼 권한을 가지고 있는 계정 VIM(선택사항; cat을 사용해도 됨) WireGuard 설치 sudo apt update sudo apt install wireguard WireGuard 구성 WireGuard의 인터페이스를 구성하고 관리 할 수 있는 wg, wg-quick이라는 두가지 명령 도구를 함께 제공한다. 다음 명령을 통해 공용 및 개인키를 생성한다. wg genkey | sudo tee /etc/wireguard/privatekey | wg pubkey | sudo tee /etc/wireguard/publickey 생성된 키는 /etc/wireguard 디렉토리에 생성된다. cat, vim 등과 같은 편집기를 통해 해당 데이터를 읽을 수 있지만, 개인.. Study/Network 2024. 4. 8. Java에서 파이프라인('|')을 split하는 방법 안녕하세요. 장비충 개발자 ABCD입니다. 오늘은 제가 실제로 개발을 하면서 직면한 문제를 가져왔는데요. 사수분께서 개발을 하는 과정에서 DB에 다양한 조건을 한 컬럼에 담기 위해 파이프라인('|')으로 구분을 지으신게 저에겐 큰 문제로 받아졌는데요..... 자 그럼 시작해보시죠. 저는 파이프라인으로 구분을 지어 놓은 것을 콤마(',')로 변경해야 하는 상황에 직면하게 되었어요. 우선 Java에서 replaceAll() 메서드를 통해 해당 문제를 해결하려고 했습니다. String str = " | A, B, C | | | 과자, 과일 | "; String tempStr = str.replaceAll(" | ", ""); System.out.println(tempStr); //A, B, C 과자, 과일 위.. Language/Java 2024. 3. 12. 03. HTTP의 역사 HTTP 역사(큰 틀로 간단히 정리) 버전 작성시 유의 사항 버전 번호는 분수로 다루어지지 않는다. 버전의 각 숫자는 각각 분리된 숫자로 비교한다. 때문에 각 숫자는 반드시 따로따로 비교해야 한다. ex) 1.0 은 1 과 0으로 나누어 진다. ex) 2.22와 2.3을 비교시 22와 3으로 비교하기에 22가 더 높은 버전으로 간주한다. HTTP 0.9 HTTP가 발전하기 전에 버전이 명시되어 있지 않아 이전 버전을 0.9로 칭함 간단히 GET 메서드만 존재했다. HTTP 1.0 GET /mypage.html HTTP/1.0 User-Agent: NCSA_Mosaic/2.0 (Windows 3.1) 200 OK Date: Tue, 15 Nov 1994 08:12:31 GMT Server: CERN/3.0.. Study/HTTP 2024. 3. 12. 02.비연결성과 StateLess 프로토콜 비연결성(Connectionless) 클라이언트와 서버가 한번 연결을 맺은 후, 클라이언트 요청에 대한 서버의 응답이 끝나면 연결을 끊는 성질 무상태(StateLess) 프로토콜 상태유지 상태를 유지하고 있으면 해당 서버가 해당 유저를 기억하고 있기에 그 서버만 응답해야 한다. 만약 특정서버가 장애가 발생한다면, 유저 상태가 사라지기 때문에 처음부터 다시 서버에 요청해야 한다. 무상태 상태가 유지되지 않기 때문에 아무 서버에서나 호출이 가능 해진다. 서버에 장애가 생기더라도 다른서버에서 응답하여 전달 할 수 있다. 즉, 응답 서버를 쉽게 바꿀 수 있기에 수평적인 확장에 유리하다. Study/HTTP 2024. 3. 5. 01.클라이언트 - 서버구조 클라이언트 - 서버 구조 요청(Request) → 브라우저인 클라이언트에 의해 전송되는 메시지 응답(Response) → 서버에서 응답으로 클라이언트에게 전송되는 메시지 TCP/IP 패킷 통신 방식의 인터넷 프로토콜인 IP(인터넷 프로토콜) + 전송 조절 프로토콜인 TCP(전송 제어 프로토콜) IP → 패킷 전달 여부를 보증하지 않고, 패킷을 보낸 순서와 받는 순서가 다를 수 있다. TCP → IP 위에서 동작하는 프로토콜, 데이터의 전달을 보증하고 보낸 순서대로 받게 해준다. HTTP, FTP, SMTP 등 TCP를 기반으로 한 많은 수의 애플리케이션 프로토콜들이 IP 위에서 동작하기 때문에 묶어서 TCP/IP라고 부르기도 한다. Study/HTTP 2024. 3. 5. (Oracle) DUAL을 사용한 Multi row, Column Table 안녕하세요. 개발자 ABCD입니다. 이번 시간에는 가상테이블을 사용시 다중 행을 만들 수 있는 방법을 소개해 보려고 합니다. 우선, 해당 방식을 사용하기 위해 알아야 할 것들을 설명을 한 후에 진행하도록 하겠습니다. DUAL DUAL은 CREATE를 사용하지 않고 가상으로 테이블을 생성하여 데이터를 보여 주고 싶을 때 사용합니다. 다음 예시를 sql에 작성하면 다음과 같이 결과가 나오게 됩니다. SELECT '홍길동' AS 이름 FROM DAUL; DECODE DECODE는 조건문이라고 생각하시면 됩니다. 한가지 예를 들어 볼게요. SELECT DECODE(NAME, '홍길동', 10, '강감찬', 20) FROM DUAL; 위와 같은 쿼리가 있다고 생각해 봅시다. 위에서의 코드는 만약 NAME이 '홍길.. DataBase/Oracle DB 2024. 2. 4. 타이오닛[Tyonit] 틸트스냅 맥북 거치대 리뷰 안녕하세요. 장비충 개발자 ABCD(ABCtoDev)입니다. 아무래도 개발자이다 보니 맥북을 자주 들고 다니게 됩니다. 하지만, 매번 회사모니터에 연결하고 집와서 집 모니터에 연결하기가 굉장히 번거롭던 찰나! 신기한 아이템을 발견해 들고왔습니다. 이번에 소개해 드릴 녀석은 이녀석입니다. 생긴거만 봐도 좀 감각적이네요. 기존에 사용하던 원목녀석도 나름 디자인 쪽으로는 심플하니 이쁘게 잘 사용하고 있었는데요. 이녀석은 색깔도 맥북과 매칭이 너무 좋아 한번 변경해보려고 합니다. 잘가.... 우선 택배에서 부터 아주 포장에 진심이 느껴집니다... 보통 손으로 찢는데... 너무 많이 감아서 결국 칼을 꺼내게 만들었어요.. 한번 비교를 해볼까요?? 자! 이제 본격적으로 제품을 탐구해보도록 합시다. 상품을 개봉하면 .. 제품 리뷰 2024. 2. 3. Spring Boot(Maven)에 Mybatis + postgreSQL 접목시키기!! 안녕하세요. 이번 게시글은 데이터 관리를 위해 Spring Boot에 Mybatis와 PostgreSQL을 접목 시키는 방법을 설명하겠습니다. 우선 환경은 다음과 같습니다. 구분 언어 / 라이브러리 언어 Java17 프레임워크 Spring Boot 3.2.1 Persistence Framework Mybatis 3.0.3 자동화 빌드 툴 Maven 보통 Spring Boot의 데이터 흐름은 아래와 같습니다. Spring Boot와 Spring의 용어 차이는 아래와 같으니 참고하시기 바랍니다. (자주보는 그림이 될수도 있습니다. 중요한 부분이기에 다른글에서도 자주 등장할 예정입니다.) 설정 파일 구성 pom.xml 우선 pom.xml에 우리가 필요로하는 dependency를 추가해 주어야 합니다. org... FrameWorks/Spring & Boot 2024. 1. 13. 이전 1 ··· 4 5 6 7 8 9 10 ··· 20 다음 💲 추천 글 728x90 반응형