NGINX-i edu ajalugu vÔi "KÔik on vÔimalik, proovi!"

NGINX-i edu ajalugu vÔi "KÔik on vÔimalik, proovi!"

Igor Sysoev, veebi serveri arendaja nginx, suurte pereliikmete seas HighLoad++, ei seisnud lihtsalt meie konverentsi alguses. Ma nĂ€en Igorit kui oma professionaalset Ă”petajat, meistrit, kes Ă”petas mind töötama ja mĂ”istma kĂ”rgelt koormatud sĂŒsteeme, mis mÀÀras minu ametialase karjÀÀri kĂŒmneks aastaks.

Loomulikult ei saanud ma mööda minna valgustavast edust NGINX-i meeskonnas
 Ja ma tegin intervjuu, kuid mitte Igoriga (ta on endiselt introvertne programmeerija), vaid investeeringute fondi Runa Capital, kes kĂŒmme aastat tagasi mĂ€rkas NGINX-i, ehitas tema ĂŒmber Ă€ristruktuuri ja praegu tegeleb tehinguga, mis on Venemaa turul suuruse poolest pretsedenti loov.

Artikli eesmĂ€rk allpool on veel kord kinnitada – kĂ”ik on vĂ”imalik! Proovi!

HighLoad++ Programmikomitee juht Oleg Đ‘ŃƒĐœĐœĐžĐœ: Palju Ă”nne Ă”nnestunud tehingu puhul! Nii palju kui ma saan hinnata, on teil Ă”nnestunud sĂ€ilitada ja toetada Igori soovimist jĂ€tkata programmeerijana ning samal ajal luua tema ĂŒmber terve Ă€ristruktuur – see on iga arendaja unistus. Nii pole?

Minu kaastöötaja, Runa Capitali juhtivpartner Dmitri ЧОхачДĐČ: See on tĂ”si. Suur osa sellest on Igor ja tema kaasasutajate Maksimi ja Andrei (Maksim ĐšĐŸĐœĐŸĐČĐ°Đ»ĐŸĐČ ja Andrei АлДĐșсДДĐČ) enda teenus, kuna nad olid esialgu valmis, et see struktuur ehitatakse nende ĂŒmber. KĂ”ik idufirmade juhid ei hindavad oma tugevusi ja vĂ”imalusi nii adekvaatselt. Paljud soovivad juhtida vĂ”i juhtida kogu protsessi.

– Kas NGINX-i meeskond eemaldas end Ă€riosast vĂ”i kuidas?

Dmitri: Ei, nad ei eemaldu Ă€riosast, miks kĂŒll? Maksim juhtis operatiivset osa tegevusdirektorina. Andrei tegeles BizDev'iga, Igor jĂ€tkas arendamist – sellega, mis talle meeldib.

IgaĂŒks tegi seda, milles ta on tugev ja mis talle meeldib.

Aga nad kĂ”ik mĂ”istsid, et mitme miljoni dollari suuruse Ă€ri ĂŒlesehitamiseks Ameerikas on vajalik teistsuguse tasemega, teistsuguse taustaga inimene. SeetĂ”ttu oli juba esimeses lĂ€birÀÀkimiste voorus leping investoritega, et selline inimene leitakse. Selleks sai Gus Robertson, kes vastas kĂ”igile nende kriteeriumidele.

— Ehk algselt plaaniti siseneda Ameerika turule?

Dmitri: NGINX on b2b-Ă€ri. Kuid see ei ole kasutajatele eriti tuntud, kuna see töötab infrastruktuuri tasandil, vĂ”iks öelda, et middleware. Peamine b2b turg on Ameerika Ühendriigid, kus asub 40% maailma turust.

Edu Ameerika turul mÀÀrab iga idufirma edusamme.

SeetĂ”ttu on mĂ”istlik plaan: minna USA-sse, palgata kohe inimene, kes juhib Ameerika ettevĂ”tet, arendab Ă€ri ja toob ligi Ameerika investoreid. Kui soovite USA-s mĂŒĂŒa infrastruktuuri tarkvara, on oluline, et teil oleks toetuseks ka Ameerika investorid.

— Kes kelle juurde tuli: teie nginx-i juurde, nginx teie juurde?

