본문 바로가기

전체 글

(26)
GitHub 더 잘 쓰기! 레파지토리 폴더구조 쉽게 보기 GitHub을 사용하면서레파지토리를 포크하거나 클론해서 소스를 받아서 IDE로 열어서 봐야하나? ' Code'화면에서 폴더를 계속 눌려가면서 한페이지로 보는 것도 불편하다. chrome 브라우저를 사용한다면, Octotree Extention을 사용해서 브라우저에서 폴더 구조를 한눈에 볼 수 있다. Octotree - GitHub code tree GitHub on steroids chrome.google.com Extention을 설치하고 활성화하면, GitHub 레파지토리에 들어갔을 때, Octotree라는 탭같은 친구가 보인다.(초록박스) 저 친구를 눌리면 펼처지는 폴더구조들!
DataGrip Mysqldump Quick Honey Tip - Mac Intell 사용 중 - Home brew 사용 중 > mysql 설치되있으면, skip. brew로 mysql 5.7 다운로드. 5.8부터 덤프지원이 안될 수 도있음. 정신건강을 위해 5.7겟차 brew install mysql@5.7 > Datagrip에서 덤프 대상 스키마를 선택. 오른쪽 클릭 > 기본으로 생성되는 path가 path를 잡았는데 잘못됬다고 워닝을 띄운다.. Path to executable is wrong > 알아서 잡아주지,.. 무슨기준으로 저걸 잡는건지 모르겠지만,.. 아래처럼 설치한 mysql 5.7 을 뒤적뒤적해서 경로를 잡아주면 잘 만들어준다.. 후후.. 도커로 띄운 mysql 접속해서 cli로 덤프를 뜨려다가 dataGrip에 덤프기능이있어서 오오!! 하고 쓰려..
자바 DateTime 역직렬화 실패! 외부 API 연동해서 데이터를 들고오는 과정에서, JSON 응답값을 Dto로 쌈싸서 로직을 타고 데이터가 저장되야 했다. 응답 JSON 필드 중 DateTime필드가 있어서 해당필드에 @JsonFormat(shape = JsonFormat.Shape.STRING)어노테이션, @DateTimeFormat 어노테이션을 사용해 쌈을 싸려고 했다. 하지만.. 호락호락하지 않은 DateTime.. 바로 발생하는 에러 Java 8 date/time type `java.time.LocalDateTime` not supported by default: add Module "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" to enable handling... 문제의 ..
LLC(Logical Link Control) LLC (Logical Link Control) 부계층 데이터링크 계층 내의 LAN 프로토콜에 관련된 부계층 중 하나. 주로, 여러 다양한 매체 접속 제어 방식 간의 차이를 보완해주는 역할을 함 통신 계층의 구분 LAN에서는 데이터링크 계층을 2개 부계층(MAC, LLC)으로 나누어짐 하위의 MAC 부계층 물리계층 상의 토폴로지나 기타 특성에 맞추어주는 제어를 담당 상위의 LLC 부계층 여러 다양한 MAC 부계층과 망 계층(layer 3) 간의 접속을 담당 LLC 부계층의 목적 여러 상이한 MAC(Media Access Control) 부계층 프로토콜을 사용할 수 있게 하여 망의 토폴로지에 관계없는 통신이 가능하도록 하는 것 -> 인터페이스 같은 역할 LLC 의 주요 기능 및 특징 에러 제어 point-..
CPU 스케줄링 방식 스케줄링이란? 스케줄링이란 컴퓨터의 모든 자원을 효율적으로 사용하기 위한 프로세스 관리 정책으로 컴퓨터 시스템의 성능 향상이라는 목적을 가진다. 선점 스케줄링과 비선점형 스케줄링 CPU 스케줄링에는 하나의 프로세스가 CPU를 점유하고 있을 때 다른 프로세스가 CPU를 빼앗을수 있는 선점(preemptive) 스케줄링과 프로세스에게 이미 할당된 CPU를 강제로 빼앗을수 없고, 프로세스의 사용이 끝난 후 스케줄링을 하여야 하는 비선점(non-preemptive) 스케줄링이 있다. 선점 스케줄링 선점 스케줄링 방식은 프로세스의 우선 순위가 높은 프로세스가 CPU를 먼저 차지하기가 용이하기 때문에 주로 실시간 응답을 요구하는 대화식 시분할 시스템에서 사용된다. 하지만, context switching에 의한 o..
무작위 알고리즘(Randomize Algorithm) 무작위 알고리즘(Randomize Algorithm)이란? 무작위 알고리즘은 난수를 발생시켜 진행과정을 결정하는 알고리즘이다. 난수를 발생시키는 과정은 흔히 '동전을 던진다'거 표현하며, 실제로는 의사 난수 생성기를 사용한다. 알고리즘의 성능을 평균적으로 향상시키기 위해 난수를 사용한다. 난수를 사용하기 때문에 알고리즘의 성능은 확률변수이며, 확률변수의 기댓값이 실제로 원하는 성능이다. 알고리즘 성능의 최악의 경우는 일어날 확률이 극히 작기 때문에 대부분 무시한다. 평균의 경우(Average Case)의 확률론적 분석을 위해 주어진 입력을 Randomizing 한다. 알고리즘의 Best/Worst Case를 회피하고 일반적 경우에 대한 확률을 구하기 위해 사용된다. 알고리즘의 종류 Premute-By-S..
해시 충돌의 정의와 해결 방안 해시 테이블이란? 해시 함수를 사용하여 입력 키 값으로부터 해시 값을 얻어 그것을 인덱스로 사용하는 것은 효율적인 검색 방식 중 하나이다. 즉 데이터 저장 공간인 array와 데이터에 대한 위치를 계산하는 hash function 으로 구성된다. 이와 같은 해시 값으로 이루어진 자료구조를 '해시 테이블'이라고 부른다. 해시 충돌이란? 해시 함수가 서로 다른 두 개의 입력값에 대해 동일한 출력값을 내는 상황을 의미한다. 해시 함수가 무한한 가짓수의 입력값을 받아 유한한 가짓수의 출력값을 생성하는 경우 비둘기집 원리에 의해 해시 충돌은 항상 존재한다. 서로 다른 입력 키 값이 서로 다른 해시 값(인덱스)으로 매핑될 경우 해시 테이블 조회에 걸리는 시간은 상수 시간이 된다. 그러나 여러개의 서로 다른 키 값이..
네트워크 기초 - 1주차 과제 네트워크 기초 과제 1 성균관대학교 안성진 교수님 일반적으로 집이나 회사 등에서 IP공유기를 많이 이용하고 있다. 이들은 유선뿐 아니라 무선 LAN을 지원하고 있으며, 주소 할당, 보안 등 다양한 기능을 포함하고 있다. 이들 IP공유기에서 사용되는 프로토콜의 종류를 나열하고 각각에 대해서 어떤 기능을 하는지 설명하시오. 1. NAT (Network Address Translation) 공유기에 연결된 각 장치들이 외부 네트워크와 통신하기 위해 공유기의 NAT라는 기술을 사용한다. 공유기는 자신을 포함하여 연결된 각 장치들에서 사설 IP 주소를 부여함으로써 사설 네트워크를 형성한다. 이때 공유기 자체에 부여되는 사설 IP 주소를 특별히 게이트웨이 주소(Gateway Address)또는 라우터 주소(Rout..