Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Długie odświeżanie map WMS
13-08-2011, 11:43, (Ten post był ostatnio modyfikowany: 22-08-2011, 10:05 {2} przez borys.)
#11
RE: Długie odświżanie map WMS
Przepraszam, umknął mi ten post, pewnie więc odpowiedź spóźniona.

TileCache jest serwerem, który obsługuje protokoły TMS (podej kafel x,y dla zoomu z) oraz WMS-C (zapytanie wygląda jak zwykły wms, tyko trzymamy się ustalonej siatki). Z drugiej strony jest klientem dla serwera wms. Czyli uruchamiasz MapServera jak dotychczas, zupełnie niezależnie instalujesz TileCache, podajesz mu adres MapServera jako źródło danych, a użytkownicy kierują żądania do TileCache'a (protokołem TMS albo WMS-C, do wyboru).

Każdy kafel przy pierwszym żądaniu jest pobierany z MapServera, a później już oczywiście z kesza. Można to tak zostawić i pozwolić keszowi się stopniowo napełniać w miarę używania, a można puścić dołączony skrypt, generujący żądania kafla po kaflu i w ten sposób napełniający kesz. Jeśli zmieniasz dane lub styl renderowania w MapServerze, to wystarczy opróżnić kesz dla danej warstwy, żeby napełniał się świeżymi kaflami.
Wszystko jest opisane na http://tilecache.org/
Borys Jurgiel
Zespół Rozwojowy QGIS
22-08-2011, 08:00,
#12
RE: Długie odświżanie map WMS
Brzmi bardzo prosto, lekko i przyjemnie - chyba przyśpieszę swoje testy TileCache Smile Dzięki za info.
23-08-2011, 13:40,
#13
RE: Długie odświżanie map WMS
Mogę powiedzieć, że TileCache przeszedł testy pomyślnie. Co prawda moim zdaniem dokumentacja projektu jest dość skromna, zwłaszcza dla osoby w tym temacie początkującej. Z własnego doświadczenia mogę podpowiedzieć parę rzeczy, które dla innych mogą być trywialne, ale bardzo wiele osób ma z tym problemy ( co można zauważyć na forach czy blogach zagranicznych)

- mapserver chodzi jako WMS
- konfiguracji TileCache dokonuje się w pliku cfg
- musi być zdefiniowane bbox - zakres obszaru taki jak w Mapserverze, współrzędne są podane z kropką a oddzielone przecinkiem
- maxResolution - liczone wg wzoru (Xmax-Xmin)/256 - 256 to rozmiar boku płytki, w moim przypadku należało zaokrąglić wynik do liczby całkowitej
-można połączyć z OpenLayers - polecam dołączony już plik html i tam zdefiniować maxExtent, maXResolution, projection i numZoomLevels
- jeśli pojawią się różowe kafelki to najprawdopodobniej jest problem z parametrem maxResolution lub resolutions

Tyle z moich doświadczeń - jeśli coś błędnie opisane to śmiało poprawiać Wink


Skocz do: