Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Big files / time consuming #5

Open
dbpolito opened this issue Jul 10, 2017 · 4 comments
Open

Big files / time consuming #5

dbpolito opened this issue Jul 10, 2017 · 4 comments

Comments

@dbpolito
Copy link

Hey, great stuff you have here... congrats...

Sorry to bother you, i'm trying to do basically the same thing you do here, but i'm just facing a problem, Size Limit and Job Timeout.

It seems you have a 500mb limit and a 5 minute timeout. Did you have a problem with these limits? Or your use case you only handle small files?

@russmatney
Copy link
Owner

russmatney commented Jul 10, 2017 via email

@dbpolito
Copy link
Author

Thanks for your reply. Yes, it does work great with small files, but i will need to work with big files, + 1GB and +5 Minutes jobs... I was wondering if there is any way to bypass these limits, only noticed them now 😢

@russmatney
Copy link
Owner

It's been so long since I've been in here, and my preliminary digging left me laughing at whatever this commit was doing. So this perhaps isn't the most robust path... but that's not very helpful.

I remember the max time for lambda functions when i was working on this was 60s; i'm not sure if that's been extended to 5 min or if it's configurable, but I assume that's where you're seeing an issue. If you're sure the timeout is what's killing your function, I'd look there to see if you can opt into a longer one. Alternatively, I'd consider whether or not it should be taking a full 5 minutes to run the process on your local machine – that seems like a long time! But it's certainly feasible for processing video.

If all that passes sanity checking, and you still want to use lambda, you may need to break the process across multiple lambda function calls, and use some other mechanism for orchestrating a string of longer-running functions. I did this once, and while it was hacky, it did work. The code for that is here, but perhaps better explained in this readme or this blog post.

Either way, I'd also want to know if you can even download your files fast enough to start processing it – if aws doesn't let the file in at all, that seems like a non-starter. Maybe you can compress them? You should be able to write a quick function with logging to confirm that the files are at least being downloaded to the aws machine.

And after all that, something like apex might be getting more maintenance attention these days, so you should at least have a look.

@tetreault
Copy link

@dbpolito wouldnt a 5 minute+ lambda task be crazy expensive if you ran it lets say thousands of times? With >1Gb and 5+ minute times you might as well use something like node-ffmpeg and just provision an EC2 instance

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants