분류 전체보기
WIL // RDB 확장, Dynamic Linking, 스케줄러
WIL // RDB 확장, Dynamic Linking, 스케줄러
2021.11.05① RDB 수행할 때 scale up을 수행합니다. ⇢ NoSQL은 scale out(접속된 서버의 대수를 늘려 처리 능력을 향상시키는 것)이 가능합니다. 반면에, RDB는 scale up만 가능합니다. ② 디스크 접근 시간 ⇢ 보통의 경우 디스크 접근 시간은 Transfer Time이 은근 많이 걸린다고 한다. (데이터가 상당히 크게 잡히는 부분) ③ Dynamic Linking ⇢ 동적 링킹이란 실행 가능한 목적 파일을 만들 때 프로그램에서 사용하는 모든 라이브러리 모듈을 복사하지 않고 해당 모듈의 주소만을 가지고 있다가, 런타임에 실행 파일과 라이브러리가 메모리에 위치될 때 해당 모듈의 주소로 가서 필요한 것을 들고 오는 방식이다. 런타임에 운영체제에 의하여 이루어진다. ④ 중기 스케줄러 ⇢ 너무 ..
WIL // dijksta, python 정렬, delete/truncate/drop 차이
WIL // dijksta, python 정렬, delete/truncate/drop 차이
2021.10.17① dijksta 우선순위 큐(최소힙) 으로 BFS를 만들되 최소비용으로 탐색을 수행하는 과정을 의미합니다. ② 프로그래머스 n으로 표현 N 으로 표현 문제는 1~8 개수에 맞춰 나올 수 있는 사칙연산을 모두 구하여 리스트에 담는 과정을 의미합니다. ③ Python Method pop ⇢ 인덱스 값을 넘겨줍니다. remove ⇢ 값을 넘겨줍니다. index ⇢ 값을 넘겨줍니다. insert ⇢ (1,2) 1에는 인덱스를 2에는 값을 넘겨줍니다. ④ Python 정렬 answer.sort(key=lambda x : x[0]) ⇢ 0번째를 기준으로 오름차순 answer.sort(reverse =True) ⇢ 내림차순 ⑤ Python 순열, 조합, 중복조합 ⑥ Delete, Truncate, Drop 차이 D..
WIL // SRP, Spring Boot 동작원리, 냅색 알고리즘
WIL // SRP, Spring Boot 동작원리, 냅색 알고리즘
2021.10.14①객체지향 // SOLID // SRP(Single Responsibility Principle) SOLID 원칙 중에 SRP는 한글로 번역하면 단일 책임 원칙으로 해석됩니다. 여기서 단일 책임은 Class에는 하나의 책임을 가지고 설계해야 한다는 것입니다. Class에 책임의 개수가 많아지게 되면 한 책임의 기능 변화가 다른 책임이 주는 영향에 비례해서 증가하기 때문에 전체 설계에 큰 위험이 따르게 됩니다. 또한, 단일 책임 원칙을 지키지 않게 되면 Class 재사용이 어렵게 됩니다. ② Spring Boot 동작원리 Client로부터 요청이 들어오게 되면 이를 내장 톰캣 서버(=Servlet Container)가 받게됩니다. 여기서 Bean의 관리는 Spring Container 가 수행하게 됩니다...
AWS 게임대회 후기
AWS 게임대회 후기
2021.10.07오늘 AWS에서 개최하는 게임데이 참가했다. 여전히 코로나로 인하여 온라인으로 진행했지만, Virtual 환경에서 주어진 문제를 해결하고 동료들과 협력하여 문제를 해결하는 과정을 평가 한듯 하다. 실제로 문제를 풀어야 점수가 오른다. 한국, 호주, 일본의 AWS 파트너들이 참여하는 이 대회는 총 24팀이 진행한다. 잘 보니까.. 아시아를 대상으로 한듯 하다. 매년 열리는 AWS 게임대회는 Unicon이 상징인듯 하다. 티셔츠도 받았는데 아래처럼 생겼다. ㅎ-ㅎ.. Korea가 붙어있어서 무슨 프로게이머로 착각할지도..? ㅋㅋㅋ 일정은 아래랑 같다. 빡집중은 언제나 힘들다.. 게임 프로세스는 아래랑 같다. 매우 복잡한게 문제를 해결하고 얻은 코인을 바탕으로 Gym을 열어야 하고 Gym을 unlock하게 되..
CORS 해결하기
CORS 해결하기
2021.09.01개요 https://github.com/lllilllilllilili/video-intelligence-demo-app GitHub - lllilllilllilili/video-intelligence-demo-app: 영상 데이터 분석을 합니다. 영상 데이터 분석을 합니다. Contribute to lllilllilllilili/video-intelligence-demo-app development by creating an account on GitHub. github.com 이 프로젝트를 Clone받아서 API 테스트 중 자동화 되지 않고 있어서(영상 업로드 > 전처리 > 결과 파일 Web에 렌더링) 자동화를 시키는것을 목표로 프로젝트를 진행했습니다. 문제발생 자동화를 위해 처음 생각한 아키텍처는 동..
kakao_캐시
kakao_캐시
2021.09.01Cache Size만큼 돌면서 HashMap에 채워 나간다. Hit라면 +5 하한다. Cache 가 가득 차면 하나를 줄인다. import java.util.*; class Solution { public int solution(int cacheSize, String[] cities) { int answer = 0; LinkedHashMap hm = new LinkedHashMap(); if(cacheSize == 0){ return cities.length*5; } int cnt = 1; for(int i=0; i
백준_새로운게임2
백준_새로운게임2
2021.08.13
프로그래머스_디스크컨트롤러
프로그래머스_디스크컨트롤러
2021.08.13
프로그래머스_실패율
프로그래머스_실패율
2021.08.13
[네트워크] gRPC
[네트워크] gRPC
2021.08.06세미나에서 했던 내용을 정리해보고자 합니다. 어쨋든 공부를 했으면 정리를 해야 하니 간단히 필요한 내용만 정리해보겠습니다. gRPC 란? RPC는 어디서 많이 들어본 얘긴데, g가 붙었습니다. 그렇습니다. google에서 만든 RPC 프레임워크 입니다. 그럼 왜 google에서 RPC 프레임 워크를 만들었을 까요? 이건 이제 프로세스 통신으로 거슬러 올라갑니다. 생각해보면, 프로세스는 서로 통신하기 위해서 IPC 통신을 합니다. 그 중 소켓을 이용한 방법이 있는데 Session Layer에 위치한 이 소켓은 L7에서 L4로 이동하며 TCP/UDP를 이용해 일종에 창구 역할을 수행하며 네트워크 통신을 하도록 도와주게 됩니다. 즉, 목적이와 통신이 로컬 호스트가 아니라 온라인 범위에서 이루어지기 때문에 네트..
새로운게임_Java
새로운게임_Java
2021.08.04문제 접근 하기 위해 아래 2가지를 만들어주었다. 1. 말의 상태를 관리하는 class를 생성 => 체스의 상태를 관리해줘야 하는 이유는 체스가 움직이면 맨 밑에 있는지 위치는 어디인지 방향은 어디인지를 명확하게 알기 위함이다. 2. 맵, ArrayList 맵 => 맵은 0,1,2 이렇게 표시만 되는 부분이고 ArrayList 맵은 어떤 체스들이 들어 있는지 보여준다. 예를 들면 다음과 같다. ArrayList_Map[0][0] = { 1,2,3 } 의 의미는 (0,0) 좌표에 체스 1,2,3 이 포진해 있다. 이렇게 해석하면 된다. 3. 우선 main으로 쭉 나열해서 푸는 방법 그리고 재귀적으로 푸는 방법 2가지 모두 시도해보았다. 아무래도 main에다 다 때려박아서 하는게 속도는 더 좋았다. 그치만 ..
LeetCode : Partition Label
LeetCode : Partition Label
2021.07.07https://leetcode.com/problems/partition-labels/submissions/ 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 32 33 34 35 36 37 38 39 40 41 class Solution { public List partitionLabels(String s) { //last Index 넣어라 HashMap hm = new HashMap(); String[] splitMsg = s.split(""); for(int i=0; i