Message queue broker in F#
(*
Simple message queuing broker
Same as request-reply broker but using QUEUE device
*)
#r @"bin/fszmq.dll"
#r @"bin/fszmq.devices.dll"
open fszmq
open fszmq.Context
open fszmq.Socket
#load "zhelpers.fs"
let main () =
use context = new Context(1)
// socket facing clients
use frontend = route context
"tcp://*:5559" |> bind frontend
// socket facing services
use backend = deal context
"tcp://*:5560" |> bind backend
// start built-in device
(frontend,backend) |> Devices.queue |> ignore
// we never get here…
EXIT_SUCCESS
main ()