Rai MD API and RaiMS for Windows x64 evaluation builds

Two installers: RaiMS, the Rai message service (a Rendezvous / NATS / Redis compatible daemon that runs as a Windows service), and Rai MD API, the market data client API with C++, .NET and Java bindings plus the raisub2 / raipub2 / raiping2 / raireplay2 test programs. Install RaiMS first, then Rai MD API, and the test programs will talk to the local service on port 7500.

Download

FileVersionSizeInstalls toSHA-256
raims-1.54.0-112-win64-setup.exe 1.54.0-1124.4 MBC:\Program Files\RaiMS a50e7171cef49808edbdfea590d5d765b31fa19b91a697ef64391389672c0f73
raims-1.54.0-112-win64-debug.zip 1.54.0-11238.4 MBdebug symbols, optional 768207735741d2fcb27ec7989f951ee438a173c4348b4f6f4a7ed8e50072314c
raimdapi-1.2.0-4-win64-setup.exe 1.2.0-43.5 MBC:\Program Files\RaiMdApi d6edb892f47f263f5e7ddd35a396d62316195fd2a3d0426b8b8fcbc0cb408c54
raimdapi-1.2.0-4-win64-debug.zip 1.2.0-450.2 MBdebug symbols, optional f0a17b186a417812c507bf1e2544cd1eb2f53202f20d6f1f8984b8fe06a36a63

Verify a download in PowerShell with Get-FileHash .\raims-1.54.0-112-win64-setup.exe. The installers are not code signed; Windows SmartScreen will ask for confirmation (More info → Run anyway).

Changes in this release 2026-10-14

Previous release 2026-09-30

Previous release 2026-09-11

Requirements

1. Install RaiMS

Run raims-1.54.0-112-win64-setup.exe (or … /S for a silent install). It:

The generated key is unique to this install. ms_gen_key creates a new service key (config\svc_eval.yaml, signed with the private key in .pass/.salt), and ms_server only networks with peers that hold the same service key — two machines that each ran the installer have two different keys and will not mesh, even with matching transport config. Local clients (rv, NATS, Redis) are not affected; the key only authenticates ms_server to ms_server. To network several ms_servers, generate the key once, export a config per peer with ms_gen_key -x <peer names> -s eval, and copy each exported directory to that host's config\ before starting the service. See the RaiMS guide, Key Configuration.

The evaluation config (config\tport_*.yaml, edit and restart the service to change) listens on:

transportlistens onclients
rv*:7500Rendezvous (rvd) clients, the Rai MD API programs
nats*:4222any NATS client
redis127.0.0.1:6379redis-cli, RESP clients
tel127.0.0.1:2222telnet 127.0.0.1 2222 — the ms_server console

Check it in PowerShell:

& "C:\Program Files\RaiMS\bin\raisvc.exe" status RaiMS          # RaiMS: running (exit 0)
Get-NetTCPConnection -State Listen | ? { $_.LocalPort -in 7500,4222,6379,2222 }
Get-Content "C:\Program Files\RaiMS\log\ms_server.log" -Tail 20

raisvc start|stop|status RaiMS controls the service; ms_server.exe -d config -c runs it in a console instead.

2. Install Rai MD API

Run raimdapi-1.2.0-4-win64-setup.exe (or … /S). It installs to C:\Program Files\RaiMdApi, registers an uninstaller in Apps & features and optionally appends bin to the system PATH.

bin\      raisub2 raipub2 raiping2 raireplay2 (C++)   raisub raipub raiping (C++ v1 api)
          draisub2 draipub2 draiping2 draireplay2 (.NET)   jraisub2.cmd jraipub2.cmd … (Java)
          raimdapi.dll (C api, raiapi2_c.h)   RaiApi2.dll (.NET binding)   jraiapi2.dll jraimsg.dll (JNI)
lib\      raimdapi.lib  libraimdapi.a  *.jar
include\  raiapi2.h  raiapi2_c.h  raiapi.h  and the base/msg/stream/util headers
examples\ c++ java dotnet sources of the programs in bin\
SOURCES.txt  git commits of raimdapi and every sibling library in this build

3. Test

Open two PowerShell windows in C:\Program Files\RaiMdApi\bin. Subscribe in the first, publish from the second (-daemon tcp:7500 is the local RaiMS; use tcp:<host>:7500 for a remote one):

# window 1: wait for one message on subject TEST.HELLO
.\raisub2.exe -daemon tcp:7500 -noDict -msgCount 1 -timeout 30 -subject TEST.HELLO

# window 2: publish one record
.\raipub2.exe -daemon tcp:7500 -subject TEST.HELLO -count 1 -data NAME=hello-windows -form '""'

The subscriber prints the record and exits:

## Subject TEST.HELLO (old state=NO_MSG,new=INITIAL)
MSG_TYPE       : UINT      2 : 8  [INITIAL]
SEQ_NO         : UINT      2 : 1
REC_STATUS     : UINT      2 : 0  [OK]
NAME           : STRING   14 : "hello-windows"

Round-trip latency through the service (publishes and subscribes to itself):

.\raiping2.exe -daemon tcp:7500 -subject PING.TEST -perSec 200 -msgCount 1000
# PING.TEST: r=199.9/s av=0.5 min=0.08 max=2.7ms

The .NET programs take the same arguments (.\draisub2.exe …, .\draipub2.exe …, .\draiping2.exe …) and interoperate with the C++ ones; the Java launchers are jraisub2.cmd, jraipub2.cmd, jraiping2.cmd. Any program accepts -help. The ms_server console shows the connections: telnet 127.0.0.1 2222, then show ports, show subs.

OMM source instead of RaiMS. With an OMM provider reachable (RaiMS does not provide one), the same subscriber reads a market price record straight from it — add -api omm and point -daemon at the provider's RSSL port:

.\raisub2.exe -api omm -daemon tcp:ads.example.com:14002 -msgCount 1 -timeout 30 -subject IDN_RDF.REC.IBM.N
# optional: -appName <name> (login ApplicationName), -rdmPath <dir> (local RDMFieldDictionary/enumtype.def), -noRdmDict

The output has the same shape as above (MSG_TYPE, SEQ_NO, REC_STATUS, then BID, ASK, TRDPRC_1, … named by the RDM dictionary). draisub2.exe and jraisub2.cmd take the identical arguments.

Note for PowerShell: an empty argument must be written '""' (as above for -form); cmd.exe takes plain "".

4. Uninstall

Either from Settings → Apps → Apps & features (entries RaiMS 1.54.0-112 and Rai MD API 1.2.0-4), or from an Administrator prompt:

& "C:\Program Files\RaiMdApi\uninstall.exe" /S
& "C:\Program Files\RaiMS\uninstall.exe" /S

The RaiMS uninstaller stops and removes the service, removes the firewall rule and the PATH entry. The config\ directory with the generated keys is left behind so a reinstall keeps the same identity; delete C:\Program Files\RaiMS\config by hand to remove it. Reinstalling over a running installation is supported (the installer stops the old service first).

Troubleshooting

Source and building

RaiMS is github.com/raitechnology/raims, Rai MD API is github.com/injinj/raimdapi; both are cross compiled on Linux with mingw-w64. Repositories for the sibling libraries, the build host packages, and the commands that produce these installers (and the native Linux builds) are on the build page.

Built 2026-10-14 with the mingw-w64 cross compiler. Questions: contact Rai Technology.