M
MarkusSchaber
Hello,
I'm looking for a Messaging / Service Bus implementation, but it seems
that we have some requirements which are rather special:
- We have mobile parties using .NET Compact Framework (on WinCE / -
Mobile), which are in changing networks and having different IPs.
- Outgoing packets / messages have to be queued locally when the
receiver is not online.
- Failover (and possibly simple load balancing) between multiple
servers would be nice.
- We need secure encryption and authentication on the transport layer,
the receiver of a message must be able to reliably identify the sender
(so somebody cracking one of our mobile devices must not be able to
spoof messages from other participants).
- Some of our messages are rather large (scientific measure data), so
we need to control serialization of at least those messages (XML is
too much bloat to send over GPRS).
- Nice to have: Free or cheap licence costs for evaluation, academic
and research use.
Most of the usual suspects are already sorted out: (In Case I
misunderstood something, please correct me!)
- MSMQ (Seems to be limited on the Compact Framework, no Encryption,
no local Queuing, only XML message formatting)
- ActiveMQ / Apache NMS (Does not support the Compact Framework
currently, no local queuing for .NET clients)
- SimpleServiceBus (Uses MSMQ / ActiveMQ, no local Queuing on the
compact framework)
- R-OSGi (no stable .NET implementation available)
- NServiceBus (uses MSMQ internally, uses SQLite internally which
needs native dlls)
- MassTransit (does not work with the Compact Framework)
- Muscle (no local queuing, .NET support apparently unmaintained)
- Azure (Not yet for Compact Framework, Servers must be rented from
the MS Cloud Datacenters)
- Rhino Service Bus (No offline queuing, MSMQ necessary, I did not get
the psake build system to work)
- Sopera (Not for mobile road warriors, needs IBM Websphere MQ for
local queuing (expensive), no encryption on .NET yet.)
- XMPP / Jabber: XML based, no local Queuing, not designed for this
use cases.
So I basically did my "just google it" homework, and are kindly asking
for some more suggestions and ideas here.
Thanks a lot in advance,
Markus
I'm looking for a Messaging / Service Bus implementation, but it seems
that we have some requirements which are rather special:
- We have mobile parties using .NET Compact Framework (on WinCE / -
Mobile), which are in changing networks and having different IPs.
- Outgoing packets / messages have to be queued locally when the
receiver is not online.
- Failover (and possibly simple load balancing) between multiple
servers would be nice.
- We need secure encryption and authentication on the transport layer,
the receiver of a message must be able to reliably identify the sender
(so somebody cracking one of our mobile devices must not be able to
spoof messages from other participants).
- Some of our messages are rather large (scientific measure data), so
we need to control serialization of at least those messages (XML is
too much bloat to send over GPRS).
- Nice to have: Free or cheap licence costs for evaluation, academic
and research use.
Most of the usual suspects are already sorted out: (In Case I
misunderstood something, please correct me!)
- MSMQ (Seems to be limited on the Compact Framework, no Encryption,
no local Queuing, only XML message formatting)
- ActiveMQ / Apache NMS (Does not support the Compact Framework
currently, no local queuing for .NET clients)
- SimpleServiceBus (Uses MSMQ / ActiveMQ, no local Queuing on the
compact framework)
- R-OSGi (no stable .NET implementation available)
- NServiceBus (uses MSMQ internally, uses SQLite internally which
needs native dlls)
- MassTransit (does not work with the Compact Framework)
- Muscle (no local queuing, .NET support apparently unmaintained)
- Azure (Not yet for Compact Framework, Servers must be rented from
the MS Cloud Datacenters)
- Rhino Service Bus (No offline queuing, MSMQ necessary, I did not get
the psake build system to work)
- Sopera (Not for mobile road warriors, needs IBM Websphere MQ for
local queuing (expensive), no encryption on .NET yet.)
- XMPP / Jabber: XML based, no local Queuing, not designed for this
use cases.
So I basically did my "just google it" homework, and are kindly asking
for some more suggestions and ideas here.
Thanks a lot in advance,
Markus