Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking for code must demonstrate a minimal understanding of the problem being solved. Include attempted solutions, why they didn't work, and the expected results. See also: Stack Overflow question checklist
Closed 9 years ago.
Improve this question
How a Queue and Topic can be applied in airport management when a plane arrives?
At the airport there are many systems that interact with the plane at ramp time. These include fueling and servicing the plane, gate management, passenger announcements, FAA filings, and 3rd party vendors such as those who SMS you with updates. All of these are different families of applications both within and external to the airport's network fabric.
Publishing a single event notification on a topic is a good way to update all interested systems at once. Rather than establishing dozens of point-to-point interfaces for all these systems, they are all allowed to subscribe to the topic of interest. The publications can be converted to queued delivery on a per-receiver basis for legacy apps or external apps that cannot issue a subscribe command.
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 last month.
The community reviewed whether to reopen this question last month and left it closed:
Original close reason(s) were not resolved
Improve this question
As a product scales, APIs and two tier architecture incurs bottlenecks, data contention, downtime. Messages can become lost, if there are thousands or millions of requests & activity
What makes websocket connections beneficial vs Kafka? What are the best use cases for each?
Is there an example such as a large scale chat application where a hybrid of both technologies are necessary?
Websockets should be used when you need real-time interactions, such as propagating the same message to multiple users (group messaging) in a chat app.
Kafka should be used as a backbone communication layer between components of a system. It fits really well in event-driven architectures (microservices).
I see them as 2 different technologies which have been developed for 2 different purposes.
Kafka, for example, allows you to reply messages easily, because they are stored on the local disk (for the configured topic retention time). Websockets are based on TCP connections (two-way communication), so they have a different use-case spectrum.
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
I'm using phoenix controllers to receive data via REST calls. So an iOS app could send the "events" for each user and based on the event, I need to calculate the score/points and send it back to the user. Calculation and sending back to the user can happen asynchronously. I'm using Firebase to communicate back to the user.
What is a good pattern to do calculation? Calculate could be bunch of database queries to determine the score of that event. Where should this calculation happen? Background workers, GenEvent, streams within user-specific GenServer (I have supervised GenServer per user).
I would look at Phoenix channels, tasks and GenServer.
Additionally, if you would like to manage a pool of GenServer workers to do the calculations and maybe send back the results for you, check out Conqueuer. I wrote this library and it is in use in production systems for my company. It is uses poolboy, which is probably the most pervasive pool management library in Erlang/Elixir.
Admittedly, I do not fully understand the requirements of your system, but it does not seem to me GenEvent has a place in your requirements. GenEvent is about distributing events to one or more consumers of events. So unless you have a graph of processes that need to subscribe to events being emitted from other parts of your system I do not see a role for it.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
As I am evaluating IBM MQ, I am looking for some technical details on its strengths and limitations.
Maximum number of connections
How much high volume it can support
Maximum size of the message it supports
How do I redoif message was lost due to client was offline? Examples?
How do I apply transactions in the messages? Examples?
Are there any examples to send / subscribe messages directly from
mobile device?
What are the strong features IBM MQ provides which are not available
in other competitive JMS products (ex: Weblogic, Rabitt MQ, etc) ?
This sounds like your boss asked you to do some research on MQ but instead you posted the questions here. Did you read any of the IBM RedBooks on MQ? Here is the MQ Primer which is a good starting point for beginners. Did you read the MQ Knowledge Center?
You still need to do more research unless you want to hire me as a consultant (I'm not cheap!!) but here are some answers off the top of my head.
Depends on the horsepower of the server. Years ago, I've had queue managers handling thousands and thousands of connections without issue.
Again it depends on the horsepower of the server. On the mainframe, I know of customer moving hundreds of millions of messages per day without issue.
Come on, that is the easiest thing to look up in MQ. (default is 4MB - max is 100MB otherwise use message grouping)
Pub/Sub or Point-to-Point? For Pub/Sub use durable subscription and for P-2-P use persistent messages. Besides, MQ does NOT loose messages if the client application is not connected. It would be a pretty bad messaging system if it did - maybe you're using a bad one right now.
You can have local UOW or 2 Phase UOW.
Sure. Install MQ and select Samples then go and play around with the samples. Did you do any internet searches? The MQ Telemetry Transport (MQTT) Programming presentation should have been at the top. Note: There are more presentations on MQTT at MQTC's web site. You can also find lots of MQ samples here.
Ask your IBM sales rep.
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 7 years ago.
Improve this question
Is it a good idea to use a message queue as websocket server in production (instead of Java EE #ServerEndpoint)?
It would establish a loose coupling towards the JS client and perhaps reduce the load from the application, but are there major disadvantages? Should one really expose a MQ over the web?
One can send messages to websocket clients from within a java web application without the help of a message queue. And this is a good enough solution as long as you do not need the additional features that message queues have to offer (QoS 1/2, Retained messages, Last Will and Testament, ... for some more benefits of using a mq see for example: http://www.hivemq.com/mqtt-over-websockets-with-hivemq/)
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
I'm looking for a modem where I can host 10-15 normal sim cards. The modem will be used to send and receive SMS messages. This modem need to send a lot of messages at the same time.
Fifteen of the cheapest available USB-stick 3G modems attached to a tree of hubs is probably cheaper than either building something sophisticated from scratch or looking for the sort of cellular-network analysis kit that might be able to deal with your problem.
What you want is called a GSM gateway. There are many manufacturers and suppliers this is just one example. However programtically sending SMS messages through it is likely to be complex and network providers don't like them and tend to cancel sims if they detect that they are being used in gateways. If you want to send bulk SMS messages you are better off partnering with a telecoms company that offers a web service API.
I would suggest using a SMS/MMS Aggregator like www.openmarket.com as carriers will block GSM Gateways if you start to send in bulk.