Dmitri: Meil oli palju erinevaid kontaktpunktide. VÔib-olla olime nÀidanud suuremat initsiatiivi, kuna juba siis oli nginx silmatorkav. Kuigi ta ei olnud veel ettevÔte ja turuosa oli suhteliselt vÀike (6%), oli investorite huvi juba suur. Tehing oli konkurentsitihe, seega nÀitasime me loomulikult aktiivsust.

— Millises seisus toode oli? EttevĂ”tet polnud, kuid kas oli olemas mustand kommerts enterprise-versioonist?

Dmitri: Oli nginx avatud koodiga veebiserver. Sellel oli kasutajaid — 6% maailma turust. Tegelikult on see miljoneid, isegi kĂŒmneid miljonite veebisaite. Kuid ettevĂ”tet ei olnud, mingit Ă€rimudelit ei olnud. Ja kuna ettevĂ”tet ei olnud, ei olnud ka meeskonda: oli Igor Sysoev — nginx-i arendaja ja vĂ€ike kogukond selle ĂŒmber.

See on vĂ€ga huvitav lugu. Igor hakkas nginx-i kirjutama juba ammu — aastal 2002 ja vabastas selle 2004. aastal. TĂ”eliselt huvi tekkis selle vastu alles 2008. aastal, 2011. aastal tĂ”i ta raha sisse. Harva mĂ”tlevad inimesed, miks kulus nii kaua aega. Tegelikult on sellele loogiline tehniline selgitus.

Aastal 2002 töötas Igor Rambleris ja tal oli probleem, mida ta sĂŒsteemiadministraatorina lahendas — nn C10k probleem, st serveri tagamine rohkem kui kĂŒmne tuhande samade pĂ€ringute korral tipukoormuse ajal. See probleem tekkis siis, kui suured koormused internetis alles tekkisid. Sellesse sattusid ainult ĂŒksikud saidid — nagu Rambler, Yandex, Mail.ru. Enamikule veebisaitidele ei olnud see relevantne. Kui pĂ€evas on 100-200 pĂ€ringut, ei ole mingit vajadust nginx-i jĂ€rele, Apache toimetab suurepĂ€raselt.

Aja, kui internet muutus ĂŒha populaarsemaks, kasvas ka veebilehtede arv, mis seisis silmitsi C10k probleemiga. Üha rohkematele veebilehtedele osutus vajalikuks kiirem veebiserver, et töötelda pĂ€ringuid - nagu nginx.

Kuid tÔeline koormuse plahvatus toimus aastatel 2008-2010, mil tulid nutitelefonid.

On lihtne ette kujutada, kui kiiresti suurenes serverite pÀringute arv. Esiteks, interneti kasutamise aeg kasvas, kuna linkidele sai klÔpsata igal pool ja igal ajal, mitte ainult arvuti taga istudes. Teiseks, muutus ka kasutajate kÀitumine - puuteekraaniga said linkide vahel liikumine juhuslikumaks. Siia vÔib lisada ka sotsiaalmeedia.

See viis selleni, et tipukoormused internetis hakkasid eksponentsiaalselt kasvama.. Üldine koormus kasvas enam-vĂ€hem ĂŒhtlaselt, aga tipud hakkasid olema jĂ€rjest tuntavamad. TĂ”desime, et C10k probleem oli muutunud universaalseks. Sel hetkel tĂ”usis nginx tĂ”eliselt Ă”hku.

NGINX-i edu ajalugu vÔi "KÔik on vÔimalik, proovi!"

- RÀÀgi, kuidas sĂŒndmused pĂ€rast kohtumist Igoriga ja tema meeskonnaga arenesid? Millal hakati töötama infrastruktuuri ja Ă€rimudelite kallal?

Dmitri: Esialgu kehtestati tehing. Olen juba maininud, et tehing oli konkurentsivĂ”imeline ja lĂ”ppkokkuvĂ”ttes moodustus investorite sĂŒndikaat. Meist sai osa sellest sĂŒndikaadist koos BV Capitaliga (praegu e.ventures) ja Michael Delliga. Esiteks sulgesime tehingu ja seejĂ€rel mĂ”tlesime, kuidas leida Ameerika CEO.

