Paper.Yellow
데이터 베이스 연결 본문
1) conn
-DAO
-Service
Conn 메모리 공간은 DS 진입 직전에 생성되서 DS 나갈때 반환한다.
스프링이 커넥션 개체를 관리 해줌. 커넥션 개체는 IOC 컨테이너에 있다. 언제든지 가져와서 사용할 수 있다.
프레임 워크가 위 과정을 다 도와준다.
2) 쿼리 작성
3) 전송 (SELECT)
4) Result
5) Java Object 변경
mybatis, 자바의 관계형 데이터베이스 프로그래밍을 쉽게 도와주는 프레임워크이다. 이걸 통해 2~5 과정을 쉽게 할 수 있다.
클라이언트가 모델을 통해 접속해서 응답을 받을때까지 다른 클라이언트가 접속을 못함. 동기적으로 처리된다.
스레드를 추가해서 스레드마다 커넥션을 받아서 처리한다. 이러면 커넥션이 무한정으로 늘어난다.
DB 입장에선 무한정 받을 순 없다.
이 문제 해결은 여러가지 방법이 있지만 그중에 DB복제가 있다. 그렇게 되려면 DB간에 동기화가 일어나야한다. DB중 한군데에서 Update가 일어났을때 동기화 전에 다른 DB접속되어 값의 차이가 생길 수 있다. 데이터베이스 전문가의 영역이라 아직은 알 수 없는 영역.
Connection Pool
DB 컴퓨터 입장에서 커넥션의 한계를 알고 그 한계치만큼의 커넥션들을 미리 만들어 둔다.
클라이언트 DS부터 접근 할때마다 만들어둔 커넥션을 임대해준다.
클라이언트 접근할때마다 항상 두가지 메모리공간,객체를 가진다. request와 conn.
두가지는 DS에서 부여되며, conn은 DS에서 빠져나갈때 반납되고, request는 포트를 나갈때 사라진다.
커넥션의 연결 지점을 선택해서 끊는 등의 관리도 가능하다.
좀 더 알아보기
**마이바티스 프레임워크
**커넥션 풀
'Spring Boote' 카테고리의 다른 글
복습 (0) | 2022.09.13 |
---|---|
MairaDB 설치 및 초기설정 (0) | 2022.09.13 |
데이터 받기 - Get / Post / Put / Delete (0) | 2022.08.29 |
Postman 설치 (0) | 2022.08.29 |
톰캣 메모리 구조 - Request & Response (0) | 2022.08.26 |