Appboard/2.4/software components: Difference between revisions

imported>Jason.nicholls
imported>Jason.nicholls
 
Line 7: Line 7:
This page details the individual software components. For a more general overview of how AppBoard works, refer to the [[appboard/2.4/overview|Overview]] page.
This page details the individual software components. For a more general overview of how AppBoard works, refer to the [[appboard/2.4/overview|Overview]] page.


[[File:AppBoardComponents2.png|frameless|765px|AppBoard Software Components]]
[[File:AppBoardComponents2.png|frameless|756px|AppBoard Software Components]]


== Main Components ==
== Main Components ==

Latest revision as of 06:41, 8 September 2014

Overview

AppBoard consists of a number of software components working together to deliver the overall features. In real deployments the architecture may include external authentication sources, external web integrations proxied via enPortal, and external data sources used by AppBoard.

This page details the individual software components. For a more general overview of how AppBoard works, refer to the Overview page.

AppBoard Software Components

Main Components

AppBoard Server (Apache Tomcat)

The AppBoard and enPortal server components run within a single Apache Tomcat process. In default installs this also includes the in-memory configuration database (also see below for more information).

The server process listens on two ports, the main port on all interfaces for client traffic, and the shutdown port only on the local interface. These are configurable via runtime options, including whether Tomcat is configured for HTTP or HTTPS.

Data Integrations (AppBoard visualizations)

AppBoard visualizations are driven by data fetched from external data sources, or from files accessible to the AppBoard server. In the case of external data sources the server will have to establish connections to those data sources. The communications will depend on the type of data sources which may be web-based services, databases (via JDBC), or custom integrations.

Web Integrations (enPortal proxied)

enPortal proxied web integrations require the server to establish connections to the proxied web applications. Refer to the enPortal Software Components page for more information on the components to enPortal. Please note that both AppBoard and enPortal reside in the same Tomcat process and share some components.

Authentication Service

AppBoard provides it's own user, role, and domain based authentication service which can be managed internally or via integration with an external source. This includes LDAP-based systems such as Microsoft Active Directory, IBM Directory Server, Oracle Directory Server, Novel eDirectory, etc... AppBoard can also be customized to integrate with other authentication systems.

If integrating with external authentication services then the AppBoard server will need network access to those services.

Configuration Database

In a default install the configuration database is purely in-memory and running within the Tomcat process. In other words, there is no external process or network communication.

In clustering or high-availability environments AppBoard can be configured to use an external configuration database. This is via a JDBC driver and requires network connectivity to the external database.

AppBoard Clients

AppBoard clients are supported Web Browsers running the Builder or Viewer in an Adobe Flash Player plug-in.

All rendering takes place within the client and this is comprised of native flash content (via the flash plugin) and HTML frames (via the browser).

The client communicates with the AppBoard server using HTTP/HTTPS over a single port for all resources, data communications, and enPortal proxied content. Non-proxied content, and some widgets such as the Google Map or Tile Map, the client may need additional network connectivity beyond the AppBoard server.

Additional Credits

AppBoard incorporates the use of some 3rd party libraries. See the License Credits page for more information.