4 ms·
Introducing Firebase Queue
- sync 11y agoSo what does this do exactly? It's not running the code itself as far as I can tell... so it is merely reporting on the status of the background job?
- drTriumph 11y agoHi HN, I'm the lead engineer on Firebase Queue. I think it will make processing background tasks in Firebase much easier, and we're already using it for some projects internally. I'd love to hear what you think when you try it out!
- primitivesuave 11y agoMy solution so far has been to write my own Node server that listens to a particular branch for requests, and use the rules to enforce that a user can only write to /request/<user-id>. When making a request, a user writes data to their user ID's request branch, and listen for changes made by the server to their request. This has worked out great, but the Java server is now a point-of-failure. It would be great to get some information on how this would be an improvement over my current setup.
- drTriumph 11y agoThe biggest advantage would be that you can have multiple server processes listening for requests on the same path and know that only one will be processing it at any point in time. That way your process is no longer a single point if failure.
- mentos 11y agoHow does this compare to Parse's Cloud Code?
- drTriumph 11y agoThis is not a hosted solution - you will have to run your own server still with Firebase Queue
- rexreed 11y agoHow does this compare to the reliability of RabbitMQ on the server side? Can you have multiple simultaneous queues? And multiple listeners per queue? What is latency and performance like, especially with third-party server workers?
- univalent 11y agoFirebase and AWS user. Is this similar to AWS SQS. Any performance or other benefits?
- ollysb 11y agoIs this using the streaming API or polling?
- drTriumph 11y agoIt uses the Node Firebase client: https://www.npmjs.com/package/firebase https://www.npmjs.com/package/firebase
- ibejoeb 11y agoI read the readme but I didn't find any info about delivery guarantees. Do we know if tasks are guaranteed to be delivered once and only once, or if there is possible data loss or duplication?
- drTriumph 11y agoBy specifying a timeout on a task spec or not you can specify whether a task is tried at least once or at most once.
- timdumol 11y agoIt's worth noting that exactly-once delivery is impossible: http://bravenewgeek.com/you-cannot-have-exactly-once-delivery/ http://bravenewgeek.com/you-cannot-have-exactly-once-deliver...