Comments (4)
What examples violate this? I couldn't find any in the Getting Started guide.
Everything that's true for the Java client applies to Langohr. Sharing channels between threads is a bad idea when publishing, although even that is not always true: publishing from a consumer callback is safe because consumer work service in the Java client dispatches consume methods with a per-channel ordering guarantee.
I welcome specific documentation improvements. Java, .NET and Ruby (Bunny) clients have decent concurrency considerations sections in their docs.
from langohr.
@michaelklishin thanks for your reply. I could be missing something, but doesn't blabbr
in One to Many Pubsub share channels between the consumers? weathr
does the same. Admittedly these are on the consumer side, but the aforementioned RMQ warning does not distinguish between producers and consumers: "While some operations on channels are safe to invoke concurrently, some are not and will result in incorrect frame interleaving on the wire." At the very least, if consumers can safely share channels but producers not, would it make sense to at least mention this in the docs? The Bunny docs do seem clearer ("Concurrency Considerations"). Thanks again.
CC @loganmhb
from langohr.
@eigenhombre feel free to submit a PR for Langohr docs.
from langohr.
Those examples share a channel for consuming. There is no concurrency besides what the client does internally to make delivery dispatch concurrent. I've explained above why that is safe.
from langohr.
Related Issues (20)
- Add support for hostname verification HOT 2
- Arity error HOT 2
- Bump Java client to 5.7.0
- Allow customizing client-properties? HOT 6
- Allow configuring setChannelRpcTimeout HOT 1
- API documentation link is broken HOT 1
- consume from queue with no-ack mode
- support for quorum queues declaration? HOT 1
- (hopefully) invalid warning about TrustEverythingTrustManager HOT 2
- New version coming soon? HOT 2
- com.rabbitmq.client.AlreadyClosedException on langohr `5.2.0` and RabbitMQ server `3.9.11`
- :port required with :ssl true HOT 1
- Wrong number of arguments on the `handleRecoverOk` override HOT 1
- Consider requiring Java9 minimum (ideally 11) HOT 2
- links in README.md point to porn
- Support vhost cluster status
- Log warning HOT 4
- Document the return value and any exceptions thrown by basic/publish HOT 1
- Metadata may contain java.util.Collections$EmptyMap types HOT 1
- A way to get next publisher confirm sequence number HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from langohr.