Ja kuidas te tehingu lÔpetasite? Tundub, et te isegi ei teadnud, milline Àrimudel on ja millal see kasumlikuks osutub? Lihtsalt investeerisite meeskonda, suurepÀrasesse tootesse?

Dmitri: Jah, see oli puhas seemnete investeering. Me ei mÔelnud tol hetkel Àrimudelile.

Meie investeerimisargument pÔhines sellel, et NGINX on ainulaadne toode, mille publik kasvab kiiresti.

See lahendas selle publiku jaoks piisavalt tÔsise probleemi. Mul on lemmiktest, lakmusepaber igasuguste investeeringute jaoks - kas toode lahendab massilist ja valusat probleemi. NGINX lÀbis selle crash-testi hÔlpsalt: probleem oli massiline, koormused kasvasid, veebilehed kukkusid kokku. Ja see oli valus, kuna algas aeg, mil veebileht muutus kriitilise tÀhtsusega.

90-ndatel arutleti inimesed nii: veebileht on olemas — praegu helistan sĂŒsteemihaldurile, tunni aega ja nad tĂ”stavad selle ĂŒles — kĂ”ik on korras. 2000. aastate lĂ”puks muutus viieminutiline töökatkestus paljudele ettevĂ”tetele reaalselt kadunud rahaga, maine ja nii edasi vĂ”rdsuseks. See, et probleem oli valulik, on ĂŒks kĂŒlg.

Teine kĂŒlg, millele me investoritena vaatame, on meeskonna kvaliteet. Siin olime Igorist ja tema kaasasutajatest muljet avaldanud. See oli ĂŒkste complementing kogemus ja ainulaadne toode, mille töötas vĂ€lja ĂŒks inimene.

— Selge, oma rolli mĂ€ngis ka meeskond, kellel olid teatud oskused, mis tĂ€iendavad ĂŒksteist.

Dmitri: Minu arvates on Ă”ige, et Igor arendas toote ĂŒksi, kuid kui jĂ”udis kĂ€tte Ă€rimudeli loomise aeg, siis ei tormanud ta sinna ĂŒksi, vaid koos partneritega. Vaadates 10 aastat investeerimiskogemust, vĂ”in öelda, et kahe kaasasutaja olemasolu vĂ€hendab kindlasti riske. Optimaalne kaasasutajate arv on kaks vĂ”i kolm. Üks — see on vĂ€ga vĂ€he, aga neli — juba liiga palju.

— Ja mis siis edasi? Kui tehing oli juba tehtud, aga Ă€riplaan oli veel vĂ€ljatöötamata.

Dmitri: Tehing sĂ”lmitakse, registreeritakse ettevĂ”te, allkirjastatakse dokumendid, kantakse raha ĂŒle — kĂ”ik, jookseme edasi. Samal ajal töötades Ă€ripooles, palkasime arendajate meeskonna, kes hakkas tootega tegelema. Andrei Aleksejev BizDev-mĂ”istes ehitas esimesed suhted potentsiaalsete klientidega, et koguda tagasisidet. KĂ”ik koos mĂ”tlesime Ă€rimudelile ja otsisime koos tippjuhit, kes viiks Ameerika Ă€ri edasi ja juhiks ettevĂ”tet sisuliselt.

— Kuidas te ta leidsite? Kus? Ma ei kujuta isegi ette, kuidas seda teha.

Dmitri: KĂ”ik investorid ja nĂ”ukogu tegelesid sellega. LĂ”puks langes valik Gas Robertsoni kasuks. Gas töötas Red Hat'is, mille tippjuht oli meie investor. KĂŒsisime Red Hat'ilt, kuna see on avatud lĂ€htekood, ĂŒtlesime, et otsime inimest, kes suudab Ă€ri juhtida ja seda miljardiks kasvatada. Nad soovitasid Gas'i.

Tehing NGINX-iga suleti 2011. aastal ja 2012. aastal kohtusime juba Gas'iga ning ta meeldis meile kohe vĂ€ga. Tal oli avatud lĂ€htekoodi taust Red Hat'ist — sel ajal oli see ainus ettevĂ”te, mille kapitaliseerimine ulatus mitme miljardi dollarini avatud lĂ€htekoodiga. Pealegi tegeles Gas just Ă€ri arendamise ja mĂŒĂŒgiga — just see, mida oli vaja!

