[OpenLayers] WMTS와 TileWMS, ImageWMS의 차이
by 구설구설얼마전 개발 팀 주간 회의에서 기술 이사님께서 내가 담당한 시각화 서비스의 위성 영상 출력 방식이 무엇이냐고 여쭤보셨고, 나는 ImageWMS로 제공한다고 말씀 드렸다.
이사님께서 ImageWMS는 GeoServer에서 영상 이미지를 가져오는 초기 시간이 많이 소요되니 IamgeWMS말고 WMTS를 사용하라고 말씀하셨는데, 기존에도 타일링된 형식을 사용해 보려고 했지만 위성 영상이 타일링 되는 결과가 격자로 쪼개져서 보이는 문제가 있었다.
그런데 사실은 WMTS가 아니라 TileWMS를 사용했었는데, 이 두 방식의 차이를 몰라서 그냥 넵넵 하고 회의를 마무리 했었다.
사실 원래 GeoServer에서 위성 영상을 불러오는 코드도 WMTS를 불러왔었는데, 내가 회사에 들어오기 전에 존재하던 코드여서 나보다 먼저 입사하신 분께 해결해달라고 말씀드렸고, 실제로 그 분께서 해결하셨다.
그런데 위성 영상을 불러오는 API의 응답은 정상인데 지도에 위성영상을 띄워지지 않는 문제가 있었다.
GeoServer에 Tile Layers 탭으로 들어가서 해당 위성 영상에 타일 캐시를 생성하니 해결되었지만,
WMTS TileWMS ImageWMS 세 방식의 차이를 알아놓으면 좋을 것 같아 정리하게 되었다.
WMTS
타일 형식으로 미리 정의된 정적 지도 이미지를 제공한다.
서버는 미리 타일 데이터를 가지고 있어야 하며, 클라이언트가 타일을 요청할 때 테이터를 제공한다.
미리 생성된 타일을 사용하기에 빠르고 부하가 적다.
TileWMS
클라이언트가 타일 단위로 WMS 요청을 보내고, 서버가 요청에 따라 타일을 생성하여 제공한다.
클라이언트가 타일을 요청할 때마다 타일 이미지를 동적으로 생성한다.
ImageWMS
클라이언트가 전체 이미지를 하나의 WMS 요청으로 보내고, 서버가 요청에 따라 해상도와 크기를 조정하여 이미지를 생성하여 제공한다.
이미지를 하나의 파일로 제공하므로 부하가 크고, 따라서 오래 걸린다.
TileWMS를 사용했을 때 위성 영상이 타일별로 다른 해상도를 가지고 있던 이유는 아마 서버에서 타일을 생성 중이였거나, 영상을 클라이언트가 요청하는 방식에 약간 문제가 있지 않았을 까 하는 생각을 한다.
현재는 WMTS를 사용하여 빠르고 통일된 타일 이미지를 GeoServer에서 받아오고 있다.
'기타' 카테고리의 다른 글
[NPM] 한국어 로렘 입숨 (Lorem ipsum) 라이브러리 제작 (1) | 2024.09.16 |
---|---|
[OpenLayers] Map 객체 간의 이벤트 공유 (0) | 2024.08.30 |
서버 실행과 터미널 종료의 관계 (0) | 2024.07.29 |
[GeoServer] 실습 과정에서 생긴 궁금한 점들 (0) | 2024.07.02 |
[GeoServer] 설치 및 실습 내용 정리 (0) | 2024.07.02 |
블로그의 정보
공부중임
구설구설