Great article, and good introduction to IOpipe. I think ultimately it will be nice to be able to run all of these FaaS (function as a service) platforms on Docker, to avoid cloud lock-in. I just can't imagine the industry supporting multiple proprietary platforms in the long term.
It's open source. I'm open to seeing how we might be able to integrate or work with Effe in our Go SDK, or if necessary, learn from your effort. Take a look at https://github.com/iopipe/iopipe-golang, I'd love a pull-request.
We're not an alternative to AWS Lambda or, "Lambda on your own infrastructure". Instead, we desire to make it easier to build apps that run anywhere, which includes both AWS Lambda and Docker. I suppose there's some overlap, but the goals and technical challenges are a bit different. IOpipe is also a library that simplifies integration with services that provide state.
> It’s not just deployment, but provides facilities for sharing code and extracting telemetry from your running apps. We believe that operations should be coupled with development, that developer tools should also be operational tools. For this reason, we’re keen to ensure that telemetry — metrics, logging, analytics, distributed tracing — is built-in from the beginning.
I think this is the most important problem IOPipe is trying to solve. Portability between platforms is a good goal but achievable with some discipline about avoiding the proprietary bits of the platform. Making "serverless" software operable to the same (or better) degree than traditional software deployment is the key.
After tinkering around with Lambda myself building MMOG with it, while it does exactly what it says, the pieces seem too disparate and everything felt to "cobbleware" for me to do anything user-facing with it. Indeed, it seems an ideal system to do offline and backoffice. The stack I ended up with was API-gateway <-> Lmabda <-> Dynamo <-> Dynamo Streams <-> SQS <-> Browser <-> S3 Good luck troubleshooting that. I found the concept of "serverless" more appropriate using Google App Engine.
OpenWhisk runs as a long-lived service which runs your code in Docker containers. In a way, it's a hammer.
IOpipe can deploy code anywhere, which includes both Docker and OpenWhisk. It's the nail. You could deploy an app with IOpipe to OpenWhisk then run a map-reduce job on the same OpenWhisk cluster, on Docker Swarm, AWS Lambda, or... anywhere
It would be easy to stand up a service based on IOpipe that works like OpenWhisk, but that's just one use-case.
[+] [-] illumin8|9 years ago|reply
[+] [-] siscia|9 years ago|reply
You basically write your function in golang and it get compiled to a single binary that you can run everywhere.
Everything is ready but the deploying, so you will need to deploy your own, but it already can create a docker container so...
Everything is on github: https://github.com/siscia/effe
[+] [-] ewindisch|9 years ago|reply
We're not an alternative to AWS Lambda or, "Lambda on your own infrastructure". Instead, we desire to make it easier to build apps that run anywhere, which includes both AWS Lambda and Docker. I suppose there's some overlap, but the goals and technical challenges are a bit different. IOpipe is also a library that simplifies integration with services that provide state.
[+] [-] 0x74696d|9 years ago|reply
I think this is the most important problem IOPipe is trying to solve. Portability between platforms is a good goal but achievable with some discipline about avoiding the proprietary bits of the platform. Making "serverless" software operable to the same (or better) degree than traditional software deployment is the key.
[+] [-] 725686|9 years ago|reply
[+] [-] nickbauman|9 years ago|reply
http://blog.appscale.com/gartner-magic-quadrant
[+] [-] Chris2048|9 years ago|reply
[+] [-] andreapaiola|9 years ago|reply
[+] [-] nickbauman|9 years ago|reply
[+] [-] julien421|9 years ago|reply
[+] [-] ewindisch|9 years ago|reply
IOpipe can deploy code anywhere, which includes both Docker and OpenWhisk. It's the nail. You could deploy an app with IOpipe to OpenWhisk then run a map-reduce job on the same OpenWhisk cluster, on Docker Swarm, AWS Lambda, or... anywhere
It would be easy to stand up a service based on IOpipe that works like OpenWhisk, but that's just one use-case.