The C++ Middleware Writer (CMW) is the back tier of a 3-tier system:
  1. CMW (server) (back tier)
  2. CMW Ambassador (CMWA) (UDP server) (middle tier)
  3. direct program (runs and exits) (front tier)

The middle and front tiers have to be downloaded and built in order to use the CMW. The files needed to build these programs are here -- direct.30.4.tar.bz2 -- sha256 checksum: bdbef32096ae66c59b45bbb48e19f67e653d56c89c8a7e8e662e26382084fcef.

An account is needed to use the CMW. To get an account send an email to support@webEbenezer.net and include a password between 10 and 70 characters long for your account. Also include your public ssh key in the email. We'll reply by giving you an account number. After receiving your account number, update your cmwAmbassador.cfg file accordingly.

Links to some of the files in the archive:
Readme
cmwAmbassador.cc middle tier.
cmwAmbassador.cfg middle tier config file.
direct.cc front tier.
cmw.req A request file that's relayed from the front tier to the middle tier.
remote.mdl middle file that cmw.req refers to.
zz.middle_messages_back.hh CMW output based on cmw.req and remote.mdl.
File.hh
Formatting.hh
ReceiveBuffer.hh
ReceiveBufferTCP.hh
SendBuffer.hh
SendBufferCompressed.hh

Linux specific files:
makefile

Windows specific files:
makefile.mcr

Why use a 3-tier architecture?

Originally we used a 2-tier system. We switched to a 3-tier architecture for performance, network administrative and security reasons. In the 2-tier architecture, the front tier had to establish a TCP connection to the back tier each time it ran. In the 3-tier architecture, the middle tier keeps a TCP connection with the CMW and uses it to serve front tier instances.

In the 2-tier architecture, every user had to be given permission to get through your firewall in order to communicate with the CMW. With the 3-tier architecture, all requests are mediated by the ambassador so only the machine the ambassador is running on needs attention from a network administrator.


Home