| service: api |
| runtime: python27 |
| api_version: 1 |
| instance_class: F2 |
| |
| # Individual api requests usually consume well under F2's 256MB memory limit, |
| # and the spa can fetch several api requests in parallel, so threadsafe:true |
| # allows this service to handle multiple requests in parallel to manage latency. |
| threadsafe: true |
| |
| automatic_scaling: |
| # We're setting the max concurrent request to 20, to allow AppEngine to scale |
| # the number of instances to handle API requests better. We're also going to |
| # keep around 10 instances at the ready to handle incoming requests better |
| # from a "cold start". |
| max_concurrent_requests: 20 |
| max_instances: 150 |
| max_pending_latency: automatic |
| min_instances: 10 |
| target_cpu_utilization: 0.8 |
| |
| libraries: |
| - name: jinja2 |
| version: "2.6" |
| - name: pycrypto |
| version: "2.6" |
| - name: webapp2 |
| version: "2.5.2" |
| - name: ssl |
| version: latest |
| |
| env_variables: |
| GAE_USE_SOCKETS_HTTPLIB: 'true' |
| |
| builtins: |
| - appstats: on |
| - deferred: on |
| |
| inbound_services: |
| - warmup |
| |
| handlers: |
| - url: /.+ |
| script: dashboard.dispatcher.APP |
| secure: always |