목록전체 글 (41)
장난감 연구소

본 게시글은 CS 지식 스터디에서 HTTP에 관해 발표하기 위해 'HTTP 완벽 가이드(인사이트)'의 4장 내용을 요약한 게시물입니다.학습 목표HTTP는 어떻게 TCP 커넥션을 사용하는가TCP 커넥션의 지연, 병목, 막힘병렬 커넥션, keep-alive 커넥션, 커넥션 파이프라인을 통한 HTTP 최적화TCP 커넥션HTTP 통신은 TCP/IP 프로토콜을 통해 이루어진다.TCPHTTP 커넥션은 몇몇 사용 규칙을 제외하고는 TCP 커넥션에 불과하다.TCP 커넥션은 인터넷을 안정적으로 연결해주는 신뢰할 수 있는 통신 방식을 제공한다. HTTP가 메시지를 전송하고자 할 경우 현재 연결된 TCP 커넥션을 통해 메시지 내용을 순서대로 보낸다.TCP는 세그먼트 단위로 데이터를 잘게 나누고, IP 패킷에 담아 전달한다...

본 게시글은 CS 지식 스터디에서 컨테이너 기술에 대해 발표하기 위해 정리한 내용입니다.기본 개념컨테이너란 무엇인가? 샌드박스화된 런타임 환경애플리케이션과 파일/런타임 등 실행 환경을 같이 패키징한 것애플리케이션 소프트웨어를 운영체제로부터 분리시켜 사용자에게 애플리케이션이 동작할 때 필요한 최소한의 실행 환경을 제공하는 것가상화 기술과 더불어 컨테이너 기술은 클라우드 컴퓨팅 서비스의 핵심으로 부각되고 있다.컨테이너로 패키징된 애플리케이션은 자신이 동작할 수 있는 환경을 포함하고 있기 때문에 쉽게 배포가 가능해진다. 장점이식성 : 컨테이너가 모든 종속성을 포함하여 어디서든 동일한 환경에서 실행 가능경량성 : VM(가상머신)보다 적은 리소스로 실행되며, OS를 공유하여 성능이 뛰어남빠른 배포와 롤백 : 이미..

본 게시글은 CS 지식 스터디에서 가상화 기술에 대해 발표하기 위해 정리한 내용입니다.컴퓨팅 자원의 효율적 활용컴퓨팅 자원의 활용성가상화 기술에 대해 얘기하기 전에 가상화 기술이 왜 필요한지 알아보자.💡 컴퓨터 1대가 주어진다면 무엇을 할 것인가? 컴퓨터 1대 주어진다면 인터넷 서핑을 하거나, 문서 작성, 게임, 소프트웨어 개발 등 무엇을 할 지 쉽게 답할 수 있을 것이다.💡컴퓨터 1,000대가 주어진다면 무엇을 할 것인가? 그러나 1,000대가 주어진다면 무엇을 할 수 있을지 쉽게 답하기 어려울 것이다. 이러한 컴퓨팅 자원을 어떻게 효율적으로 사용할 수 있을까?특정 시간 동안 사용되지 않는 컴퓨팅 자원의 활용내가 소유한 컴퓨터가 풀로 가동되고 있고, 내 친구의 컴퓨터는 오후 6시부터 오전 9시까지 ..

본 게시글은 CS 지식 스터디에서 HTTP에 관해 발표하기 위해 'HTTP 완벽 가이드(인사이트)'의 1장 ~ 3장 내용을 요약한 게시물입니다.1. HTTP 개관HTTP(Hypertext Transfer Protocol)은 WWW(Word Wide Web)에서 통신하는 데 사용하는 프로토콜 프로그램이다.1.1 HTTPHTTP는 JPEG 이미지, HTML 페이지, 텍스트 파일, MPEG 동영상 등 파일을 웹 서버로부터 빠르고, 정확하게 웹 브라우저로 옮겨준다.신뢰성 있는 데이터 전송 프로토콜(TCP)를 사용하기 때문에, 데이터가 지구 반대편에서 오더라도 전송 중 손상되거나 꼬이지 않음을 보장한다.(덕분에 웹 개발자도 전송 중 파일이 파괴되거나 왜곡되는 걸 걱정할 필요없다.)더보기HTTP/3 에서 변경사항2..

MariaDB와 Hibernate(JPA)를 활용하여 프로젝트를 진행하며 데이터베이스 쿼리 성능 최적화와 관련된 작업을 정리하였습니다. 이 내용은 개인 기록용으로 작성되었습니다.인덱스(Index)23년 여름, 동아리 홈페이지를 개발하면서 서버 개발을 담당했습니다. 데이터베이스로는 관계형 DB인 MariaDB를 사용하였습니다.홈페이지에는 커뮤니티(게시판) 기능이 존재하며, 위 사진과 같이 기본적인 게시판 형태를 가지고 있습니다. 기본적인 제목, 본문 외에도 첨부파일 업로드, 댓글, 좋아요/싫어요 기능을 구현하였습니다.커뮤니티 기능과 관련된 테이블 구조는 위와 같습니다. 다른 필드가 여러 개 존재하지만, 간단히 핵심적인 부분만 표시했습니다.인덱스 설계 및 생성얼마 지나지 않은 코드지만, 다시 보면 부족한 점..

올해를 끝으로 소프트웨어학과 4년 생활이 끝난다고 하니 뭔가 아쉬운 마음이 든다. 2주 전 캡스톤 디자인 전시회를 치렀는데, 많이 부족하긴 해도 오랜 시간 공들인 프로젝트라 그런지 정리하는 글을 꼭 기록해야만 할 것 같아 써보려고 한다.프로젝트 소개프로젝트의 정식 주제는 "사용자 음역 및 선호 기반 노래방 음악 추천 시스템"이다. 이는 사용자의 음역대와 개인의 선호도를 활용해 부르기 좋은 노래를 추천하는 서비스라는 의미를 담고 있다. "사용자 목소리 기반 노래방 음악 추천 시스템"이란 더 직관적인 이름도 고려했으나, 이는 목소리 톤과 같은 더 다양한 특성을 분석한다는 오해를 불러일으킬 수 있어 좀 더 구체적인 현재의 주제명을 선택했다.이 주제를 처음 시도하는 것은 아니었다. 3학년 1학기 오픈소스개발프로..