(1) socket(), 소켓 개설PF_INET ==인터넷 프로토콜 사용하겠다는 뜻SOCK_STREAM == TCP프로토콜 사용하겠다는 뜻 소켓 프로그래밍을 하기 위하여는 다섯 가지 요소 사용할 트랜스포트 프로토콜(스트림 또는 데이터그램), 자신과 상대방의 IP 주소, 자신과 상대방의 포트번호가 지정돼야 함. ▶ socket()을 호출시에는 트랜스포트 프로토콜만을 지정하게 되는데 그림 2-8에 socket() 수행시 내부적으로 일어나는 동작을 나타냈다. 여기서 응용 프로그램이 프로토콜을 지정하여 socket()을 호출하면 소켓 인터페이스가 새로 생성된 소켓의 소켓번호를 리턴하는 것을 보여주고 있다.▶ 한편 클라이언트는 자신이 사용할 포트번호를 명시적으로 지정할 필요가 없다. 즉, 클라이언트는 bind()..
1. 데이터베이스의 추상화 사용자가 취급하는 데이터베이스는 어떠한 구조로 물리적 저장장치 위에 저장되어야 한다. 이러한 저장 구조를 사용자의 입장에서 보느냐, 저장장치의 입장에서 보느냐에 따라 논리적 구조와 물리적 구조로 구별한다. 즉, 논리적 구조는 사용자가 생각하는 데이터의 논리적 표현이다. 반면에 물리적 구조는 디스크나 테이프와 같이 저장장치 위에 물리적으로 저장되어 있는 데이터의 실제 구조를 의미한다. 1.1 데이터의 계층 구조 비트(BIT : BInary digiT)바이트(Byte)필드(Field)레코드(Record)파일(File) = 테이블데이터베이스(Database) 스키마 1. 사전적 의미 : 개요 도표2. 데이터 베이스에서의 의미 : DB를 논리적으로 정의한 것을 나타내는 용어, Sche..
데이터 무결성데이터 무결성을 강제 적용하면 데이터베이스에 있는 데이터의 품질이 보장(데이터에 결함이 없다 == 무결성)됩니다. 예를 들어 한 사원의 사원 ID 값으로 123을 입력한 경우 데이터베이스의 다른 사원이 동일한 값의 ID를 갖지 못하도록 해야 합니다. employee_rating 열에 필요한 값이 1에서 5 사이이면 데이터베이스에서 이 범위를 벗어난 값을 허용하지 않아야 합니다. 테이블에 사원의 부서 번호를 저장하는 dept_id 열이 있으면 데이터베이스에서 회사의 부서 번호에 유효한 값만 허용해야 합니다.테이블을 계획할 때 필요한 두 가지 주요 단계는 특정 열에서 유효한 값을 확인하고 열에 있는 데이터의 무결성을 유지하는 방법을 결정하는 것입니다. 데이터 무결성은 다음과 같은 4가지 범주로 ..
자바는 자바가상머신이라는 것을 사용한다.자바는 작성된 프로그램을 한번 컴파일 한뒤 인터프리터 방식으로 실행하게끔 설계되어있다. 자바 프로그램의 실행 순서는 다음과 같다.자바로 작성된 프로그램 -> 바이트 코드 -> 인터프리터 방식으로 바이트 코드를 한줄한줄 해석하면서 실행 즉 자바 프로그램은 한번 컴파일 할때 자바 가상 머신이 해석할 수 있는 형태인 바이트 코드로 변형이 되고그 바이트 코드를 자바 가상머신이 한줄한줄 해석하면서(인터프리터방식) 실행시키는 방식으로 진행이 된다.그렇기 때문에 자바 가상 머신만 있다면운영체제나 cpu에 종속적이지 않고 자바로 된 프로그램을 한번 작성하면 어떤 플랫폼에서든지 그 프로그램을 실행 시킬수 있다는 장점이 있다.(c나 c++같은 경우 cpu나 운영체제가 달라지면 같은 ..
컴퓨터 리소스에게 직접적으로 명령을 내리는 커널이 있고 쉘이 있으며 응용프로그램이 있다.그렇다면 여기서 쉘은 무엇인가?쉘(Shell)은 조개껍데기라는 뜻이 있으며, OS를 둘러싸고 있는 껍질과 유사하다. 정리하자면 OS와 사용자에게 의사소통을 가능하게 해주는 기능을 담당한다.쉽게 예를 들어 생각하면 윈도우의 MS-DOS창을 생각하면 된다.(여기서 커널이랑 쉘의 차이점이라 하면 커널은 바로 하드웨어의 리소스를 관리하며 쉘은 커널에게명령을 내리게 하는 기능을 가지고 있다. 커널은 기계어 등 어려운 언어를 가지고 있으므로 바로 쓰기 힘들기에 쉘을 이용하여 커널을 컨트롤 할 수 있게 만들어 놓은 것이다.) 쉘의 기능은 응용 프로그램과 커널과의 의사소통 역할, 즉 유저와 커널 사이의 의사소통 역할을 한다. 하드웨..
*소켓의 정의소켓(socket)은 1982년 BSD(Berkeley Software Distribution) UNIX 4.1에서 처음 소개되으며 현재 널리 사용되는 것은 1986년의 BSD UNIX 4.3에서 개정된 것입니다.소켓은 소프트웨어로 작성된 추상적인 개념의 통신 접속점이라고 할 수 있는데 네트웍 응용 프로그램은 소켓을 통하여 통신망으로 데이터를 송수신하게 된다. 소켓은 응용 프로그램에서 TCP/IP를 이용하는 창구 역할을 하며 응용 프로그램과 소켓 사이의 인터페이스 역할을 하고 있습니다. *소켓의 구조 클라이언트 어플리케이션은 서버와 통신을 하기위해 어떠한 메시지 또는 데이터를 서버에게 보내려 할 것 입니다. 그러하기 위해서는 네트워크에 연결하여 서버에 접속하여야 합니다. 그러기 위해서는 소켓..
하루에 글 작성 개수를 5개로 제한하고 그 이상 작성하려고 하면 아이피를 금지시켜서 다른 아이디로 로그인 하더라도 글 작성이 안되게끔 하는 방법을 알아보겠습니다. 우선 아이피 차단기능을 사용하기 위해서 인터셉터라는것이 필요합니다. 인터셉터에 대해서 간단히 설명하자면 DispatcherServlet과 컨트롤러 사이에 위치하며, 인터셉터에서 설정한 맵핑 경로에 해당하는 요청경로를 모두 가로챈다음 인터셉터 핸들러를 거치게끔 할 수 있습니다. 한마디로 말해서 컨트롤러로 가기전, 컨트롤러를 거치고난 후 어떤 처리를 해주고 싶을때 인터셉터를 사용합니다. 스프링 시큐리티에서 사용하는 필터와 기능은 비슷하지만 필터는 DispatcherServlet 앞에 위치하기 때문에 가장먼저 요청url을 받는다는 차이가 있습니다. ..
- Total
- Today
- Yesterday
- webpack
- react hooks
- props
- atomic design
- state
- Next.js
- await
- useEffect
- design system
- server side rendering
- Polyfill
- useRef
- Babel
- javascript
- react
- type alias
- es6
- storybook
- reducer
- rendering scope
- typescript
- async
- return type
- Action
- mobx
- reflow
- promise
- computed
- reactdom
- hydrate
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |