No description
Before this change, we used extremely inefficient outer joins as part of a single query of lookup, which was spiking our CPU usage to nearly 100% on the query. We now issue two separate queries for popularity and action account, by doing a lookup of the previously found IDs. Interestingly enough, because of the way the queries are now written, MySQL can actually do both queries *directly from the indicies*, which means they each occur in approx 20ms! Verified by local tests, postgres tests, and testing on staging with monitoring of our CPU usage during lookup |
||
---|---|---|
auth | ||
avatars | ||
binary_dependencies | ||
buildman | ||
buildstatus | ||
conf | ||
contrib/osx | ||
data | ||
emails | ||
endpoints | ||
events | ||
features | ||
formats | ||
grunt | ||
health | ||
screenshots | ||
static | ||
storage | ||
templates | ||
test | ||
tools | ||
util | ||
workers | ||
.dockerignore | ||
.gitignore | ||
alembic.ini | ||
app.py | ||
application.py | ||
Bobfile | ||
build.sh | ||
CHANGELOG.md | ||
config.py | ||
Dockerfile | ||
external_libraries.py | ||
initdb.py | ||
local-run.sh | ||
local-test.sh | ||
README.md | ||
registry.py | ||
requirements-nover.txt | ||
requirements.txt | ||
ROADMAP.md | ||
verbs.py | ||
web.py |
Quay.io - container image registry
Quay.io is a container image registry with managements APIs, a Docker registry API, a container build system. The application is implemented as a set of API endpoints written in python and an Angular.js frontend.
Setup Development Environment
If you are doing local development on your workstation against the code base follow these instructions.
OS X
git clone git@github.com:coreos-inc/quay.git
cd quay
./contrib/osx/local-setup.sh
Running Development Environment
Now run the server; it will use sqlite as the SQL server.
./local-run.sh
Now quay will be running on: http://127.0.0.1:5000
The username is devtable
and the password is password
.