Java grafieken voor Opendata


Diskotech - Dropbox

Jan Marco, jij had je twijfels bij het besluit van MaidSafe om voor het SAFE Network over te stappen op de programmeertaal Rust.

Kan het niet laten om speciaal voor jou eventjes melding te maken van ontwikkelaars bij een ander bedrijf die voor het beheer van hun opslagsysteem ook voor Rust gekozen blijken te hebben ;o)

Dropbox - voor mensen die hun kattenfilmpjes ergens moeten laten - stond ook voor het dilemma, welke programmeertaal gaan we nu inzetten:

The Epic Story of Dropbox’s Exodus From the Amazon Cloud Empire

If you’re one of 500 million people who use Dropbox, it’s just a folder on your computer desktop that lets you easily store files on the Internet, send them to others, and synchronize them across your laptop, phone, and tablet. You use this folder, then you forget it. And that’s by design. Peer behind that folder, however, and you’ll discover an epic feat of engineering. Dropbox runs atop a sweeping network of machines whose evolution epitomizes the forces that have transformed the heart of the Internet over the past decade.

De afgelopen acht jaar als onderhuurder van Amazon:

But not anymore. Over the last two-and-a-half years, Dropbox built its own vast computer network and shifted its service onto a new breed of machines designed by its own engineers, all orchestrated by a software system built by its own programmers with a brand new programming language.

Dropbox was altijd een ‘golang shop’:

Originally built using a new programming language from Google called Go. Here too, Dropbox is riding a much larger trend, languages designed specifically for the new world of massively distributed online systems. Apple has one called Swift, Mozilla makes one called Rust, and there’s an independent one called D. All these languages let coders build software quickly that runs quickly—even executed across hundreds or thousands of machines.

Maar voor het ‘Magic Pocket’ systeem op de nieuw ontworpen ‘Diskotech’ machines overgestapt op Rust:

But Go’s “memory footprint”—the amount of computer memory it demands while running Magic Pocket—was too high for the massive storage systems the company was trying to build. Dropbox needed a language that would take up less space in memory, because so much memory would be filled with all those files streaming onto the machine. So, in the middle of this two-and-half-year project, they switched to Rust on the Diskotech machines. And that’s what Dropbox is now pushing into its data centers.

Wired - Business - 03.14.16

‘In the middle of this two-and-half-year project’ … Net als bij zwanger worden even terugrekenen, kwamen MaidSafe en Dropbox min of meer tegelijkertijd tot de slotsom dat het Rust moest worden.

Inmiddels allemaal gelukt dus kan een van de betrokkenen bij Dropbox wat relaxter achteroverleunen:

Are you happy using rust ?

Yes, overall the team has been very pleased with it. Compile times are the only serious complaint.

Will you use rust for other projects ?

Yes, we have our rust “Dropbox standard library” in reasonably good shape at this point, so creating more services at Dropbox in Rust is pretty easy now. If we have another really performance sensitive project come up, I imagine we’ll be using it–although the final decision is always up to the Tech Lead of the particular project, so there’s no single definitive answer I, personally, can give to that question.

How many lines of rust code are you using in production ?

About 60k of our own, about 300k incl crates.

Are you going to hire rust developers ?

Yes, we’re talking to a few members of the community. But, in general, Dropbox hires good developers more than $lang developers. Different projects demand different things, so we wouldn’t hire someone that said “I only write $lang”.

Hacker News - Mar 14, 2016