Distributed Architecture

The topology discussed in Architecture Basics - with all server components running on the same machine - is one of the simplest examples. Fortunately, running different CSWorks server components on different machines is not a problem: CSWorks server components communicate to each other using Windows Communication Foundation (WCF), which makes building a distributed system easy. Server topology may get a lot more complex as soon as we implement one or a few of the following deployment techniques.

Basic deployment

All CSWorks server components installed on a single server machine. Good for most small-sized deployments that access live data only.

Basic Deployment

High-availability solution

For mission-critical applications, consider running two instances of CSWorks servers. Web Service layer seamlessly fails-over when a data server is not available, and automatically connects to the failed server when it is restored. Web Service layer can run on a farm of web servers, efficiently balancing the load for a large number of web clients.

Redundancy Deployment

Remote facilities

To ensure that clients can easily get data from geographically distributed sources, syndicate multiple live data servers into a single workspace. You can also use standard protocols and algorithms to secure all communication channels used by CSWorks server components.

Remote Partitioning Deployment

Alarming and historical Data

CSWorks includes a full software stack for alarm and historical data management. On the client side, CSWorks Alarm Summary provides an interface for handling day-to-day alarming tasks, and CSWorks Trend Control displays data trends. Client users can gain direct access to alarms and historical data stored in an SQL database, and perform complex data analysis using their favorite custom tools.

Alarming and Historical Data Deployment

Remote historical data logging

To reinforce remote connections between CSWorks web servers and data sources, transfer data accumulated in more than one location to a central database.

For remote historical data logging, configure several CSWorks History Recorders to collect data in an SQL database at each remote location. When a connection to the remote location is established, use any kind of replication mechanism to transfer accumulated historical data to the central location. As soon as it is transferred, the accumulated data is ready for use.

Remote Data Logging Deployment

Remote Terminal Unit monitoring

You can integrate CSWorks into an existing SCADA solution that collects telemetry data from Remote Terminal Units (RTUs) at remote facilities. CSWorks LiveData Server monitors configured SQL databases that hold up-to-date telemetry data and supplies it to the user screen as if it were real-time data.

RTU Monitoring Deployment

Sounds interesting? To learn more about CSWorks distributed architecture, download CSWorks and check out the reference manual included in the distribution package.

Copyright © 2009-2016 CSWorks Inc. All rights reserved.