네트워크 계층 구조 (OSI 7계층)네트워킹에 대한 표준을 7계층으로 나눈 것통신이 일어나는 과정을 단계별로 파악하기 위함물리 계층데이터가 전기 신호로 변환데이터 링크 계층어떻게 통신이 일어나는지 흐름제어 오류 검출 등네트워크 계층최적의 경로를 설정전송 계층데이터세션 계층통신 관리표현 계층데이터의 형식을 정의응용 계층사용자에게 UI로 보여주는 계층프로토콜물리계층과 데이터링크 계층(이더넷과 네트워크 장비)네트워크 계층 (IP)인터넷 프로토콜의 약자로 인터넷 망을 통해 패킷을 전달하는 프로토콜비신뢰성데이터 흐름에 관여하지 않기 때문에 패킷이 제대로 갔는지 보장하지 않는다.비연결성연결상태임을 확인하지 않고 전송전송 계층(TCP와 UDP)TCP신뢰성이 높은 프로토콜연결을하여 3 way handshaking, 4..
자료 구조는 코드의 성능과 밀접코드 성능을 어떻게 수치화 할 것인지시간 복잡도와 공간 복잡도를 고려해야함 주요 자료 구조배열과 연결리스트스택과 큐해시 테이블트리- 계층형 데이터그래프 정렬 알고리즘힙최대값 혹인 최소값을 빠르게 찾기 위한 이진트리최소 힙인 경우에는 부모는 자식보다 작고, 최대 힙인 경우에는 부모는 자식보다 크다높이 만큼의 시간 복잡도 O(logN)이진탐색 트리왼쪽자식은 부모보다 작고, 오른쪽 자식은 부모보다 큰 이진 트리한쪽으로 편형될 수 있음 (N)시간 복잡도는 O(logN ~ N)자가 균형 트리편향되지 않게 삽입, 삭제를 개선한 이진 탐색 트리이진 탐색 트리는 시간 복잡도가 트리의 높이에 따라 결정되므로 편향될 경우 효율이 떨어짐그래서 편향되지 않게 삽입과 삭제를 개선한 이진 탐색 트리..
운영체제란시스템의 자원과 동작을 관리하는 소프트웨어프로세스, 저장장치, 네트워킹, 사용자, 하드웨어를 관리메모리메모리 구조: code, data, heap, stack코드 영역실행할 프로그램의 코드(소스 코드)데이터 영역전역 변수정적 변수힙 영역사용자의 동적 할당(데이터가 동적 할당)런타임에 크기가 결정됨스택 영역함수의 호출 정보지역변수매개변수컴파일 타임에 크기가 결정커널- 인간의 심장과 같음시스템 콜- 커널로부터 핵심적인 기능을 제공받는지 프로세스 및 스레드 관리프로세스실행중인 프로그램각각의 독립된 메모리 영역(code, data, stack, heap)을 할당 받는다스레드프로세스 안 실행 단위프로세스 안에 스레드 여러 개가 존재하여 code와 data, heap은 공유하지만 stack은 스레드마다 ..
컴퓨터가 이해하는 정보데이터- 명령어가 실행되기 위한 재료- 0과 1로 이루어져있는 데이터- 컴퓨터가 이해하는 정보로 어떤식으로 읽히게 되는지- 인코딩과 관련명령어- 어떻게 소스 코드가 컴파일러 되서 명령어를 실행하는지- 인터프리터인 경우에는 소스코드가 어떻게 읽어 들어 명령어를 실행하는지 컴퓨터의 핵심 부품CPU- 인간의 두뇌와 같음- 명령어를 어떻게 빠르게 처리하는지메모리- 종류와 성능- 보조하는 캐시 메모리- 실행되는 프로그램을 저장- 휘발성보조기억장치- 보관할 프로그램을 저장- 비휘발성- 어떻게 안정적으로 저장할 것인지입출력장치
IP인터넷 프로토콜, 통신하기 위해 필요한 주소loopback127.0.0.1호스트에 할당된 아이피를 의미내가 가지고 있는 컴퓨터에서 localhost 또는 127.0.0.1로 서버를 띄울 경우 서버를 띄운 컴퓨터에서만 접속이 가능공인 IP공인 IP의 경우에는 어디에서나 접속이 가능192.168.0.x사설 IP사설 IP의 경우에는 같은 대역의 사설 IP를 할당받은 모든 기기에서 접속이 가능단, 같은 대역의 사설 IP에 붙어있지 않은 경우 (같은 와이파이가 아닌 경우) 접속이 불가능 IPv4IPv4 전 세계적으로 첫 번째 사용된 첫 번째 프로토콜32bit로 이루어진 주소이며 합산해보면 약 43억개의 주소를 가지게 된다(0 ~ 2의 32승)전 세계적으로 인터넷 사용자 수가 급증하면서 주소가 고갈될 위기가 처..
@Transactional어노테이션이나 AOP로 트랜잭션을 처리하는 방법으로 데이터의 일관성을 유지하면서 안정적으로 데이터를 복구하기 위해 사용하는 형태입니다.이러한 방법은 위에서 언급한 어노테이션으로 설정하는 방법과AOP로 지정한 메서드 이름에 Transactional을 부여하는 방법 2가지가 존재합니다. 나는 2가지의 방법을 시도하였으나 트랜잭션에 작성에는 문제가없었지만 롤백이 되지 않는 문제가 발생하였습니다.처음에는 트랜잭션의 설정을 잘못한 줄 알아 계속해서 설정하는 방법을 찾았으나 설정 자체에는 문제가 없다는 것을 깨닫게 되었고 다른 방법을 찾게 되었습니다.안되는 이유에 대해서 한참을 찾게 되었는데, 검색으로 나온 결과론 첫 번째 가설은 Checked Exception의 문제였습니다,@Trans..