aarondfrancis / sidecar

Deploy and execute AWS Lambda functions from your Laravel application.
https://hammerstone.dev/sidecar/docs/main
MIT License
829 stars 57 forks source link

Refactoring to RemoteFunction, RemoteProcess, CloudProcess or CloudThread package #45

Open misog opened 2 years ago

misog commented 2 years ago

Hi, I was thinking about the possibilities of this package and remote executions in general. The idea of this package is defined in readme.md however I think smaller package could be created to allow just execute code on remote cloud function provider (and handle deployments in non-verbose way).

The concept for this could be named a "process" or a "thread" or a "remote function" which is executed in various cloud function providers or environments (it could support drivers and each driver use own SDK such as AWS SDK or Azure SDK, ...). Such a package could be framework-agnostic. Then, sidecar can use such a package internally to handle execution and deployment.

Java Spring supports similar concept with adapters for AWS Lambda, Microsoft Azure, Apache OpenWhisk - https://spring.io/projects/spring-cloud-function

What do you think?

aarondfrancis commented 2 years ago

Hey @misog, thanks for the idea and the reference to Spring. I didn't know about that!

I can't say too much at the moment, but I am working on a refactor to make it not Lambda dependent. In fact, I already have a second cloud provider fully working.

I'll be able to speak more about it in a few weeks once it's all done. I'm currently preparing for my Laracon talk on February 9th, after that I can share more. I like this idea though. At some point in the future I might be interesting in even making it not Laravel-specific, but that's not as high on my priority list at the moment.

I'll keep you posted on this thread!