Understanding Configuration Options

From IMSMA Wiki
Revision as of 17:19, 3 June 2014 by Alnaucler (talk | contribs)
Jump to: navigation, search

To determine the initial configuration of the IMSMANG system, it is important to understand the two ways in which IMSMANG can be set up and the basic architecture of the system. IMSMANG is a client/server software application designed to run in stand-alone or client/server mode. In a stand-alone system, both the IMSMANG client and server are installed on the same computer. The stand-alone configuration is the simpler type of installation: it requires no additional network equipment or infrastructure and is easy to maintain.


Comparison of Stand-alone and Client/server Configuration Options
Configuration Advantages Disadvantages
Stand-alone
  • Simple to set up and maintain
  • Limited IT knowledge required
  • Can be upgraded to a client/server configuration later
  • One-at-a-time data access
Client/server
  • Multiple concurrent data access
  • Redundancy
  • Complicated to set up and maintain
  • Local Area Network infrastructure required
  • Multiple computers required

In a client/server configuration, one computer acts as a server and many other computers can connect to it simultaneously over a network, enabling multiple people to access the same data at the same time. A client/server installation requires at least two computers and a network infrastructure connecting the computers together. Using a client/server installation, a mine action programme can have multiple data entry clerks entering data at the same time.


Client/server Config

Client/server configuration

Note.jpg Be aware of the following when running IMSMA in a client/server installation:
  • The server and client(s) must be running the exact same version of IMSMA.
  • The gisServer.properties file on the server must be configured.
  • The client(s) must be configured to connect to the server.
  • Maps only need to be installed on the server.
  • Data entered into the server or clients will be automatically rendered to all clients (as well as the server). However, GIS information (points, polygons) will NOT be immediately rendered to all clients. To either post your GIS-related updates to the server (thus making them available to other clients) or to receive updates from the server, you must log out of IMSMA and then log back in.
  • Fonts will need to be installed on both the server and client(s)

Client/server Architecture

Whether a programme uses a stand-alone installation or a client/server installation, the IMSMANG software has two main components:

  • the IMSMANG server
  • the IMSMANG client

The figure below shows the parts of the software; the following sections then explain the functions that each part performs.

Stand-alone architecture
Client/server architecture

Server

The IMSMANG server stores data and manages much of the data processing. The server has two main parts, the datastore and the business layer. The datastore is where data is stored for retrieval by the IMSMANG client. IMSMANG uses a PostGreSQL relational database to store data on the server. Additionally, IMSMANG stores other data including attachments and some configuration files on the server in file format. The PostGreSQL database is accessible via a variety of database access tools designed for browsing relational databases.

Warning.jpg While the database contains many relational database constraints designed to preserve data integrity, all updates of data should be handled through the business layer rather than with direct SQL updates in order to maintain integrity. Failure to do so will likely cause data corruption or loss

The business layer is where rules are implemented to ensure data quality and consistency. The business layer takes data from the datastore and transforms it for display in the IMSMANG client. All data interaction between the client and server database is handled through the business layer, which allows for multiple clients to be connected to the database while preserving data integrity in cases of multiple requests. This includes access from the IMSMANG client and from the reporting tool.

Client

The IMSMANG client is the interface through which users can connect to the server and browse the system, enter data and generate outputs. The client includes an integrated GIS and reporting tools. Based on ESRI’s ArcGIS Engine, the GIS performs all geospatial calculations including distance/bearing calculation, coordinate conversion and reprojection. The GIS also allows each client to load and manage its own maps and geographic data which the client receives from the IMSMANG server. As a result, each client receives and locally stores a complete copy of geographic data from the IMSMANG server when it is connected to the server. This synchronized data is stored in a client ―sandbox‖ separate from the server and can always be updated by connecting to the server.

JasperSoft’s iReport tool is built into each IMSMANG client and allows users to access data from the database via the business layer. With iReport, users can generate reports containing tabular data, subreports and cross tabs as well as various types of charts and graphs. These reports can easily be localized into any language that IMSMANG supports. Additional reporting options include direct connections to the IMSMANG database via ODBC. This functionality supports tools such as Crystal Reports, Microsoft® Access®, Microsoft Excel® and various open-source reporting tools.

Memory settings

By reserving memory for IMSMANG, less memory may be used by other applications. It also depends on how much memory the computer has if is possible to reserve more memory for IMSMANG.

Memory settings.png

If you would like to reserve more memory for the IMSMA server process, edit row 3 in C:\IMSMAng\trayLauncher\TrayLauncher.properties.

If you would like to reserve more memory for the IMSMA client process, edit row 12 in C:\IMSMAng\trayLauncher\TrayLauncher.properties. Start with increasing it to 1024 and then evaluate.

Note.jpg
  • Since IMSMA NG is a 32-bit application there is no effect by reserving more than total 4 GB.
  • On the physical server in a client/server configuration there is need to start the client, take backup and restore so do not set the client process memory to less than 512.