Lisaks taustale ja kogemusele meeldisid meile tema isikuomadused — ta on arukas ja taiplik inimene, kellel on kiire mĂ”istus ning mis peamine, tundus, et tal on hea kultuuriline sobivus tiimiga. Nii tĂ”esti ka lĂ€ks. Kui nad tuttavaks said, selgus, et kĂ”ik olid ĂŒhel lainel, kĂ”ik olid suurepĂ€rastes suhetes.

Me esitasime Gasule ettepaneku ja 2012. aasta lĂ”puks hakkas ta tööle. Gasa pakkus ka NGINXisse oma raha investeerimist. See jĂ€ttis kĂ”igile investoritele mulje. TĂ€nu Gasa kĂ”rgele kaasamisele sulandus ta asutajate tiimi ja teda peeti kĂ”igi seas osanustajaks. Edaspidi oli ta ĂŒks neljast. On tuntud foto, kus kĂ”ik neli on NGINX-i sĂ€rkides.

NGINX-i edu ajalugu vÔi "KÔik on vÔimalik, proovi!"
Foto on pÀrit mÀrkmed Dmitri Chikhachevi poolt NGINX-i ja Runa Capitali koostöö ajaloost.

— Kas esimesel katses Ă”nnestus Ă€rimudel leidmine, vĂ”i see muutus hiljem?

Dmitri: Ärimudel Ă”nnestus kohe leida, kuid enne seda arutasime mĂ”nda aega, kuidas ja mida. Kuid peamine arutelu kĂ€is selle ĂŒle, kas jĂ€tkata avatud koodiga projekti toetamist, jĂ€tta nginx tasuta, vĂ”i hakata jĂ€rk-jĂ€rgult kĂ”igilt tasu kĂŒsima.

Otsustasime, et on Ă”ige kasutada nginxit ĂŒmbritseva kogukonna jĂ”udu, mitte neid pettuma jĂ€tta ja avatud koodiga projekti toetamisest loobuda.

SeetĂ”ttu otsustasime jĂ€tta nginx avatud lĂ€htekoodiga, kuid luua lisaks spetsiaalse toote, mis sai nimeks NGINX Plus. See on Ă€riklientidele litsentseeritud kaubanduslik toode, mis pĂ”hineb nginxil. NĂŒĂŒd on NGINXi peamine Ă€ri NGINX Plusi litsentside mĂŒĂŒk.

Peamised erinevused avatud ja tasulise versiooni vahel on:

  • NGINX Plus sisaldab lisafunktsionaalsust ettevĂ”tetele, eelkĂ”ige — koormuse tasakaalustamine.
  • Erinevalt avatud lĂ€htekoodi tootest on kasutajatoe tugi.
  • Selle tootega on lihtsam tegeleda. See ei ole ehituskonstruktor, mille tuleb ise kokku panna, vaid valmis binaarne pakett, mille saab oma infrastruktuuris juurutada.

— Kuidas interakteeruvad avatud lĂ€htekood ja kaubanduslik toode? Kas mĂ”ni funktsioon kaubanduslikust tootest voolab avatud lĂ€htekoodi?

Dmitri: Avaible allika toode areneb paralleelselt kommertsversiooniga. Mingi funktsionaalsus lisandub ainult kommertsversioonile, osa aga nii sinna kui ka tĂ€nna. Kuid sĂŒsteemi tuum on ilmselgelt sama.

Oluline punkt on see, et nginx on iseenesest vĂ€ga vĂ€ike toode. Minu teada on seal umbes 200 000 koodiread. Ülesanne oli arendada tĂ€iendavaid tooteid. Kuid see juhtus pĂ€rast jĂ€rgmist investeerimisringi, mil kĂ€ivitati mitu uut toodet: NGINX Amplify (2014-2015), NGINX Controller (2016) ja NGINX Unit (2017-2018). Tooteportfell ettevĂ”tetele laienes.

— Kui kiiresti sai selgeks, et olete mudeliga Ă”igesti pihta saanud? Kas jĂ”udsite kasumisse vĂ”i sai selgeks, et Ă€ri kasvab ja toob raha sisse?

