Mercurial > dive4elements > gnv-client
annotate doc/config-manual/overview.tex @ 938:2d84fc30ab58
Added more chapters in config-manual
doc/trunk@1079 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Hans Plum <hans.plum@intevation.de> |
---|---|
date | Sun, 09 May 2010 18:19:53 +0000 |
parents | |
children | 9a28846dfb9c |
rev | line source |
---|---|
938
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
1 \section{Overview of the GNV-Server} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
2 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
3 \subsection{Tasks and Components of the GNV-Server} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
4 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
5 The GNV-server is a middleware-component and consists of two functional |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
6 components: |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
7 \begin{enumerate} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
8 \item artifact-server -- providing access to the database and |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
9 managing the users' workflow to the GNV-WebClient |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
10 \item mapserver -- providing user-generated maps. Mapserver is |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
11 controlled by the artifact-server. |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
12 \end{enumerate} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
13 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
14 The central concept of the artifact-server is to model the workflow of |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
15 users by the following steps: |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
16 \begin{enumerate} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
17 \item selection of data (parameterization) |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
18 \item processing of result sets (interpolation, clipping) |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
19 \item exporting processed result sets (charts, statistics, raw data) |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
20 \end{enumerate} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
21 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
22 Within the artifact-server, these steps are supported by the following |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
23 core components for the entire GNV-system. The naming refers to |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
24 components used in the configuration. In order to simplify a first |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
25 orientation in the configuration and this manual, the XML-tags/words in |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
26 the central configuration file at {\tt conf/conf.xml} are used. They are |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
27 marked in {\tt typewriter} style: |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
28 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
29 \begin{itemize} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
30 \item {\tt geo-backend} -- access to the database backend |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
31 \item {\tt rest-server} -- providing a RESTful-Interface with a |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
32 XML-based protocol to serve the expert information systems (FIS) with |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
33 their products to different clients, e.g. GNV WebClient |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
34 \item {\tt factories/*}, {\tt artifacts/*} -- managing the steps and |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
35 operations of users' workflow for all expert information |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
36 systems (FIS) |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
37 \item {\tt gnv} -- processing pipeline providing results of the |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
38 products with the following subtasks: |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
39 \begin{itemize} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
40 \item processing of result sets like interpolation, clipping |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
41 \item visualization of charts and maps |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
42 \item exporting selected raw data |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
43 \end{itemize} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
44 \item {\tt mapserver} -- managing the Web Map Service for creating maps |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
45 dynamically |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
46 \end{itemize} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
47 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
48 Each component has a specific configuration for its functionality and |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
49 subsystems. |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
50 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
51 \subsection{Internal Structure of the GNV-Server} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
52 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
53 \subsubsection{Internal Structure of Artifact-Server} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
54 Per default the artifact-server can be found at {\tt |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
55 /opt/artifact-server}\footnote{Information about installation and |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
56 operation can be found in the admin-manual.}. The internal directory |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
57 structure of the artifact-server looks like this: |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
58 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
59 %% tree /opt -d -L1 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
60 \begin{lstlisting} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
61 artifact-server |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
62 |-- artifactdb # storing artifacts in a database |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
63 |-- bin # binaries including all libraries |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
64 |-- cache # storage for cached data (e.g. result sets) |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
65 |-- conf # central configuration of artifact-server |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
66 |-- install # files for system integration (just for setup) |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
67 |-- mapfiles # generated configurations for map-server (done by |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
68 # map-generator) |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
69 `-- shapefiles # raw data for map generating (done by map-generator) |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
70 \end{lstlisting} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
71 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
72 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
73 \subsubsection{Internal Structure of Mapserver} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
74 Per default the mapserver can be found at {\tt |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
75 /usr/lib/cgi-bin}.\footnote{Information about installation and |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
76 operation can be found in the admin-manual.} The internal structure of |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
77 the mapserver looks like this: |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
78 |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
79 %% tree /usr/lib/ |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
80 \begin{lstlisting} |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
81 cgi-bin/ |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
82 |-- gnv-wms # wrapper pointing to the configuration (default: |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
83 # artifact-server/mapfiles/mapfile.map), invoked by |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
84 # webserver |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
85 `-- mapserv-gp # binary of mapserver, invoked by wrapper |
2d84fc30ab58
Added more chapters in config-manual
Hans Plum <hans.plum@intevation.de>
parents:
diff
changeset
|
86 \end{lstlisting} |