Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
Where can use Redis MQ and where can use SignalR in large-scale project?
I've used signalR and used parts of ServiceStack. took a quick look at Redis MQ. I think these are unrelated
SignalR - server to client (browser) messaging and abstracting out details of the channel being used (websockets/long polling etc) based on the browser and server technology. lets you easily build apps where server can push information back to clients. In a scale out scenario, SignalR uses a sort of pub/sub messaging to handle clients that may be connected in different nodes. It can make use of Redis over a backplane (just one of the options - others are SQL server or Azure service bus)
Redis MQ - basically a MQ implementation over Redis? From the page you linked:
A redis-based message queue client/server that can be hosted in any
.NET or ASP.NET application.
Redis itself is a in-memory NoSQL store (though you can have it flush to disk) - super fast and a great fit for certain scenarios. And it also has pub/sub primitives.
So with that said, your question isn't quite clear. Maybe you can elaborate on what you're looking for? How do you plan to use pub/sub?
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
Neither wikipedia nor the SignalR homepage explain its name.
Perhaps you know where it comes from?
What is Signal R
Signals are used for communication (e.g. analog and digital). R stands
for real-time. Real-time web refers the ability to have server code
push content to the connected clients instantly. Signal R in short
refers to Real-time application communication
From Signal R - A Real-Time Application
The closest to anything official I can find is on the github which states:
ASP.NET SignalR
Async signaling library for .NET to help build
real-time, multi-user interactive web applications
(Emphasis mine)
The main site says, "real time" numerous times in the opening paragraph, but comes short of saying R == RealTime:
What is SignalR?
ASP.NET SignalR is a library for ASP.NET developers that simplifies
the process of adding real-time web functionality to applications.
Real-time web functionality is the ability to have server code push
content to connected clients instantly as it becomes available, rather
than having the server wait for a client to request new data.
There's plenty of other anecdotal mentions on the blogsphere, e.g. Overview of SignalR.
I have also asked for confirmation on the SignalR teams JabbR.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
I want to implement a notification feature i.e. user gets notification just like facebook when database is updated. I want to implement this feature in c#, can anyone help me out?
Thanks
You can use SignalR for real-time web features.
ASP.NET SignalR is a new library for ASP.NET developers that makes developing real-time web functionality easy. SignalR allows bi-directional communication between server and client. Servers can now push content to connected clients instantly as it becomes available. SignalR supports Web Sockets, and falls back to other compatible techniques for older browsers. SignalR includes APIs for connection management (for instance, connect and disconnect events), grouping connections, and authorization.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I am trying to build a chat app in c# that would work in the wan network.
There are 2 side in the app. Server side and client side.
In my thoughts i think that every message from client to client need to be passed to the server and the server will forward it to the right des client. The communications between the clients wont be directelly.
Is this the right model?
If yes, does the server need to have one socket that will listen to all clients? (Because every client sends his message to the same port at server).
Will the sever can handle management of million of messages on same port?
I think it is really up to what you want to accomplish, each choice has it's own pros and cons.
For example:
Using a centralized server can track messages , which users are online etc... but you will have to manage the ports for each connection (see explanation at the end of the answer for details).
Using a P2P model, you will not have the bottle neck and management required by the centralized server, but again it might be more of a hassle to manage a non centralized system (depends what exactly you want to accomplish).
If you are going to the centralized design, Typically You would have a server with a port that will listen for requests.
once a user wants to connect, the server will start a new thread for the client, and will assign a port for him (the thread will be typically from a thread pool and the port from a specific port range).
this will allow users to speak to the server in a non-blocking manner, and by that allow for multiple users to use the service simultaneously.
Take a look at SignalR and the chat system implemented using SignalR, Jabbr:
http://signalr.net/
http://about.jabbr.net/
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
According to this article
http://blog.goyello.com/2009/09/07/why-apache-activemq-isnt-good-for-net-developers/
Although Apache ActiveMQ supports .NET, this feature is limited only to basic client operations. Apache ActiveMQ does not give access to manipulate ActiveMQ broker, persistent store or transports.
I don't really understand what prevents Apache ActiveMQ to present same features for .NET client as for Java client: is it because they "forget", they don't want, they can't but could in the future ?
ActiveMQ .NET clients support all the features that Java clients enjoy. It even comes with WCF integration! About the only tricky feature that Java clients can use which would be tricky to get working on .NET is that Java client can boot up a ActiveMQ server in the same process as the client. The need to do that is not very common. If you really need to do it, you might want to try running the ActiveMQ server in IKVM.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
I would like input on the design I currently have planned.
Basically, I have some number of external instrumentation, each of which should always be running, collecting specific data. My thought was to create a service for each, always running and polling the instruments, performing logging, etc. There could be one instrument, or there could be 40.
However, I need one application to consume all this data, run some math on it, and do the charting, display, emailing, etc. The kicker is that even if this application is not running, the services should constantly be consuming data. Also, these services should almost always be supposed to run on the same machines as the client application itself, but the ability to network them (like .NET Remoting used to do) could be an interesting feature.
My question is... is this the best design? If it is, how do I go about doing the communication between services and application? I've looked into WCF, but it seems to be geared towards request-response web services, not something that is continually streaming data to anything that might listen to it. Alternatively, should I have these services contact some other Web Service using WCF, that then compiles the data for use in a thin client viewer that polls the web service often?
Any links and resources would be greatly appreciated. .NET namespaces for me to research are also appreciated. If I wasn't clear about something let me know.
Just a thought....but have you considered perhaps adding a backend database? All services could collate data and persist it then your application that needs to process the information can just query the database rather than setting up loads of IPC between the services.
WCF can handle streaming. It can also use MSMQ as a transport, which will ensure that no messages are lost, even if your instruments begin producing large quantities of data.