본문 바로가기

실습/리눅스 서버 + 스프링 부트54

05. RestfulAPI_Redis CRUD 다음으로 만들어 볼 것은 Redis를 활용한 RestfulAPI CRUD 이다. 인메모리 데이터베이스란 컴퓨터의 주 메모리에 데이터를 저장하는 DB를 의미한다. 보조기억 장치가 아닌 주 메모리에 데이터를 저장하기 때문에 데이터 처리가 다른 DB에 비해 월등히 빠르다는 장점을 갖고 있다. Redis란 키-값 기반의 인메모리 데이터 저장소이다. 키-값 기반이라는 점에서 Java의 Map 자료구조와 비슷하게 데이터가 저장 및 관리된다. 인메모리 데이터베이스의 특성상 빠른 입출력 속도를 가지며, 비단 데이터의 저장 뿐 아니라 메시지 큐로써 동작할 수도 있다. 일단 외부에서 Redis에 진입할 수 있도록 설정하자. 설정은 /etc/redis/redis.conf 파일을 다음과 같이 수정하면 된다. 이후 system.. 2021. 5. 23.
04. RestfulAPI_MongoDB 이번에 만들 것은 MongoDB를 활용한 CRUD RestfulAPI이다. 몽고DB는 NoSQL DB의 한 종류로, humongous의 줄임말이다. 직역하면 매우 큰 DB 라는 뜻이다. 몽고DB는 NoSQL 중 Document DB 타입의 데이터베이스로, 그냥 간단하게 설명하면 데이터가 JSON/XML 같은 형태로 저장되는 DB라는 의미이다. 예시를 보자면 아래와 같이 저장된다고 볼 수 있다. 몽고디비의 데이터는 Document라고 부르고, 이 Document의 집합 즉 테이블을 Collection이라고 부른다. Collection의 집합은 DB로, 이 부분은 RDB와 같다. NoSQL 답게 몽고디비는 RDB보다 훨씬 빠르지만, 일관성을 유지하기에는 힘이 들 수 있다. 그러면 이제 개발을 시작할 것인데,.. 2021. 5. 23.
03. RestfulAPI_MariaDB 지난 포스팅에서 설치 및 준비가 끝이났다. 그러니 이번에는 스프링 부트를 사용해 간단한 RestfulAPI를 제작해보자. 가장 먼저 할 것은 MariaDB에 대한 CRUD Restful API 개발이다. 마리아 디비는 오픈 소스의 RDBMS이다. MySQL이 오라클에 인수된 후 MySQL의 핵심 개발자들이 제작한 오픈소스로, MySQL과 굉장히 유사하며, 오픈소스이기 때문에 무료인 덕에 상업용으로도 많이 사용되는 DB이다. 구현은 간단하게 아이디-패스워드로 구성된 테이블을 사용할 것이다. JPA를 사용한 구현을 진행할 것이기 때문에 다음의 설정을 application.properties에 추가해주었다. 그 외의 다양한 설정은 다음 포스팅 참고 끝이났으면 일단 마리아디비에 linuxTest 이름의 데이터베.. 2021. 5. 19.
02. 윈도우 세팅 및 프로젝트 생성 리눅스의 세팅이 전부 완료되었으니, 이제 윈도우에서의 세팅을 할 차례이다. 물론 DB 같은 건 리눅스에 전부 만들어놓은 상태이니, 이클립스에 Spring Boot와 몇 가지 사용 예정인 툴들만 설치해두자. STS를 별도로 설치하지 않고, 이클립스 내부의 마켓플레이스를 사용해 STS를 사용했다. 즉, 이클립스만 사용할 예정이다. 1. 스프링 부트 다운 먼저 스프링 부트를 다운받자. 이클립스를 켜서 Help => Eclipse Marketplace 로 들어가자. 그리고 STS 를 검색해서 Spring Tools 4 를 다운받자. 알아서 Confirm이나 Next, Finish만 눌러주다보면 이클립스가 재시작되고 스프링 부트 설치가 끝이난다. 스프링 부트란? 스프링에서 한 단계 진화한 형태이다. 스프링의 최대.. 2021. 5. 19.
01. 리눅스 서버 세팅 일단 가시성을 위해 clear 명령어로 cmd 창을 전부 지워주고 시작한다. *clear : 윈도우의 cls 1. VIM 설치 VIM이란 리눅스의 터미널 환경에서 사용할 수 있는 텍스트 편집기이다. IDE를 사용할 때를 제외하고 코딩은 물론, 환경파일을 수정할 때는 이걸 활용할 예정이라 설치해주었다. # apt-get install vim 2. JDK 설치 및 환경변수 설정 당연한 말이지만, Spring은 자바 기반이기에 JDK를 설치해야만 한다. 당장은 리눅스에서 데이터베이스 정도만 구축할 생각이나, 언젠가 리눅스 서버에 직접 jar 파일을 올려 구동을 시키는 연습도 할 예정이라 설치해주자. # apt-get install openjdk-11-jdk java -version의 결과 잘 설치 되었음을 확.. 2021. 5. 5.
00. VB 및 리눅스 서버 설치 윈도우에서 서버를 구축해본 경험은 몇 차례 있었지만, 리눅스에서 서버를 설치해본 경험은 없었다. 윈도우에서 하는 것이 편하기도 했지만, 애초에 학부생 수준에서 굳이 리눅스를 사용해서 서버를 구축해야 할 정도로 큰 프로젝트를 할 리가 없었기 때문이다. 하지만 이전부터 리눅스를 사용하지 못해 면접에서 대답을 하지 못하는 경우가 많았고, 애초에 개발자가 되려는 사람이 리눅스를 사용하지 못하는 것도 말이 되지 않는다는 생각이 들어 공부를 시작한다. 큰 주제는 리눅스 환경에서의 자바 서버 개발이다. 1. Virtual Box 빅 데이터 과목을 수강할 때 Hadoop을 사용하기 위해 사용했었던 툴이다. 어떤 프로그램인지 간단하게 설명하자면 원래의 OS 위에 가상 머신을 활용해 또 다른 OS를 활용할 수 있게 해주는.. 2021. 5. 5.