Configure server instances and settings.
Reference → Solution → Deployment → Runtime | Server | Client Types | Container | Redundancy | Security
Server Configuration (Reference): Server Configuration (Reference): Configuring FrameworX runtime servers for production operations.
| Component | Function | Default Port |
|---|---|---|
| TServer.exe | Runtime engine | N/A (internal) |
| TWebServices | Remote access, web clients | 10108 |
| Database | Tag values, history, alarms | 1433 (SQL Server) |
| TSecureGateway | Multi-site routing | Configurable |
Configure in Runtime → Startup:
Auto-Start Options:
Command Line Parameters:
cmd
TServer.exe /solution:MySolution.tproj
/port:10108
/disableinterface
/trace:verboseLarge Solutions (>50,000 tags):
xml
<runtime>
<gcServer enabled="true"/>
<gcConcurrent enabled="true"/>
<GCHeapCount>8</GCHeapCount>
</runtime>The platform supports modular project design by automatically merging multiple project files at runtime based on naming conventions.
How It Works:
When launching a main solution (e.g., MyProject), FrameworX automatically merges any projects whose names:
__suffix__Example Structure:
MyProject.tproj → Main solution (core UI, shared logic)
MyProject__DeviceConfig1__.tproj → Device-specific configurations
MyProject__DBTest__.tproj → Test database connections
MyProject__CustomerA__.tproj → Customer-specific customizationsRuntime Behavior:
When you start MyProject, the runtime automatically:
MyProject__*__.tproj filesBenefits:
Merge Priority:
If conflicts exist (same tag name in multiple files):
Configuration Example:
Solutions/
??? MyProject.tproj
??? MyProject__Common__.tproj
??? MyProject__PlantA__.tproj
??? MyProject__PlantB__.tproj
??? MyProject__Debug__.tprojStarting MyProject loads all modules automatically.
Required Ports:
| Port | Protocol | Direction | Purpose |
|---|---|---|---|
| 10108 | TCP | Inbound | TWebServices/Clients |
| 1433 | TCP | Outbound | SQL Server |
| 502 | TCP | Outbound | Modbus devices |
| 102 | TCP | Outbound | S7 PLCs |
Windows Firewall:
cmd
netsh advfirewall firewall add rule name="FrameworX Runtime"
dir=in action=allow protocol=TCP localport=10108For multi-homed servers:
xml
<networkSettings>
<bindToIP>192.168.1.100</bindToIP>
<clientInterface>192.168.1.0/24</clientInterface>
<deviceInterface>10.0.0.0/24</deviceInterface>
</networkSettings>Power Settings:
cmd
powercfg /setactive 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c(High Performance plan)
Process Priority:
cmd
wmic process where name="TServer.exe" CALL setpriority "high"System Limits:
bash
# /etc/security/limits.conf
frameworkx soft nofile 65536
frameworkx hard nofile 65536
frameworkx soft nproc 32768
frameworkx hard nproc 32768CPU Affinity:
bash
taskset -c 0-3 /opt/frameworkx/TServer.exeMonitor these metrics:
xml
<logging>
<level>Information</level>
<maxFileSize>100MB</maxFileSize>
<maxFiles>10</maxFiles>
<path>C:\Logs\FrameworX\</path>
</logging>Configure endpoint for monitoring:
http://server:10108/healthReturns: CPU, Memory, Disk, Service Status
Daily Backup:
Backup Script:
powershell
Stop-Service "FrameworX Runtime"
Copy-Item "C:\Solutions\*" "\\backup\solutions\" -Recurse
Start-Service "FrameworX Runtime"RPO/RTO Targets:
Recovery Steps: