Comments (6)
Related to the microservices demo issue #18
from entente.
Took a look at it, and tried to integrate it into a fork of the bonjour app from the MSA demo. While levee looks interesting, I am not sure if it's necessarily the right approach as it is a callback-based API and won't work out of the box with roi, for example, since roi uses promises exclusively.
I also looked at https://www.npmjs.com/package/promise-circuitbreaker which could be useful for us. However, out of the box it uses Bluebird promises, and while it provides an ability to provide your own Promise implementation as a configuration option, the code itself uses non-standard Bluebird functions. Additionally, it's got nowhere near the level of usage of levee, so I'm really not sure if it's right either.
Here are the options I see with regard to #18 going forward.
- Write our own circuit breaker implementation that is optimized for our existing tools and libraries. I don't think this would be a terribly difficult task, but it would definitely take some non-zero amount of effort.
- Fork promise-circuitbreaker and provide some pull requests that make use of more standard compliant Promise APIs.
- Create a levee-promises package that provides an adapter over levee to allow levee's circuit breaker functionality to work with a promise based api.
At the moment, I am leaning towards the first or last option. I worked a bit with promise-circuitbreaker, and while it's fine, I think we'd be better served writing our own or providing a (probably widely useful in the community) promise-levee adapter.
Closing this for now, since I think any further action deserves its own issue.
from entente.
@lance should we create issues from those options bullet points?
/me hides if you are already doing that :)
from entente.
Mentioning #18
from entente.
@lholmquist I think we need to make an issue for whichever one we decide to do. Of the two I prefer, the last one (levee-promises package) is probably the easiest. I'll start with that as an issue, and if we find it to be a non-optimal solution, we can try one of the others.
from entente.
Issue created for the 3rd option, and likely for the 3rd Milestone. #93
from entente.
Related Issues (20)
- licenser basic screencast HOT 1
- Add circuit breaker booster for Node.js RHOAR HOT 1
- Node.js Runtime Guide for RHOAR HOT 2
- RHOAR Integration HOT 1
- add nodejs-rest-http to greenkeeper HOT 1
- Update nodeshift with new config-loader options HOT 1
- Health Check Middleware HOT 2
- ConfigMap Booster HOT 2
- Node Boosters - Create Launch Templates
- Enable greenkeeper for license-reporter
- feat: Create MEAN booster HOT 1
- To test bucharest-gold projects on windows HOT 3
- Create rhel7-s2i-nodejs repo HOT 2
- Potential New Booster Development for RHOAR and/or OpenShift HOT 5
- search how to configure environment variable that works in cross-platform environment inside package.json -> scripts HOT 1
- try to deploy any of the existing RHOAR Java boosters HOT 5
- script step-to-step for mean nodeshift minishift demo
- 2018-02-27 Team Meeting Agenda
- boosters: Add license-reporter silent option and fixed version of express
- RFC - s2i Builder Image for Front-end Javascript HOT 4
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 entente.