분류 전체보기
AWS01 :: AWS - 공유 인스턴스(Shared Tenancy)
AWS01 :: AWS - 공유 인스턴스(Shared Tenancy)
2020.06.04AWS에서 제공해주는 Shared Tenancy 는 하나의 물리적인 서버에 여러 개의 EC2 Instance 를 실행합니다. 인스턴스의 유형에 따라서 공유 리소스의 최소 성능을 높히거나 낮게 측정할 수 있습니다. 관련 서비스에 대해서 stackoverflow 에 올라온 질문을 참고했습니다. OS 위에서 하이퍼바이저에 할당하고 VM들이 켜지면 공유 인스턴스의 리소스 이슈가 발생합니다. 그러면 ...? EC2는 CPU, Memory를 할당받습니다. 이러한 리소스들은 다른 유저의 인스턴스에 영향을 끼치지 않는 독립적인 형태입니다. 또, 각 인스턴스는 vCPUs를 할당받습니다. 여기서 독립적인 형태이기 때문애 다른 인스턴스는 해당 vCPUs를 사용할 수 없습니다. 하지만, t1, t2 인스턴스는 예외적입니다. ..
알고리즘 88 :: 프로그래머스_가장먼노드
알고리즘 88 :: 프로그래머스_가장먼노드
2020.06.031 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 42 43 44 45 46 47 48 import java.util.*; class Solution { static boolean[][] map; static int cnt = 0; static int[] dist; static void BFS(int n, int start){ Queue q = new LinkedList(); q.add(start); dist[1] = 0; int max = Integer.MIN_VALUE; while(!q.isEmpty()){ int x = q.poll(); for(i..
GCP03 :: Cloud Function 이미지에서 글자 추출(2)
GCP03 :: Cloud Function 이미지에서 글자 추출(2)
2020.06.03Main.py 에 들어가는 코드의 개요는 다음과 같습니다. VISION API 와 bigQuery 각각에 대해 코드에서 API로 사용할 수 있도록 객체로 생성합니다. e.g ) vision_client = vision.ImageAnnotatorClient(), bigQuery_client = bigquery.Client() Google Cloud Storage event 를 가지고 있는 bucket 의 이름을 이용하여 Google Cloud Storage 의 URL을 생성합니다. 그리고, Vision API에서는 GCS URL을 제공하고 TEXT로 추출합니다. 최종적으로는 bigQuery insert 문을 활용하여 query를 정의하고 bigQuery를 실행시킵니다. python 에서는 requireme..
GCP02 :: Cloud Function 이미지에서 글자 추출
GCP02 :: Cloud Function 이미지에서 글자 추출
2020.06.03개요는 다음과 같습니다. Cloud Function 에서 python으로 작성된 언어를 기반으로 Google Cloud Storage 에 이미지가 업로드 되면 감지하여 Vision API 를 활용해 글자를 추출하여 bigQuery 적재 이후 데이터 분석을 진행합니다. 이번에는 Cloud Function 에 대한 설정을 진행하겠습니다. 이 다음에서는 책에서 주는 코드로 Cloud Function 을 생성하고 이미지를 Bucket에 업로드 한뒤, 이를 bigQuery 로 분석하여 결과적으로는 Query로 조회하는 결과를 확인해보겠습니다. !!! 출처 : 구글 클라우드 플랫폼 쪼개기
GCP01 :: Cloud Function
GCP01 :: Cloud Function
2020.06.03Cloud Function은 서버리스 컴퓨팅 서비스 입니다. Cloud Infra, Service 에서 발생하는 이벤트에 연결될 수 있는 함수들을 만들 수 있습니다. 특징 클라우드 서비스 연결 및 확장 서비스를 연결하고 확장하는데 코드를 작성하고 이해할 수 있습니다. 이벤트 및 트리거 클라우드 환경에서 발생할 수 있는 이벤트를 의미합니다. 서버리스 서버 관련 인력, 소프트웨어, OS를 고려하지 않아도 됩니다. Cloud Function은 API, Webhook에 적합합니다. google cloud platform 에 접속(https://cloud.google.com/?hl=ko) ⇢ 홈 탭에 Cloud Functions 클릭 ⇢ default 설정으로 생성 하였습니다. 이때, 403 forbidden 이..
일상08 :: 감정폭력 - 세상에서 가장 과소평가되는 폭력 이야기
일상08 :: 감정폭력 - 세상에서 가장 과소평가되는 폭력 이야기
2020.05.09우리는 과연 잘하고 있는건가..? 누군가에 무심코 던지는 한마디가 그 사람의 감정을 결정 지을 수도 있다. 책을 읽으면서 들었던 생각은 물리적인 폭력 외에도 감정 폭력으로 상대방의 정신에 악영향을 미칠 수 도 있다는 것이다. 특히, 개인 대 개인에서 발생하는것이 아니라 집단에서 자연스럽게 많이 발생할 수 있다는 사실을 간과하곤 한다. 그렇다면 책에서 말하고 있는 감정폭력은 무엇인가? 반복적인 정신 외상이 사람을 병들게 하는 것이다. 감정 폭력은 다양하게 발생되고 우리 주변에서 쉽게 볼 수 있다. 아이를 기르는 부모님 부터 학생들 직장인들 모두가 대상이 된다. 감정폭력이 무서운 이유는 억눌려 있기 때문이다. 이로인한 공격성은 자칫 무의식중에 증오와 정서적인 폭력으로 이어질 수 있다. 누군가로부터 받은 감정..
알고리즘87 :: 프로그래머스_징검다리건너기
알고리즘87 :: 프로그래머스_징검다리건너기
2020.05.041 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 package programmers; public class 징검다리건너기 { public static void main(String[] args) { // TODO Auto-generated method stub int[] stones = {2, 4, 5, 3, 2, 1, 4, 2, 5, 1}; int k = 3; int low = 1; int high = 200000001; int mid = 0; while(low
알고리즘86 :: 프로그래머스_불량사용자
알고리즘86 :: 프로그래머스_불량사용자
2020.05.041 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 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 package programmers; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.Map; public class 불량사용자 { static ArrayList al; static Map ma = ..
OS01 :: 1장
OS01 :: 1장
2020.04.25컴퓨터가 켜질 때는 부트스트랩이 실행된다. 이후, 커널이 관장하게 되는데 CPU에 이벤트를 알리는것이 인터럽트다. 소프트웨어에 의해 발생하는 인터럽트를 트랩 이라고도 하면 System call 에 의해 동작하게 된다. 반면에 하드웨어로 발생하게 되는 인터럽트는 System bus 에 의해 동작하게 된다. 폴링(Polling) 은 주기적으로 다른 장치의 상태를 감시하기 때문에 컴퓨팅 자원의 낭비가 발생한다. 따라서 주도적 이벤트를 처리하는 인터럽트를 발생하여 처리하게 된다. 메인 메모리 같은 경우는 RAM 이며 이는 휘발성 즉, 사라진다. 커널과 사용자의 매개 인터페이스는 System call 이다. 사용자의 입출력을 통해 System call 을 요청하게 되면 소프트웨어에 의해 발생하는 인터럽트를 통해 ..
일상07 :: 0425+일기
일상07 :: 0425+일기
2020.04.25협업 필터링 알고리즘과 컨텐츠 기반 알고리즘을 혼합해서 하이브리드 알고리즘을 구축해보았다. 알고리즘 문제 중에 구명보트 라는 문제에서 살짝 애먹었다. two point 문제 인지 나중에 알았다. 라인 같은 문제... 다리만들기2 풀고 자야겠다.
알고리즘85 :: 프로그래머스_수들의합
알고리즘85 :: 프로그래머스_수들의합
2020.04.251 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 import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.Arrays; class Solution { public int solution(int[] people, int limit) { ArrayList al = new ArrayList(); for(int i=0; i
IT04 :: 200424 IT 스터디
IT04 :: 200424 IT 스터디
2020.04.24DNS 로 IP 의 보안을 지킬 수 있는데 이러한 인터넷 프로토콜의 보안으로 취약해서 간파당할 수 있다. Node.js 는 Non-blocking I/O모델이다. 특히, 이 모델은 요청하면 결과를 바로 보내준다. 그리고 커널에서 처리해준다. (I/O중단이 없다.) JWT 는 access token 과 refresh token 이 있는데 accesstoken 이 만료되면 refresh token으로 맞는지 확인하고 재 발급해준다. Spring framework 는 dispatcher Servlet 이 HanderMapping 을 통해 Control로 분기하고 ViewResolver 를 통해 view(.jsp) 찾아간다. [[prototype]] 링크(=proto) 로 수색을 한다. root 에 Object..