Coder Social home page Coder Social logo

Investigate levee about entente HOT 6 CLOSED

bucharest-gold avatar bucharest-gold commented on September 24, 2024
Investigate levee

from entente.

Comments (6)

balunasj avatar balunasj commented on September 24, 2024

Related to the microservices demo issue #18

from entente.

lance avatar lance commented on September 24, 2024

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.

lholmquist avatar lholmquist commented on September 24, 2024

@lance should we create issues from those options bullet points?

/me hides if you are already doing that :)

from entente.

lance avatar lance commented on September 24, 2024

Mentioning #18

from entente.

lance avatar lance commented on September 24, 2024

@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.

lance avatar lance commented on September 24, 2024

Issue created for the 3rd option, and likely for the 3rd Milestone. #93

from entente.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.