Retail Pro Prism Services Overview

It is essential to understand the different Retail Pro Prism services and their functions. You can start or stop different services, troubleshoot services, and create batch files to start or stop multiple services at once. Below is a list and descriptions of the Prism services, as well as the steps to create a PowerShell script to stop and start services.

 

Service

Description

OracleServiceRProODS

This service facilitates the replication of data between RP Prism and the RIL Oracle database. This service will establish the connection with the OracleODS12cr1TNSListener so that the Prism and Oracle databases can communicate.

Apache

Every application that sends data across the Internet requires a web server to make the HTTP/S calls. To use Prism, the Apache service must be running. You can verify whether the service is running by launching Apache Monitor from the taskbar. When making configuration changes, if you need to reboot the service, be sure to stop the service, wait for it to shut down, then use the Start button to restart the service. Do not use the Restart button to restart the Apache service.

RabbitMQ

The RabbitMQ service handles tasks related to RabbitMQ messaging and messagequeues

PrismBackOffice

PrismBackOffice.exe facilitates operations related to inventory, adjustments, physical inventory and other back-office tasks. You can make api calls via the api/backoffice path

PrismCommonService

The PrismCommon service is an 'Auxiliary' service, a service that is used by many modules/functions throughout Prism.

PrismPOSV1Service

This service handles POS-related tasks, Physical Inventory and a few other inventory-related tasks. The POSv1Service handles the RPC Methods and REST Resources that are listed in the RPSRESTSERVICEMODULE area of the Prism API Explorer. This service has settings related to thread counts and timeouts. The purpose of these entries is to control how much memory is allocated to a given RPS instance. Since we have a 32-bit architecture, each instance is limited to a maximum of 2 GB of memory. Transform is a very heavy resource and has a defined limit that we feel should be adequate for most circumstances. Auth threads are only applicable to the primary instance and define how many auth requests can happen simultaneously

PrismResiliencyService

This service facilitates the continued operation of central credit and central gift cards when the connection to the Centrals server goes down. The PrismResiliencyServer.exe facilitates offline processing and sending of those offline transactions to the processor when the connection is restored.

PrismLicSvr

Although licensing is not yet implemented in Prism, the PrismLicSvr service must be running for Prism to run. You will receive an error message when trying to launch Prism if this service is not running.

PrismMQService

This service plays an important role in the replication of data between servers. You can configure PrismMQ with various options, including max number of senders/receivers and compression thresholds.

 

 

 

 

 

PrismSchedulingService

 

 

The Scheduling Service facilitates the running of tasks that you have defined in Tech Toolkit, as well as Prism built-in tasks (e.g. building customer history and subsidiary modeling). At the scheduled time, the service makes the necessary API calls to run the task(s). Tasks handled by the PrismSchedulingService include:
Customer History daily process
Customer History initialization process
Markdown processing
Subsidiary Modeling
Scheduling service housekeeping task (1x per day)

PrismTechToolkitService

The TechToolKit Service supports the web-based version of Prism TechToolKit.

PrismReplicationService

The PrismMQService.exe works in conjunction with PrismMQConsumer.exe and PrismMQProducer.exe to replicate data between Prism servers.

PrismDRSService

This service assists with the replication of data between Prism and an RIL Oracle database

 

 

Starting and stopping Prism Services

Prism services should be started in the following order:

  1. RabbitMQ
  2. All Prism services
  3. Apache 

Oracle services may be started before or after those. In older versions of RP Prism, starting the Prism Scheduling Service last among the Prism services may prevent generation of broken service connection queues. 

The order does not matter when stopping Apache, Rabbit, or Prism services. However, TNS Listener and Oracle RproODS are dependent upon Apache and the Prism Services. In other words, stopping the listener or RproODS will require stopping Apache and Prism services.

 

How to create a PowerShell script for services

Batch files or PowerShell scripts can be created to stop and start services. Here are steps to do this in PowerShell:

  1. Open a .txt file and enter the following:

Stop-service RabbitMQ, Prism*, Apache -passthru -force

# "-force" stops the process without asking for confirmation if the process is not owned by the user.

Write-host "All services stopped" -ForegroundColor Red

 

Start-service RabbitMQ -passthru

Start-service Prism* -passthru

Start-service Apache -passthru

Write-host "All services started" -ForegroundColor Green

Read-host

# "Read-host" keeps the window open after all services have started.

 

#If you're copy/pasting the above, be sure the quotation marks appear correctly. Removing the existing quotes and replacing them with quotation marks in Notepad or Notepad++ will guarantee the correct quotation marks are used.

 

  1. Save this file with a .ps1 file using "All File Types."
  2. Create a shortcut to this file.
  3. Right-click the shortcut and click Properties. At the very beginning of the path, add "powershell.exe -f " (without the quotes). For example, powershell.exe -f "C:\Users\sysadmin\Desktop\techbyte script.ps1." Click Advanced and select "Run as Administrator." Click OK twice.

 

PowerShell script

 

  1. Run the shortcut to restart services. You may still need to use Task Manager to end task on services that are hung and cannot be stopped gracefully.

 

 

Published on Apr 27, 2021 in RP Prism Services, Automated Processes

 

Find Another Article