Difference between revisions of "Managing Backend Services"

From AgileApps Support Wiki
imported>Aeric
 
imported>Aeric
 
(24 intermediate revisions by the same user not shown)
Line 1: Line 1:
=== Managing Backend Services ===
<includeonly>=== Managing Backend Services ===</includeonly>
 
The {{enterprisebrand}} has several backend services. Each of them can be run on a different server, to improve performance and scalability. They can be disabled, as well, if they are not used.
The {{enterprisebrand}} has several backend services. Each of them can be run on a different server, to improve performance and scalability. They can be disabled, as well, if they are not used.


It is highly recommended that the customer-facing web server is ''not'' used for the backend services. Instead, they should run in one or more dedicated instances of LongJump, running on one more separate servers.
{{Important| <br>All backend services are enabled by default. ''But...''
 
# Backend services should ''not'' be enabled on a customer-facing web server, to avoid performance problems.<br>(The exception would be a single-user server used for development or proof of concept.)
{{Important | Each of the services should enabled on only one server--not on multiple servers.}}
# With the exception of memcached, a backend service should ''not'' be enabled on more than one server, to avoid errors.
Immediately after installing a server, then, it is necessary to disable all backend services, except for those services that are intended to run on the current server--and then only if the current server is intended to be a backend server.
}}


==== About the Backend Services ====
==== About the Backend Services ====
Line 12: Line 13:
:{| border="1" cellpadding="5" cellspacing="0"
:{| border="1" cellpadding="5" cellspacing="0"
!Service
!Service
!Default Status
!Default Status  
!Description
!Description
|-
|-
|Report Scheduler||Disabled||Runs scheduled reports when they're due
|Report Scheduler||Enabled|| Runs scheduled reports when they're due
|-
|Import|| Disabled||Imports of data into the database
|-
|-
|Export||Disabled||Exports data from the database
|Import          ||Enabled|| Imports of data into the database
|-
|-
|Memcached ||Disabled||Data caching mechanism (installed separately)
|Export          ||Enabled|| Exports data from the database
<!--
|-
|-
|Snapshot||Disabled||Takes snapshots of the data for reports.
|Memcached      ||Enabled|| Data caching mechanism (installed separately)
-->
|-
|-
|Marketing||Disabled||Handles email campaigns
|Quartz         ||Enabled|| Time keeper for all scheduled events.
|-
|Bounce||Disabled||Handles bounced emails that result from such campaigns
|-
|Quartz||Enabled||Time keeper for all scheduled events.
|}
|}
{{:Enabling and Disabling Backend Services}}
{{:Configuring Backend Services}}
<noinclude>


==== Configuring Backend Services at Installation ====
[[Category:Installation]]
Backend services can be figured at installation, using the <tt>[[installation.properties]]</tt> file. It looks like this:
</noinclude>
:{|
<pre>
# Specify Java Home Directory
    java_home = /opt/jdk1.6.0_12
# Specify MYSQL parmaters
    mysql_port =  3306
    mysql_username = root
    mysql_password =  mysql123
    mysql_host = localhost
# Specify Services to be enabled at installation/upgrade [ 0 - disable / 1 - enable ]
    report_scheduler_server = 1 Kicks off scheduled reports and email.
    import_server = 1     Imports CSV data into LongJump.
    export_server =  1 Exports data from LongJump.
    marketing_server = 1 Sends marketing emails.
    bounce_server = 1 Handles bounced emails.
    quartz_server = 1 Enables scheduling on the server.
    memcached_server = 1 Enables memcached, if it is installed.
</pre>
|}
After changing <tt>installation.properties</tt>, run the configuration script:
:{|
<pre># ./configure.pl</pre>
|}

Latest revision as of 22:43, 28 September 2015

The AgileApps Cloud platform has several backend services. Each of them can be run on a different server, to improve performance and scalability. They can be disabled, as well, if they are not used.

Warn.png

Important:
All backend services are enabled by default. But...

  1. Backend services should not be enabled on a customer-facing web server, to avoid performance problems.
    (The exception would be a single-user server used for development or proof of concept.)
  2. With the exception of memcached, a backend service should not be enabled on more than one server, to avoid errors.

Immediately after installing a server, then, it is necessary to disable all backend services, except for those services that are intended to run on the current server--and then only if the current server is intended to be a backend server.

About the Backend Services

An Application Server instance can run one or more of the following services. Enabling and disabling them determines which instance they run in--or whether they are available at all.

Service Default Status Description
Report Scheduler Enabled Runs scheduled reports when they're due
Import Enabled Imports of data into the database
Export Enabled Exports data from the database
Memcached Enabled Data caching mechanism (installed separately)
Quartz Enabled Time keeper for all scheduled events.

Enabling and Disabling Backend Services

During installation, the networking.properties file is created. That file can be used to manually enable and disable backend services for an existing installation.

Warn.png

Important: Each background service should run on only one server.

To view the server list
  1. Open {install-dir}/profiles/IS_default/configuration/tomcat/conf/RN/networking.properties
    Servers are listed in this format: xxxxx_manager_instance=1
    where "xxxxx" is one of "import", "report", etc.
To Disable a service
  1. Add a "#" character before the xxxxx_manager_instance=1 command
    # report_manager_instance=1
  2. Save the file
  3. Restart the Application Server
To Enable a service
  1. Remove the "#" character from the xxxxx_manager_instance=1 command
    report_manager_instance=1
  2. Save the file
  3. Restart the Application Server

Configuring Backend Services

During installs and upgrades, it is only necessary to enable or disable a service on a platform instance. The install/upgrade process takes care of making the connections.

To change a configuration for an existing installation, changes need to be made manually, by adjusting the networking.properties file(s) and restarting the Application Server(s).

Notepad.png

Note: A change in the configuration for either memcached, quartz, or the document service requires a restart of all Application Servers.

The general process is:

  1. Make the changes to the networking.properties files for all Application Servers.
  2. Restart the Application Servers.

These sections describe the changes to make: