티스토리 뷰
JNDI (Java Naming and Directory Interface)
-> DNS라는것을 들어보았을 것이다. 도메인 네임 서버의 약자인데, 예를 들자면 www.naver.com이라는 문자열은 사실 (예시일뿐임) 128.192.51.36 이라는 아이피로 변경되어야 제대로 네이버에 접속 할 수 있게 된다. 이렇게 문자열을 어떤 IP주소로 바꿔주는 역할을 하는것을 DNS라고 하는데
JNDI도 그것과 비슷한 역할을 한다. DNS는 문자열:아이피 맵이라고 생각하면 되지만, JNDI는 (문자열:자바객체)로 이루어진 맵이라고 생각하면 될 것 같다.
웹 서버에서는 여러개의 컴퓨터가 서버 역할을 할 수 있다. 웹 서버 간의 어떤 객체를 공유하고 싶을때 JNDI를 이용한다.
웹서버에 1,2,3,4번 컴퓨터 총 4대가 존재한다고 해보자. 1번 컴퓨터에서 어떤 객체를 다른 웹 서버 컴퓨터 들과 공유하고 싶을때 JNDI에 그 객체에 이름을 달아서 저장해 놓으면 다른 2,3,4 컴퓨터에서 그 객체를 참조할수 있게 된다.
마치 하나의 컴퓨터가 하나의 웹서버를 담당하는것 처럼 동작하기 위해서 존재하는것 같다.
이름을 통해서 그것이 어떤 서비스를 의미하는지 알아야 한다. 이름을 해석해보자.
Naming -> 이름을 붙이다 -> 어떤 자바 객체에 이름을 붙이다.
Directory -> 폴더를 떠올리자 -> 객체의 이름:실제 객체가 저장된 맵의 형태(폴더 느낌)
Interface -> JNDI 서비스를 활용하기 위한 API가 존재한다.
JNDI라는것은 JNDI서비스를 활용하기 위한 API이다.
JNDI에는 Context라는것이 있는데 이것은 JNDI의 맵핑 테이블을 의미한다고 생각하면 편하다.(뇌피셜이라 틀릴 수 있음)
Context라는것은 문맥이라는 뜻이다. 이것은 어떤 하나의 큰 물체라고 생각하면 편한다.(마찬가지로 뇌피셜)
'컴퓨터 공학과 졸업 > 기본 개념' 카테고리의 다른 글
URI = URL + URN (0) | 2018.06.26 |
---|---|
DBCP (0) | 2018.02.14 |
GET방식과 POST방식 (1) | 2018.01.26 |
POJO,DTO,DAO,VO (2) | 2018.01.23 |
자바 빈즈란? (0) | 2018.01.21 |
- Total
- Today
- Yesterday
- rendering scope
- typescript
- react hooks
- hydrate
- server side rendering
- webpack
- mobx
- design system
- useRef
- computed
- react
- useEffect
- type alias
- Polyfill
- storybook
- atomic design
- reducer
- reactdom
- async
- Babel
- Action
- reflow
- await
- state
- return type
- javascript
- es6
- props
- Next.js
- promise
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |