1

I am developing an application using C#/.NET having 2 parts: a WPF client and a Windows service.

Each of these parts are currently working independently, but I now want to connect them together as a new step of my project. The app is using NHibernate, Autofac and Automapper (dto/models).

On the service side, I currently have only one server running it, but I will maybe create a cluster to have more computing power.

The constraints are the following: I want to be able to send my DTOs over the wire, so WCF is out. Moreover, I don't have the budget to get ServiceStack 4 (and v3 has no more support).

  • For communication between client and server, does it make sense not to have a service layer (like WCF or ServiceStack) and to only use RabbitMQ for messaging ?

The advantage is that RabbitMQ supports sending of DTOs and allows to create a cluster easily. The limitation is that I will not be able to use my service as an api to output JSON result (but it is not the purpose of my app anyway, and I'll not need it).

1 Answer 1

2

I'd use Rabbit MQ if you needed reliable messaging or for things that MQ's are inherently better suited for, e.g. long-running tasks, decoupling senders/receivers, etc.

But if you're just looking to cluster normal Request/Reply Services over multiple back-end App Servers you can just use a load-balancer and configure it to load-balance requests amongst your multiple App Servers.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.