Elastic Stack: Elasticsearch, Kibana, Beats, Logstash
·
CS
Elasticsearch 엘라스틱서치는 모든 요청과 응답을 REST API 형태로 제공한다. 키바나 콘솔 사용법 Management -> Dev Tools 손쉽게 엘라스틱서치와 REST API로 통신할 수 있음 인덱스 : 도큐먼트를 저장하는 논리적 구분자 특정 도큐먼트 개수에 도달하거나 특정 용량을 넘어서면 인덱스를 분리 ex) 날짜/시간 단위로 인덱스를 분리하면 특정 날짜의 데이터를 쉽게 처리 도큐먼트 : 실제 데이터를 저장하는 단위 클러스터 내부 구조 하나의 프로젝트에서 하나의 클러스터를 생성 클러스터 내부는 여러 개의 인덱스를 생성 인덱스 내부에는 JSON 형태로 된 다수의 도큐먼트가 존재 다수의 도큐먼트는 복수의 필드를 가짐 실행 확인 8.0.1 버전부터 자동 보안 설정이 되어 있어서 다음과 같이..
스프링부트 프로퍼티 암호화 (with. Jasypt)
·
Back/spring
개요 앞선 포스트에서 JPA를 연결하는 과정에서 application.properties를 다음과 같이 설정하였다. ## h2 데이터베이스 설정 ## spring.h2.console.enabled=true ## Maria DB 데이터베이스 설정 spring.datasource.driverClassName=org.mariadb.jdbc.Driver spring.datasource.url=jdbc:mariadb://localhost:3306/around_hub_shop spring.datasource.username=root spring.datasource.password=비밀번호 ## JPA 설정 spring.jpa.hibernate.ddl-auto=create spring.jpa.show-sql=true..
스프링부트 서비스 구조
·
Back/spring
Spring Boot 서비스 구조 Client, 즉 프론트 영역에서 Controller로 request를 한다. 이때 DTO 형식의 객체를 만들어 요청을 넣는다. 예를 들어 해당 요청이 회원 가입과 관련된 것이라면, 이름, 아이디, 비밀번호를 포함하는 DTO 객체를 만들어 컨트롤러로 요청을 한다. 컨트롤러는 해당 요청이 어떠한 요청인지, 회원가입 요청인지 판단하고 그것과 맞게 되는 서비스로 DTO 객체를 보낸다. 서비스는 이 비지니스 로직의 전반적인 내용을 처리하는 영역이다. 회원 정보에 이름, 아이디, 비밀번호뿐만 아니라 멤버 등급, 가입 날짜와 같은 추가적인 정보를 채워 넣는다. 이것을 바탕으로 Entity 객체를 만든다. Entity는 데이터베이스와 1대1 매핑이 되는, 즉 데이터베이스와 가장 가까..
Swagger 라이브러리
·
Back/spring
Swagger 라이브러리? 서버 개발자가 API를 생성하면, 해당 API 명세서를 작성하여 클라이언트 개발자에게 전달을 하여야 한다. 그렇게 해야 클라이언트 개발자가 해당 명세서를 보고 개발을 진행할 수 있기 때문이다. 출금 API Spec - URL - request param - response 그런데, 백엔드 개발 특성상 API가 변경되는 경우가 생기는데 그럴 때마다 명세서를 다시 작성하고 전달한다면 매우 번거로울 것이다. 이럴 때 도움 되는 라이브러리가 바로 Swagger이다. Swagger는 서버로 요청되는 API 리스트를 HTML 화면으로 문서화하여 테스트할 수 있는 라이브러리이다. 서버가 가동되면서 @RestController를 읽어 API를 분석하여 HTML 문서로 작성한다. 가장 많이 사..
POST, GET, PUT, DELETE API
·
Back/spring
POST API 리소스를 추가하기 위해 사용되는 API 일반적으로 추가하고자 하는 Resource를 http body에 추가하여 서버에 요청 따라서 @RequestBody를 이용하여 body에 담겨있는 값을 받아야 한다. @PostMapping, @RequestBody @PostMapping(value = "/default") public String postMethod() { return "Hello World"; } // http://localhost:8080/api/v1/post-api/member @PostMapping(value = "/member") public String postMember(@RequestBody Map postData) { StringBuilder sb = new Stri..
Date Range Picker 소개
·
Front/html, css, javascript
개요 현장실습을 하는 도중 아래와 같이 날짜 범위를 지정하는 input 창을 만들어야 했다. 어떻게 구현을 해야 할지 고민을 많이 했고 두 가지 정도의 아이디어를 떠올렸다. date 타입 input 태그 2개를 사용하기 → 디자인 요구 사항을 만족하기 매우 어렵다. text 타입 input 태그 사용하기 → 구현 자체는 어렵지 않으나, 백으로 데이터를 전송하고 처리하는 과정이 귀찮고 난잡할 것으로 판단. 사실 담당 멘토님도 2번째 방법을 추천했었지만, 코드가 난잡해질 것이 너무 눈에 보여서 다른 방법을 고민했다. 그러다가 찾게된 유용한 라이브러리, Date Range Picker를 사용하면 손쉽게 해결할 수 있을 것 같았다. 라이선스도 확인하니 충분히 사내에 활용할 수 있다. (깨알 정보, 멘토님이 라이..
2021년 9월 ~ 12월 월간 일지
·
Study log
2021년 한해가 마무리되었다. 이번 2학기 공부 데이터를 되돌아보면, 프로젝트에 시간 투자를 엄청 많이 하고 열심히 했다. 2학기 때는 종합설계프로젝트1, 데이터베이스, 모바일앱 이렇게 총 3개의 프로젝트를 동시에 진행했다. 비록 2학기 성적은 지금까지 받은 것 중 가장 낮게 나왔으나 프로젝트 경험을 쌓은 것, 좋은 팀원을 만난 것, 내가 관심 있는 분야를 찾게 된 것 이렇게 3가지를 얻음으로써 만족스러운 학기를 보냈던 것 같다. 막 대학교 입학해서 어리둥절한 시기가 엊그제 같은데 벌써 4학년을 앞두고 있다. 이번 방학도 화이팅…! 요약 총 공부시간 평균 공부시간 9월 105:34:56 03:31:09 10월 161:36:30 05:12:47 11월 204:49:48 06:49:39 12월 123:51..
influxDB란
·
CS
개요 시계열 데이터 현재 우리가 살아가는 환경에서는 시계열 데이터가 폭발적으로 존재한다. 여기서 말하는 시계열 데이터란, 다음의 특징을 가진다. 시간별로 구성된 값들의 집합 시간과 하나 이상의 속성으로 구성 Line diagram으로 시각화할 수 있다. 시계열 데이터를 분석하기 위해 많은 기업들이 노력을 한다. 1s는 물론 1ns 또는 그 이하의 아주 짧은 시간 동안 생성되는 수많은 데이터를 분석하여 경향, 주기 등의 특성을 파악할 수 있다. 시계열 데이터베이스 시간 처리에 최적화 된 데이터베이스 SQL 기반 시계열 질의 지원 빠른 데이터 입력 → 트랜잭션 지원 및 데이터 변경 불가 롤업 기능 지원 시계열 데이터베이스의 종류 InfluxDB Kdb+ Graphite 등이 존재하고, influxDB가 현재..
squareyun
'분류 전체보기' 카테고리의 글 목록 (4 Page)