일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- priority_queue
- 힙덤프
- sql
- string
- 스택
- 큐
- JPA
- deque
- Properties
- GC로그수집
- union_find
- CSS
- math
- Union-find
- spring boot
- set
- List
- alter
- date
- 리소스모니터링
- NIO
- Calendar
- scanner
- dfs
- html
- javascript
- map
- BFS
- Java
- 스프링부트
- Today
- Total
목록분류 전체보기 (303)
매일 조금씩
2020년.. 6월인가.. SQLD, 리눅스마스터2급, 정처기 실기를 모두 땄더랬다 그땐 한달 잡고 1주일씩 잡아서 해치웠다 아주 쉬운 시험들이었기때문에.. 기간을 잡고 하는 단타 자격증 공부에 흥미가 있었다. 보람도 있고 밀려들어오는걸 해치우는 재미?가 느껴졌기 때문이다. 하지만 이번엔 다르다.. CKAD .. 가격부터 저 셋을 합친거의 두배가량 된다. 그리고 한번도 접해본적없는 쿠버네티스 ㅜ 하기싫은데 따고 싶어하는 양심없고 모순가득한 나의 모습을 보게되었다. 그래서 일단 긁었다. 가격은 할인코드를 받아서 15퍼센트 할인된가격인 한화 40만원 아몰라 긁었으니까 하겠지
캐시에 대한 설명과 사용법을 익힌 후, 실제 프로젝트에 적용한 코드를 마지막에 추가했다. [목차] 1. 개요 2. 스프링 캐시 설정, 캐시 매니저 3. 어노테이션 기반 캐시 사용하기 4. 프로젝트에 적용하기 개요 캐시란? 캐시(Cache)는 컴퓨터 과학에서 데이터나 값을 미리 저장해 놓는 임시 장소를 의미한다. 캐시 접근 시간에 비해 원래 데이터를 접근하는 시간이 오래걸리거나, 값을 다시 계산하는 시간을 절약할 때 주로 사용되며, 동일 결과를 리턴하는 반복적인 작업이 많고, 각 작업의 시간이 오래걸리거나 서버에 부담을 주는 경우 사용하면 효율적이다. 만약 매번 다른 결과를 돌려줘야하는 작업이거나 수정이 빈번한 데이터의 경우 캐시를 적용해봐야 오히려 성능이 떨어질 것이다. 로컬 캐시? 글로벌 캐시? Loc..
동영상 업로드, 조회 기능을 구현하다보니 업로드한 동영상을 조회하면 그 동영상을 모두 다운로드한 후에 플레이 할 수 있어서.. 길이가 긴 동영상의 경우 다 다운로드 될 때 까지 기다려야했다. 이 문제를 해결하기 위한 방법이 각종 동영상 사이트에서 이용되는 스트리밍 서비스이다. 동영상을 조회하면 내가 지정한 range 만큼 request를 계속 날려서 range 만큼 동영상을 다운로드해 오고, 그동안 로드 된부분은 플레이 할수 있다. 이 기능은 HTTP range requests를 활용하면 쉽게 만들수 있다. HTTP Range Requests HTTP 범위 요청이란 HTTP를 통해 일정한 부분을 서버에서 클라이언트로 보내는 것을 허락하는 것이다. 범위를 알 수 있는 대형 미디어 파일을 나누어서 읽을 수 ..
구현된 서비스는.. pdf 파일을 업로드 하면, 1. 원본파일을 저장하고 2. 각 페이지를 image와 thumbnail로 변환한다. 위의 1,2번을 완료 해야 스프링 컨트롤러에서 응답하도록 구현을 했는데.. 2번의 과정이 너무 오래 걸려 응답이 늦어졌다. 따라서 1번까지만 하고 응답하고, 2번은 비동기로 구현하게 되었다. 방법은 간단하다. @EnableAsync로 비동기 기능을 활성화 비동기로 동작을 원하는 메소드(public 메소드)에 @Async 어노테이션을 붙여준다. @Async 어노테이션을 사용해서 비동기 서비스 만들기 1. springboot에서 Async 비동기 기능 활성화 및 thread pool 설정 아래와 같이 java config 파일을 만든다. > config > AsyncConfi..
코딩테스트 연습 - 로또의 최고 순위와 최저 순위 | 프로그래머스 (programmers.co.kr) 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers.co.kr 1. IntStream import java.util.stream.IntStream; class Solution { public static int rank(int num) { if (num >= 2) return 7 - num; return 6; } public int[] solution(int[] lottos, ..
HashMap, HashSet이 핵심인 문제다. 1. 일반적 import java.util.HashMap; import java.util.HashSet; import java.util.Map; class Solution { public int[] solution(String[] id_list, String[] report, int k) { Map reportMemberList = new HashMap(); // 멤버별 신고 당한 id Map getMailCount = new HashMap(); // 멤버별 처리 결과 메일 받은 횟수 // 초기화 for(String id : id_list){ getMailCount.put(id,0); reportMemberList.put(id, new HashSet());..