전체 글
-
WebRTC 쿠렌토(Kurento)란?프로젝트/WebRTC 화상통화 프로젝트 2022. 7. 4. 23:05
이전 시간에 N:M 환경을 제공하기 위해 Mesh(P2P), SFU, MCU 방식에 SFU방식을 선택하기로 결정했습니다. https://junuuu.tistory.com/379?category=1014988 WebRTC란? (+P2P, SFU, MCU 동작과정) 이전 시간에 라이브 스트리밍 프로토콜에 대하여 알아보고 RTMP와 HLS 그리고 WebRTC에 대해 간략하게 알아보고 비교 분석하여 화상회의 소프트웨어에 WebRTC를 사용하기로 결론지었습니다. 비교글 junuuu.tistory.com 미디어 서버를 통해 얻을 수 있는 이점 P2P를 사용하면 전송하고 받는 스트림의 수가 엄청나게 많아질 수 있습니다. 이때 미디어 서버를 통해 클라이언트가 송신해야 하는 스트림 수를 줄일 수 있습니다. (MCU를 사..
-
MySQL index 적용해보기 + Full Text Index 적용CS/데이터베이스 2022. 7. 4. 20:15
다음 글을 읽기 위해 필요한 지식은 다음과 같습니다. - 기초 MySQL 문법 - 인덱스 - 실행계획 테이블 생성 우선 Index를 적용하기에 앞서 간단한 테이블을 생성해 보겠습니다. Metting(회의) 테이블은 회의 id와 회의 이름을 가집니다. CREATE TABLE Meeting( metting_id int primary key AUTO_INCREMENT, meeting_name varchar(100) NOT NULL ); Dummy 데이터 넣기 INSERT INTO Meeting Values(1,'abc'); INSERT INTO Meeting Values(2,'ab'); INSERT INTO Meeting Values(3,'f'); INSERT INTO Meeting Values(4,'abcd..
-
왜 은행은 무한 스크롤이 안되나요 - 토스(이응준)세미나, 영상 요약정리 2022. 7. 4. 00:01
https://www.youtube.com/watch?v=v9rcKpUZw4o 토스 뱅크에서 송금 서버를 개발하고 있는 이응준님의 영상을 보고 요약한 내용입니다. 은행 앱의 조회 기간 설정 은행 앱에서는 거래내역을 스크롤해서 살피면 지정된 기간만 조회되고 그 이상 조회하기 위해서는 기간 내역을 변경해야 합니다. 하지만 대부분의 SNS에서는 메시지 피드를 조회할때 무한 스크롤을 통해 십수년전의 글까지 볼 수 있습니다. 그러면 유독 은행은 왜 무한 스크롤을 제공하지 않을까요? 은행이 무한 스크롤을 제공하지 않는 이유 은행 시스템의 경우 다음과 같은 구조를 가지고 있습니다. 계정계는 실제로 유저의 돈을 다루며 원본 데이터가 저장되는 영역입니다. 장애나 오류가 발생하면 치명적이기 때문에 아주 높은 신뢰도가 요구..
-
[백준] 13397번 : 구간 나누기2 -자바(JAVA)알고리즘/백준 2022. 7. 3. 00:01
https://www.acmicpc.net/problem/13397 13397번: 구간 나누기 2 첫째 줄에 배열의 크기 N과 M이 주어진다. (1 ≤ N ≤ 5,000, 1 ≤ M ≤ N) 둘째 줄에 배열에 들어있는 수가 순서대로 주어진다. 배열에 들어있는 수는 1보다 크거나 같고, 10,000보다 작거나 같은 자연수 www.acmicpc.net 문제 해석 N개의 수로 이루어진 1차원 배열이 있다. 배열을 M개 이하의 구간으로 나누어 구간의 점수를 최댓값을 최소로 하려고 합니다. 1. 하나의 구간은 하나 이상의 연속된 수들로 이루어져 있다. 2. 배열의 각 수는 모두 하나의 구간에 포함되어야 한다. 이때 구간의 점수는 구간에 속한 수의 최댓값과 최솟값의 차이입니다. 예를 들어 배열이 1 5 4 6 2 ..
-
WebRTC란? (+P2P, SFU, MCU 동작과정)프로젝트/WebRTC 화상통화 프로젝트 2022. 7. 2. 22:15
이전 시간에 라이브 스트리밍 프로토콜에 대하여 알아보고 RTMP와 HLS 그리고 WebRTC에 대해 간략하게 알아보고 비교 분석하여 화상회의 소프트웨어에 WebRTC를 사용하기로 결론지었습니다. 비교글을 보고 싶다면 다음을 참조하세요 https://junuuu.tistory.com/377?category=1014988 라이브 스트리밍 프로토콜 비교(RTMP vs HLS vs WebRTC) 스트리밍 프로토콜이란? 라이브 스트리밍 기술을 비약적인 발전을 이루어냈으며 덕분에 기술 지식이 거의 없어도 고품질 스트림을 제작할 수 있습니다. 실시간으로 인터넷을 통해 비디오 파일 junuuu.tistory.com 지금부터는 WebRTC에 대해 조금 더 깊게 알아보도록 하겠습니다. WebRTC란? Web Real-Ti..
-
[백준] 2110번 : 공유기 설치 - 자바(JAVA)알고리즘/백준 2022. 7. 2. 00:01
https://www.acmicpc.net/problem/2110 2110번: 공유기 설치 첫째 줄에 집의 개수 N (2 ≤ N ≤ 200,000)과 공유기의 개수 C (2 ≤ C ≤ N)이 하나 이상의 빈 칸을 사이에 두고 주어진다. 둘째 줄부터 N개의 줄에는 집의 좌표를 나타내는 xi (0 ≤ xi ≤ 1,000,000,000)가 www.acmicpc.net 문제 해석 집 N개가 수직선 위에 존재하고 집 여러 개가 같은 좌표를 가지는 일은 없다. 공유기 C개를 설치하려고 하는데 한 집에는 공유기를 하나만 설치할 수 있다. 가장 인접한 두 공유기 사이의 거리를 가능한 크게 하여 설치하려고 한다. 집의 개수와 공유기의 개수가 주어질 때 두 공유기 사이의 최대 거리를 출력하라. 문제 풀이 전 설계 집의 개..
-
라이브 스트리밍 프로토콜 비교(RTMP vs HLS vs WebRTC)프로젝트/WebRTC 화상통화 프로젝트 2022. 7. 1. 18:41
스트리밍 프로토콜이란? 라이브 스트리밍 기술을 비약적인 발전을 이루어냈으며 덕분에 기술 지식이 거의 없어도 고품질 스트림을 제작할 수 있습니다. 실시간으로 인터넷을 통해 비디오 파일을 전달하기 위해 뒤에서 작동하는 가장 중요한 것은 스트리밍 프로토콜입니다. 비디오 파일은 부피가 크기 때문에 전송하기 위해서는 분할하는 과정이 필요합니다. 스트리밍 프로토콜은 비디오를 chunks로 분할하고 재조립하는 데 사용하는 표준화된 방법을 뜻합니다. 고유한 목적을 제공하기위해 다양한 조직에서 프로토콜들을 개발하였고 일반적으로 표준화된 오픈소스이므로 다양한 기술 및 스트리밍 설정과 원활하게 사용할 수 있습니다. 스트리밍을 구현하기 위해 유명한 세가지 프로토콜이 존재합니다. 바로 RTMP, HLS, WebRTC입니다. R..
-
Spring Data JPA에서 페이징 구현하기프로젝트/게시판 프로젝트 2022. 7. 1. 13:27
Spring Data JPA를 활용하여 간편하게 페이징을 구현하여 보겠습니다. 페이징이란 블로그 서비스나 게시글 서비스에서 흔히 볼 수 있습니다. 게시글이 1000개라면 모든 글들이 한 페이지에 보이는 것이 아니라 1번, 2번.... N번으로 별도의 페이지에 10개씩 들어가는 등 페이징을 통해 사용자에게 보이게 됩니다. 1. 우선 PagingAndSortingRepository를 사용해야 합니다. 하지만 기존에 JPARepository를 안으로 타고 들어가면 PagingAndSortingRepository를 구현하고 있습니다. public interface JpaRepository extends PagingAndSortingRepository, QueryByExampleExecutor { PagingAn..