전체 글

하루 한권 책으로 떠나는 개발여행
· MySQL
"R-Tree, 전문검색(n-gram), 함수 기반, 멀티 밸류, 클러스터링, 유니크"인덱스에 대해서 알아보자 들어가며 이전 포스팅에서는 B-Tree 인덱스에 대해서 알아보았다 .이번 포스팅에서는 MySQL에서 지원하는 나머지 인덱스에 대해서 알아보도록 하자. R-Tree 인덱스 R-Tree 인덱스란? 공간인덱스 R-Tree 인덱스 알고리즘을 이용해 2차원의 데이터를 인덱싱 하고 검색하는 목적의 인덱스이다. 세 가지 기능이 포함돼 있다. 공간 데이터를 저장할 수 있는 타입 공간 데이터의 검색을 위한 공간 인덱스(R-Tree 알고리즘) 공간 데이터의 연산 함수(거리 또는 포함 관계의 처리) 구조 및 특성 Mysql에서 지원하는 도형 데이터 타입 POINT : 점 LINE : 선 POLYGON : 도형 GE..
· MySQL
MySQL의 인덱스(Index)-B-Tree를 알아보자 인덱스란? 인덱스는 값을 찾기 편리하게 만들어주는 도구입니다. 쉽게 비유하자면 책의 마지막 부분에 있는 찾아보기 페이지가 인덱스와 비슷합니다. 자바의 컬렉션을 예로 들어보면, SortedList와 ArrayList가 있습니다. SortedList는 저장된 값을 항상 정렬된 상태로 유지하는데, 이는 찾아보기에서 "ㄱ", "ㄴ", "ㄷ"와 같이 정렬된 것과 유사합니다. 그러나 SortedList는 데이터가 저장될 때 항상 정렬된 값을 가져야 하므로 저장 과정이 복잡하고 속도가 느릴 수 있지만, 조회 과정은 매우 빠르게 동작합니다. 반면에 ArrayList는 값을 저장하는 순서를 그대로 유지하는 구조입니다. DBMS의 인덱스는 SortedList를 사용하..
템플릿 메서드, 전략, 콜백 패턴에 대해서 알아보자 들어가며 애플리케이션을 개발할 때 템플릿 메서드 패턴이나 콜백패턴을 사용하지 않고 실행 시 로그를 작성해 주는 기능을 개발했다고 해보자. 그러면 try~catch 같은 예외처리를 잡는 문법이 무수히 많은 곳에 작성되면서 코드의 가독성을 낮아지게 한다. 그래서 템플릿 메서드 패턴과 콜백패턴을 알아보고 이러한 패턴들을 사용해 코드의 가독성을 높여 유지보수를 하기 쉽게 하는 방법을 알아보자 템플릿 메서드 패턴 템플릿 메서드 패턴이란? 객체지향 프로그래밍에서 사용하는 패턴 중 하나이다. 메서드 패턴은 상위 클래스의 사용할 알고리즘의 큰 틀을 만들어두고 변경이 되는 알고리즘을 하위에 클래스의 재 정의하여 구체화할 수 있는 기법을 말합니다. 이를 통해 중복된 코드..
스프링에서 사용하는 filter와 Interceptor에 대해서 알아보자 들어가며 필터(Filter)와 인터셉터(Interceptor)는 모두 웹 애플리케이션에서 클라이언트의 요청과 응답을 가로채어 특정 작업을 수행하는 기능을 제공합니다. 이 두 개에 대해서 한번 알아보도록 하겠습니다. 필터(filter) 필터(filter)란? 서블릿(스프링에서는 DispatcherServlet를 사용)컨테이너 내에서 요청 및 응답을 가로채 조작하는 기능을 제공합니다. 주로 요청 전처리와 응답의 후처리를 수행하며 클라이언트와 서버 간의 통신을 필터링하거나 조작할 수 있습니다. 필터의 동작 방법 클라인언트가 요청하면 WAS로 전달 WAS는 필터로 전달 필터는 서블릿으로 전달 서블릿은 컨트롤러로 전달 컨트롤러는 뷰페이지로 ..
· Devops/AWS
AWS의 EC2로 로컬로 배포 하기! 들어가며 AWS의 EC2서버로 도커를 사용해 로컬 서버로 배포하는 방법을 알아보겠습니다. (외부에서 접속은 다음에 포스팅해 보겠습니다.) 사전 준비 배포를 진행하기 전에 필요한 준비 사항을 몇 가지 확인해야 합니다. 만약 여러분이 이미 프로젝트를 준비했다면 아래의 내용은 무시하셔도 됩니다. 게시판 프로젝트 바로가기 JAR 파일로 만들기 바로가기 도커준비하기 바로가기 인스턴스 생성방법 바로가기 MobaXterm 다운로드 방법 바로가기 EC2 인스턴스 배포하기 생성한 인스턴스이다. 이제 접속하기 위해서는 퍼블릭 IPv4 주소로 접속하자. MobaXterm에 접속하자 ① Session 클릭 ② SSH 클릭 ③ 생성한 IPv4 주소 작성 ④ 체크박스 클릭수 ec2-user ..
MobaXterm 다운하기 MobaXterm란? MobaXterm은 Windows 운영 체제에서 사용할 수 있는 다목적 원격 접속 및 시스템 관리 도구이다. 이 프로그램은 SSH, RDP, X11, SFTP 등 다양한 프로토콜을 지원하여 원격 서버에 연결하고 파일을 전송하며 명령을 실행하는 데 사용된다. 다운로드 MobaXterm 다운로드 하기 다운 받은후에 압축풀기 MobaXterm_installer_23.6.msi 클릭 설치후 실행하고 화면이 나오면 성공
리파지토리를 통해서 공유해 보자 들어가며 도커를 통해 실행하려는데, 내 컴퓨터가 아닌 다른 장소에서도 사용할 수 있도록 도커 허브에 나만의 도커 이미지를 저장해두고자 합니다. 이제 도커 허브에 도커 이미지를 업로드하는 방법 및 도커 허브를 통해 이미지를 다운로드하는 방법을을 알아보겠습니다. 도커 허브란? 도커 허브는 개발자들이 손쉽게 도커 이미지를 저장하고 공유할 수 있는 플랫폼입니다. 개발자들은 자신의 이미지를 도커 허브에 업로드하여 언제 어디서든 접근하여 사용할 수 있습니다 도커 허브의 주요 기능 이미지 호스팅 : 자신의 도커 허브를 통해서 도커 이미지를 저장하고 관리 가능하다. 버전관리 : 이미지 별로 버전을 관리해 효율적으로 관리할 수 있다. 협업 기능 : 협업 시 팀원들과 내가 만든 이미지를 공..
docker-compose로 컨테이너 실행하기 들어가며 게시판 프로젝트를 만들어봤다. 하지만 게시판 프로젝트는 도커로 실행하려면 MySQL 도커파일과 Spring의 도커파일을 두가지를 작성해 두개의 컨테이너를 각각 실행시켜야한다. 하지만 도커 컴포즈를 사용하면 한번에 두개의 컨테이너를 실행시켜준다. 이제한번 도커 컴포즈를 작성해보고 실행해보자. 사전준비 1. 게시판 프로젝트 만들기 [SpringBoot ] 무작정 (REST API)CRUD게시판을 만들어 보자 준비 [1] [1] 프로젝트 준비 들어가며 프레임워크나, 언어, DB등을 이론적로 공부를 하고난후에 한번 토이 프로젝트를 통해서 실습을 해보고싶었다. 그래서 이번에 간단한 CRUD를 통해 게시판을 만들어봤다 back-stead.tistory.com ..
코드기록사
A steady developer