Professional Documents
Culture Documents
Multitheaded Service Applications: Charlotte Powerbuilder Conference
Multitheaded Service Applications: Charlotte Powerbuilder Conference
Multitheaded Service Applications: Charlotte Powerbuilder Conference
Multitheaded Service
Applications
For PowerBuilder Classic!
Powered by Sponsored by
Charlotte PowerBuilder Conference
Moving at the Speed of Change May 2015
• Email: cpollach@travel-net.com
• Blog: http://chrispollach.blogspot.ca
• PBDJ: http://chrispollach.sys-con.com
• LinkedIn: http://ca.linkedin.com/in/chrispollach
• SourceForge: http://sourceforge.net/projects/stdfndclass
• TaeKwonDo: http://www.syeoh.com
Volumetrics! 4
Charlotte PowerBuilder Conference
Moving at the Speed of Change May 2015
5
Charlotte PowerBuilder Conference
Moving at the Speed of Change May 2015
Redaction Work Queue
Production
Archive 1
Imag
Worker
Redaction RWQ DBServices
ing
OCR Worker#1 Database Trigger
Supporting
Doc_Image
Bitmap * Av: => 849,787
Image Image
Photo Conversion MagicK
Image
Worker
JPEG * Av: 76,159
Signature
Image
JPEG
7
Image
Charlotte PowerBuilder Conference
Windows Service
(Main Thread)
Queue Manager
9
Charlotte PowerBuilder Conference
O/S Moving at theM SpeedCommon
Service of Change
Modules May 2015
Sub-
MainThread Start,Stop,Query ...
Thread
Process,Quiesce
SubThread * Activate ...
M Connectivity,Pooling
Database Trans. Mgnt ...
HTTP/HTTPS
Connectivity, Encryption, Web
WebService Security ... Service
NetTCP
Windows Trapping, Controlled,
ErrorHandler Shutdown, Continue, Stop
Service ... Debug
File
Application Log Event, File, Database
O/S
Debug ...
(* included both Main
Thread and Sub- SMTP, SMS, MAPI Text Msg
Notification ...
Threads
implementation) Run, O/S Feature O/S App.
PowerShell ...
Parsing, Schema
XML Validation, Escapement ...
Query, Stop
10
Console Report ...
Abstract Layers
ABSTRACT
MainThread SubThread
Concrete Layer
In/Out In/Out As Required
MainThread SubThread As Required
As Required
Thread Interaction 12
Charlotte PowerBuilder Conference
Moving atMAIN
the Thread
Speed of Change May 2015
Sleep (no work)
Application Method (Handle, SUB-Thread(s)
(Main Thread) Alive? Parameters)
StartThread (#nn) Real Process
StopThread (#nn) Sub-Thread Main
ProcessQueue (QID) Method Sub-Thread Process Process
Handler #01 Process
GetStatus (#nn) (Completion Code, #01
Parameters)
Config Real Main Process
Handler Array [ ]
Sub-Thread
Sub-Thread Process Process
Handler #02 Process
#02
Implementation
Legend
- No wait method calls (posted)
13
Charlotte PowerBuilder Conference
Moving at the Speed of Change May 2015
Processor
Load Distribution! 14
MS-Windows based server * - “best performance”
Charlotte PowerBuilder Conference
Moving at the Speed of Change May 2015
Stability
CPU
Load
Memory
Server #1 Statsus
Server #2
Table
PCI PCI
Controller TCP/IP Controller
Server #3
Multiple Servers 16
Charlotte PowerBuilder Conference
Moving at the Speed of Change May 2015
Main Thread Console
Consoles!
Sub-thread Console
17
Charlotte PowerBuilder Conference
Moving at the Speed of Change May 2015
Main Thread Alert
Sub-thread Alert
eMail Alerts! 18
Charlotte PowerBuilder Conference
Moving at the Speed of Change May 2015
Questions?
Q&A Session 22
Charlotte PowerBuilder Conference
Moving at the Speed of Change May 2015