Slide 1

Slide 1 text

SCALING PYTHON James King @agentultra

Slide 2

Slide 2 text

• CPython • Openstack • Firefox • WebGL • Many, many more…

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

–Johnny Know-It-All “Dynamic languages do not scale to programming-in-the- large”

Slide 5

Slide 5 text

–Super Enterprise Hacker “Scripting languages are great for toys, one-off jobs, and prototypes but do not scale for serious projects”

Slide 6

Slide 6 text

–Armchair Academic “You cannot possibly ship software without a formal verification of correctness”

Slide 7

Slide 7 text

POPPYCOCK! • 4+ million LOC • Python (2.7 for the most part, sigh) • 2,351 contributors to the Liberty release • 28,647 accepted contributions • HP, Redhat, Mirantis contributed over 13k commits to Liberty as the top 3 out of 165 companies Source: http://stackalytics.com http://activity.openstack.org/dash/browser/?release=liberty

Slide 8

Slide 8 text

POPPYCOCK! • RackSpace • HP • DreamCompute • Internap • … and many more

Slide 9

Slide 9 text

DREAMCOMPUTE • 2721.31 VMs running on average • 1.38 VCPU per VM on average • 1.65 GB of RAM per VM on average • 3755 VCPUs active • 4501 GB of RAM active

Slide 10

Slide 10 text

IT WORKS PRETTY WELL

Slide 11

Slide 11 text

IT WORKS PRETTY WELL … and it’s all powered by a wimpy toy-language with no static types or SAT-solving compilers…

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

BLUEPRINTS https://blueprints.launchpad.net/nova

Slide 14

Slide 14 text

DEVSTACK http://docs.openstack.org/developer/devstack/

Slide 15

Slide 15 text

CODE REVIEW https://review.openstack.org

Slide 16

Slide 16 text

CODE REVIEW https://review.openstack.org

Slide 17

Slide 17 text

CONTINUOUS INTEGRATION

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

THANK YOU