Comments (13)
It's awesome to see you guys testing FaaS - the limit here is in the gateway rather than the watchdog which I think you've set up correctly. I think I'd consider anything over a few seconds to be asynchronous and that's something I want to tackle through the roadmap.
An asynchronous item would probably return instantly with an ID and allow polling or call back to a URL on completion.
For the time being you could get past the 8 second limit by hacking server.go
in the gateway - and I think that's probably something that should be configurable.
Here's the line you'd want to edit -
https://github.com/alexellis/faas/blob/master/gateway/server.go#L65
If you run the ./build.sh file you'll get an image you can swap into your docker-compose file for the gateway called "functions/gateway:latest-dev"
Does that help?
from faas.
@stealthybox @cgpuglie closing this re: fix in #95 #96 - thanks for contributing and hope to see you in the Slack channel.
Did you want to raise another issue to discuss a path prefix?
from faas.
Taking a look right now -- thanks alex!
from faas.
Built and tagged it in our private registry.
Changing those values works 👍
I'll look at adding some config options for the gateway.
A pathPrefix for all of the routes would be helpful in addition to these timeouts.
from faas.
from faas.
Great. Would be interesting to see a minimal example of the scraping contributed online somewhere or as a blog.
Btw you might find the faas-cli useful too - https://blog.alexellis.io/build-and-deploy-with-faas/
What are you thinking re: a path prefix?
from faas.
I still have a draft blog-post for some linuxkit usage on windows I never finished :/
For the path Prefix stuff, I was thinking setting PathPrefix=/faas
would result in
/faas/system/alert
/faas/system/functions
/faas/function/...
/faas/ui/
/faas/assets/
Not sure what the best way to do this is in gorilla/mux
from faas.
I'm guessing that for the gateway config, we'd do something similar to what's implemented in watchdog
with osEnv
and readConfig
?
from faas.
I'm not sure about the Prometheus /metrics
endpoint -- can Prometheus be configured to scrape nested routes?
If you're running Prometheus in the network, it's easier to just leave it unchanged, but from outside, it could be problematic to route to.
from faas.
For now let's look at the timeout config in this issue. Feel free to open separate threads.
from faas.
I'm confused as to why there are two levels of timeout.
Does the gateway re-invoke on bad exit codes within the gateway timeout?
If not, I'd suggest we set the request's timeout values to match the function's service spec if present.
What do you think?
from faas.
@stealthybox do you want to open another issue to talk about your idea re- prefixes?
from faas.
Yep!
I'll do that tonight
from faas.
Related Issues (20)
- Cannot connect to OpenFaaS on URL: http://xx.xxxx:31112 HOT 1
- Request for CUDA access HOT 4
- how OpenFaaS handles concurrent requests in the function? HOT 1
- Function execution is not stateless HOT 2
- Can multiple functions be run on a single runtime? HOT 1
- Question: Import path for common modules HOT 2
- requests schedule policy in openfaas HOT 1
- Is there a workflow tool for OpenFaaS? HOT 3
- some companies appear twice in the adopters list HOT 2
- Support Azure service bus topic/subscription HOT 1
- RPC and openfaas HOT 1
- Question about OpenAPI Spec 3.1 HOT 2
- [Improvement] OpenFaaS operator installation
- The README.md under fass/api-docs has an incorrect URL to the api spec file
- Setup repository locally
- Function failed to deploy with status code: 500 HOT 2
- Openfaas install gateway Crash HOT 2
- Consultation on the usage permissions of the community version
- Unable to log in to the gateway - connection refused HOT 8
- How do I use a tensorflow base image in the Dockerfile template? Is it possible? HOT 3
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 faas.