Dmitri: Esimene aasta, mil mĂŒĂŒgitulu oli 2014, siis teenisime enda esimese miljoni dollari. Sel hetkel oli selge, et on nĂ”udlus, kuid mĂŒĂŒgipoolest ei olnud veel tĂ€ielikult selge, kui palju mudel suudab skaleeruda.

Kaks aastat hiljem, 2016-2017, teadsime juba, et majandus on hea: kliendikĂ€ive on vĂ€ike, esineb up-sell vĂ”imalusi ning kliendid, kes hakkavad NGINX-i kasutama, ostavad seda aina rohkem. Siis sai selgeks, et seda saab veel edasi skaleerida. See tĂ”i endaga kaasa ka lisainvesteeringud, mis suunati mĂŒĂŒgiorganisatsiooni skaleerimisele, uute töövĂ”tjate palkamisele USA-s ja teistes riikides. Praegu on NGINX-il mĂŒĂŒgibĂŒrood Ameerikas, Euroopas, Aasias — ĂŒle kogu maailma.

— Kas NGINX on nĂŒĂŒd suur ettevĂ”te?

Dmitri: Juba umbes 200 inimest.

— Peamiselt on seal ilmselt mĂŒĂŒk ja tugi?

Dmitri: Arendamine on endiselt ĂŒsna suur osa ettevĂ”ttest. Kuid mĂŒĂŒk ja turundus on samuti oluline osa.

— Kas arendustööd teevad peamiselt Venemaa poisid, kes Moskvas töötavad?

Dmitri: Arendustööd toimuvad nĂŒĂŒd juba kolmes keskuses — Moskvas, Californias ja Iirimaal. Kuid Igor veedab endiselt suurema osa ajast Moskvas, kĂ€ib tööl, programmeerib.

Oleme jĂ€lginud kogu teekonda: algus 2002, 2004 nginx-i vĂ€ljaandmine, kasv 2008-2009, 2010 investoreid tutvumine, 2013 esimesed mĂŒĂŒgitehingud, 2014 esimene miljon dollarit. Aga mis on 2019? Edu?

Dmitri: 2019 — hea vĂ€ljumine.

— Kas see on tavaline tsĂŒkkel ettevĂ”tte jaoks ajaliselt vĂ”i erand reeglist?

Dmitri: See, this is a completely normal timeframe — depending on what you're measuring from. When Igor was writing nginx — I didn't mention that backstory for nothing — nginx wasn't a mainstream product. Then, in 2008-2009, the internet changed, and nginx became very in demand.

If we measure from 2009-2010, then a 10-year cycle is perfectly normal, considering that this was essentially the moment when the product started to gain traction. If we count from the 2011 round, then 8 years since the first seed investments is also a reasonable timeframe.

— What can we discuss now, to wrap up the topic on NGINX, about F5, about their plans — what will happen with NGINX?

Dmitri: I don't know — that's F5's corporate secret. The only thing I can add is that if you now Google "F5 NGINX", the first ten links will be news about F5 acquiring NGINX. Two weeks ago, the same query would have returned ten links on how to migrate from F5 to NGINX.

— They haven't killed their competitor!

Dmitri: Why would they? The press release generally states what they plan to do.

— The press release sounds good: we won't touch anyone, everything will grow as before.

Dmitri: I think these companies have a very good cultural match. In this sense, they both indeed operate in the same segment — networking and loads. Therefore everything will be fine.

— Last question: I’m a brilliant programmer, what should I do to replicate that success?

Dmitri: To replicate Igor Sysuyev's success, you first need to come up with a problem to solve because code only earns money when it addresses a widespread and painful issue.

— And then to you? And you'll help from there.

Dmitri: Yes, gladly.

NGINX-i edu ajalugu vÔi "KÔik on vÔimalik, proovi!"

Thank you very much to Dmitry for the interview. We will soon meet again with the Runa Capital fund at Saint HighLoad++. In a place that, now we can confidently say, gathers the best developers not just from Russia, but from all over the world. Who knows, perhaps in a few years, we will all be passionately discussing the success of one of you. Moreover, it’s now clear where to start — by finding a solution to an important problem!

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster