배움장 - 0tak
2022년 12월 29일의 배움
2022-12-29- 오늘은 커넥션 풀과 MVC 패턴에 대해 배웠다.
- 커넥션 풀
- 커넥션 풀은 다수의 커넥션을 모아 놓은 풀이다. 어플리케이션이 실행될 때, 미리 다수의 커넥션을 만들어 커넥션 풀에 모아놓고, DB에 접속하여 작업을 수행해야할 때 커넥션 풀에 있는 커넥션을 가져와 사용 후 반납하는 방식으로 커넥션을 관리할 수 있다.
- DB에 접속하여 작업을 수행할 때마다 커넥션을 생성하는 방법은 부하가 심하다는 것을 어제 논의했었는데, 대안으로 커넥션 풀을 이용하면 이 문제에서 자유로워질 수 있다.
- 여러 커넥션 풀 라이브러리 중 Apache commons DBCP 라이브러리를 사용하는 방법을 배웠다.
- MVC 패턴
- 계층화 아키텍쳐(Presentational Layer / Buisness Logic Layer / Persistance Layer / Database Layer)를 실제로 적용하기 위해 고안된 디자인 패턴이다.
- 이 패턴을 따르면 뷰 / 모델에 해당하는 도메인 오브젝트와 서비스 / 뷰와 서비스를 연결해주는 컨트롤러로 코드를 분할하여, 역할과 관심사에 맞게 구조화할 수 있다.
- 다만 프로젝트 스케일이 커질수록 View가 불필요하게 늘어난다는 단점이 있어서 그 대안으로 MVVM, MVT, MVP 등의 패턴도 파생되었다.
- 고민
- MVC 패턴을 따를 떄, 뷰, 서비스, 컨트롤러의 경계를 정하는 것이 어려웠다.