| |
Servers, Failover and Scalability
ComplyPlus is available in two versions: desktop and server based. In the
desktop version, the software runs on a single desktop and doesn't require any
other hardware. This version is appropriate when ComplyPlus is used
outside of a trading environment. The server version is used to support
large transaction volumes such as brokerage trading or where downtime is
unacceptable.
ComplyPlus Server Edition is a combination of four different components.
The first, the ComplyPlus server component runs on a single server or can
be installed across hundreds of servers. If one server
goes
down, ComplyPlus will continue to run without interruption. Trading
can't stop because of a server failure. ComplyPlus lets business go on as
usual. You could have trading servers in Tokyo, Chicago and Bermuda with
each server processing thousands of rules across hundreds of accounts in split
seconds. That's scalability. This component can be setup in a
variety of configurations to support load-balancing, fail-over, redundancy,
data segregation and transaction support.
The second component is a server component as well. It's the master
server which handles transactions across all servers. It controls
transacted updates to the databases and all servers sharing that data.
The server which is the master server is determined dynamically. So, if the
master fails, a new server will be automatically chosen as master. The
master server tracks how and where data is stored in the server farm. It
also knows if data is replicated (for speed) across multiple servers, so it
handles the job of making sure all servers and databases are kept up to date
and in sync.
The third component is a desktop application that provides administration
functionality. When changing a compliance rule used by multiple servers;
it makes sure (via the master server) the rule is updated on all those
servers. You as the end-user don't need to know how data is distributed
inside your compliance server farm.
The fourth component is workflow. This component is available on a variety of
platforms, from thin-client web-based, to thick-client client-server Windows
desktop application. There's even a Pocket PC version so users can do
work from home or on the road.
Of course there's a lot more going on behind the scenes such as keep-alive
monitoring, integrated security, distributed transactions, remoting, SOAP based
web-services, XML and all sorts of other goodies that any first class
state-of-art n-tier distributed client-server architecture should have.
And luckily, you don't have to understand it all, because we do!
Tools used to create ComplyPlus
ComplyPlus is written using Microsoft's C# and the Microsoft .NET
framework. The web-components are Microsoft .NET .ASPX based.
Compliance rules are Microsoft Visual Basic .NET based. The rule
builder uses XML and XSLT to generate Microsoft Visual Basic .NET
code which is compiled on-the-fly into rule assemblies. The server
components in turn use these assemblies to run their compliance tests.
Integrated into ComplyPlus is Microsoft Visual Studio for Applications (VSA),
Microsoft's successor technology for Visual Basic for Applications (VBA).
VBA is found in Microsoft's office applications such as Word and Excel.
Should IT departments wish to alter the code generated by ComplyPlus, they have
the option of either changing the rule builder XSLT or modifying the generated
code in the integrated VSA editor. This editor supports syntax coloring,
auto-complete, tool tips, and most of the features found in Microsoft's Visual
Studio.
During normal use of ComplyPlus, no one ever sees the generated rule code, much
like the way the average Microsoft Office user never sees the VBA code those
products generate. However, it's useful to know that in any rule, your IT staff
can make a call-out to any external third party application, component, or
assembly. In fact, at all major points inside ComplyPlus, events are
generated that can be trapped with VSA allowing integration with your
environment. A simple example: when a work item is about to be created,
an event is generated. ComplyPlus' open architecture allows your IT staff
to write just a few lines of Visual Basic code in order to send rule result
information to your workflow system instead of ours.
Lastly, ComplyPlus defines Interfaces (which are supplied in source code and as
an assembly) from which your IT staff can write its own rules in any language
they choose. And, more importantly, they can interface ComplyPlus with
your existing systems to create rules normally outside of the scope of everyday
compliance. For example, ComplyPlus does not ship with portfolio
attribution rules; however there are many vendors who provide this
functionality. Have your IT staff write a few lines of code to act as
glue between your portfolio attribution system and ComplyPlus and you'll have a
portfolio attribution library at your fingertips.
Internally, ComplyPlus supports the following database products: Microsoft SQL
server, Sybase, Oracle, and IBM's DB2. For rules, ComplyPlus can connect
a variety of data sources such as XML, web-services, Microsoft Access and
Excel, text files, ODBC databases, DB2 and even the most proprietary
formats. Input adapters exist for email, MSMQ/MQ Series, flat files, Web
Services, Tibco/RV ( 1Q2004) and many others.
|