This commit is contained in:
90
Career/Microlise/ESS ESP/ESP Applications.md
Normal file
90
Career/Microlise/ESS ESP/ESP Applications.md
Normal file
@@ -0,0 +1,90 @@
|
||||
# What is ESP?
|
||||
|
||||
ESP is a software suite built by ESS and sold to customers. It is deployed on a **per-customer basis** — similar to TMC (another internal product) but with fewer applications in the suite.
|
||||
|
||||
Key traits:
|
||||
|
||||
- Customers only have the apps **they use** — not every customer gets everything
|
||||
- Customers may have multiple environments (e.g. TEST and PROD)
|
||||
- Test and PROD instances may live on the **same server** — this is a risk to be mindful of during deployment
|
||||
|
||||
# Application Categories
|
||||
|
||||
ESP applications fall into three categories:
|
||||
|
||||
## 1\. Databases
|
||||
|
||||
| Application | Type | Notes |
|
||||
| ----------- | ---------- | ------------------------------------------- |
|
||||
| EspBroker | SQL Server | The core ESP database. Deployed via dacpac. |
|
||||
|
||||
See [[ESP Database]] for Dacpac detail.
|
||||
|
||||
## 2\. Windows Services
|
||||
|
||||
[[Windows Services]] are background processes that run on a Windows server. They have no UI — they start, run, and are managed via the Windows Service Manager (or PowerShell commands like `Stop-Service`, `Start-Service`).
|
||||
|
||||
| Service Name | Notes |
|
||||
| --------------- | --------------------------------- |
|
||||
| DLService | Unknown specific function (TBC) |
|
||||
| EmailService | Likely handles outbound emails |
|
||||
| ExPlService | Unknown specific function (TBC) |
|
||||
| MISService | Unknown specific function (TBC) |
|
||||
| OutboundService | Likely handles outbound messaging |
|
||||
| ULService | Unknown specific function (TBC) |
|
||||
|
||||
### Working with Windows Services in PowerShell
|
||||
|
||||
``` powershell
|
||||
# Stop a service
|
||||
Stop-Service -Name "DLService" -Force
|
||||
|
||||
# Start a service
|
||||
Start-Service -Name "DLService"
|
||||
|
||||
# Check service status
|
||||
Get-Service -Name "DLService"
|
||||
|
||||
# Wait for a service to stop
|
||||
(Get-Service -Name "DLService").WaitForStatus('Stopped', '00:01:00')
|
||||
```
|
||||
|
||||
### Why Services Must Be Stopped Before Deployment
|
||||
|
||||
When deploying a new version, the old service process holds file locks on its [[DLL's]]. You cannot overwrite a locked file on Windows. Therefore the sequence is:
|
||||
|
||||
1. Stop the service
|
||||
2. Swap the files (old → new)
|
||||
3. Start the service
|
||||
|
||||
## 3\. Citrix Applications
|
||||
|
||||
Citrix is a technology that **streams desktop applications** to users remotely - the app runs on a server but the user sees it on their machine, similar to a remote desktop but on a per-app basis.
|
||||
|
||||
| Application | Notes |
|
||||
| ------------- | ---------------------------- |
|
||||
| VPlanner | Main planning application |
|
||||
| VPlannerAdmin | Admin interface for VPlanner |
|
||||
| ImportApp | Data import application |
|
||||
|
||||
### Citrix Deployment Considerations
|
||||
|
||||
Citrix apps are more complex to deploy than Windows Services because:
|
||||
|
||||
- **Active user sessions** may be running — you can't just swap files
|
||||
- You must **notify users** of the upcoming upgrade and give a grace period
|
||||
- After the grace period, **kill any remaining sessions**
|
||||
- The actual upgrade mechanism is **still TBC** — believed to be a file copy with handling for locked executables built in
|
||||
- Post-deploy **cycle checks** require navigating Citrix UI — hard to automate
|
||||
|
||||
# Per-Customer App Lists
|
||||
|
||||
Unlike TMC (where presumably all customers get everything), ESP is a subset deployment. This means:
|
||||
|
||||
- The manifest (see [[ESP Manifest]]) must define **which apps each customer has**
|
||||
- The deployment scripts must skip apps not applicable to a given customer
|
||||
- There is no universal "deploy everything" - each customer's list must be explicitly defined and maintained
|
||||
|
||||
# Completeness of This List
|
||||
|
||||
The handover document states this list is believed complete but **has not been confirmed**. Treat it as a working assumption, not a guarantee. Validate against actual customer environments when possible.
|
||||
Reference in New Issue
Block a user