Fógraí clib: cód

Ríomhaireacht Eangach Oifig ag baint úsáide as timpeallachtaí Fíorúil - Cuid 4

Ag , Dé hAoine 4 Nollaig, 2009 11:59

Réamhrá

Tá mé ag obair i gcuideachta a áit a reáchtáil againn go leor poist baisce a phróiseáil na milliúin ar thaifid sonraí gach lá agus mé ag smaoineamh le déanaí faoi na meaisíní go suí thart agus gach lá ag déanamh aon rud le haghaidh roinnt uaireanta. Ní bheadh ​​sé go maith dá mbeadh muid úsáid as na meaisíní a threisiú an chumhacht a phróiseáil ar ár gcórais? Sa tsraith airteagal mé ag dul chun breathnú ar na tairbhí féideartha a fhostú oifig greille úsáid a bhaint as timpeallachtaí virtualised.

Sa chuid 3 cruthaithe againn ár n-inneall próiseála fíorúil agus arna chur ar bun meaisíní fuinneoga a bheith díomhaoin-am oibrithe.

Rith an cód is déanaí

Dosheachanta tar éis a chruthú do loighic gnó oibrithe Beidh athrú, beidh bugs a fháil, beidh cód níos tapúla níos éifeachtaí a thabhairt ar aird dá bhrí sin ag fágáil do oibrithe shuigh ar fud próiseáil sonraí ag baint úsáide as cód smelly d'aois . Conas is ansin is féidir linn a chinntiú go bhfuil muid ag baint úsáide as i gcónaí ar an leagan is déanaí agus is mó ar ár scripteanna a phróiseáil?

Tá roinnt bealaí an-éasca simplí gur féidir linn é seo a dhéanamh, an cleas, áfach, a laghdú cumhachta próiseála agus tráchta líonra seo a bhaint amach. Lets tús a chur leis an simplí ar réitigh agus é a fheabhsú go mall thar cúpla iterations.

Ba mhaith leis an modh chéad chun ceangal ach ar ár bhfreastalaí rialú post (via samba, FTP, nó a leithéid) agus tarraingt an leagan is déanaí den chód síos. Níl sé an-éifeachtach, ach beidh sé an jab a dhéanamh. Lets feabhas a chur ar an beagán, conas mar gheall ar a chruthú agus a úsáid go script rsync gach uair in ionad? Nó céard faoi a chur ar ár script is déanaí phróiseáil i Subversion seiceáil amach an cód ar dtús agus ansin ach thabhairt cothrom le dáta ár gcód ar gach reáchtáil ( SVN suas chun dáta )?

Sa deireadh d'fhéadfadh muid suas go deireadh le script bash (ar a dtugtar ag cron gach 10 nóiméad) a bhreathnaíonn chomh simplí agus is é seo:

  #! / Bin / sh
 má ps tua | grep-v grep | grep php > / dev / null
 ansin
     macalla "Tá Poist a phróiseáil faoi láthair, scoir"
 eile
     echo "Ní Poist ag rith, ag tosú anois"
     cd / cosán / a / ag obair / cóip
     SVN cothrom le dáta
     php yourJobProcessingScript.php
 fi 

Anois is féidir linn a bheith cinnte go bhfuil gach reáchtáil tá muid ag rith cinnte an cód is déanaí. Táimid ag cinntiú seo cothrom le dáta ag ár mbonn cód am gach uile a dhéanamh dúinn a reáchtáil agus a laghdú tráchta líonra ag aistriú ach amháin leis na difríochtaí comhad ar fud ár líonra.

I mo thus taispeántais, rinne mé díreach mar atá thuas. Suiteáladh freastalaí Subversion ar mo phost a phróiseáil agus tharraing mé ach an cód is déanaí ó bhrainse 'oibrí' ag baint úsáide as 'SVN cothrom le dáta'. Chuir mé chomh maith le roinnt tag leagan ar mo script próiseáil ar ais chuig an bunachar sonraí mar chuid den tuairisceán torthaí. Sa chaoi seo is féidir liom a fheiceáil go bhfuil mo cód bhí á thabhairt suas chun dáta gach uair a chóipeáil mé mo trunk isteach ie brainse oibrí go raibh mé ag rith cinnte an script a phróiseáil is déanaí.

Ag baint úsáide as na sonraí is déanaí

Má dhéanann próiseáil ar do phost a úsáid foinsí sonraí ansin ag pointe éigin ag dul go dtí seo cothrom le dáta freisin. Mura ghlaonn tú ar do fhoinsí sonraí ar bhonn an-neamhrialta bhfuil tú ag dul a tuile do líonra le trácht chomh luath agus is tús le do oibrithe a reáchtáil gach rud a thabhairt ar standstill. Do mo réiteach chinn mé gur mhaith liom bogadh mo foinsí sonraí ar fud le mo VMS.

Coinnigh tú capaill ann! Cad a tharlaíonn má tá mo foinsí sonraí ollmhór? Bhuel tá sé seo i ndáiríre ar chás an méid sonraí ag caint againn? D'fhéadfadh sé a bheith níos éifeachtaí ó thaobh costais a shuiteáil tiomáint crua breise níos mó i gach meaisín ná mar a cheannach freastalaí próiseála breise. Is é seo an cheist maidir le buiséad agus tá suas go dtí an gnó a chinneadh. Tá sé b'fhéidir go bhfuil do foinsí sonraí chomh mór a díreach unfeasible a choinneáil ar an méid sin de na sonraí i do mheaisíní oibrí. Sa chás sin, cad a dhéanfá? Bhuel féidir linn breathnú ar glaoch ar fhreastalaí sonraí áitiúil, ach d'fhéadfadh sé seo ceisteanna leis an líonra faoi deara. Sa chás seo, d'fhéadfadh córas eangaí mar seo a bheith réalaíoch a chur san áireamh i do dtimpeallacht oifige. B'fhéidir go mbeadh sé chomh maith gur féidir leat breathnú ar straitéisí malartacha a reáchtáil, mar shampla, ach glaoch ar d'oibrithe 20:00-06:00 gach oíche agus / nó iarratais ar shonraí throttling foinse.

Bogadh ar ligeann rá ár bhfoinsí sonraí méid a 100Gb na sonraí. Bhuel tá Tá go leor le beagán de shonraí a bhogadh ar fud an líonra ar cothrom le dáta. Conas a bheadh ​​againn a chinntiú go bhfuil muid ar an chóip is déanaí de na sonraí sa chás seo? Is Rsync an deis ann, ach go pearsanta Measaim go bhféadfadh ag reáchtáil do is déanaí foinse sonraí ar do fhreastalaí a phróiseáil agus a leagan phost seo suas mar mháistir i macasamhlú (le logáil araid deas fada) a bheith ar an mbealach le dul:

macasamhlú Faoi shocrú gach ceann de do oibrithe suas mar sclábhaí leis na nuashonruithe post freastalaí a rialú le do foinsí sonraí trickle síos nicely le do oibrithe gan méadú ollmhór i ngníomhaíocht líonra (is é sin mura gcomhlíonfaidh tú ollmhór sonraí a thabhairt cothrom le dáta agus go léir do oibrithe tús i ag an am céanna). Tá sé seo buntáistí rsync i nach mbeadh tú sos fada faoi bhráid gach post; mar an bunachar sonraí cothrom le dáta, an MySQL beidh deamhan ar do oibrí nuashonrú leanúnach ar a sonraí ar fad a leanann an phróiseáil.

Seo é an chaoi a leagtar mé suas mo freastalaí taispeántais. A chur ar bun macasamhlú lean mé an treoir ar an suíomh MySQL ( Bunú macasamhlú ) agus laistigh de 20 nóiméad bhí mé mo oibrí inital replicating an post a rialú freastalaithe tacar sonraí. I gcás gach oibrí breise a d'oibrigh an suímh macasamhlú agus próiseas gach uair nuair a bhí a chóipeáil an VM.

Achoimre

San alt seo ar an earra ní mór dúinn a d'fhéach sé ar cé chomh héasca agus tá sé painless a choimeád do chód phróiseáil suas chun dáta le using rsync nó subverion (SVN) a dhéanamh ar an obair agus tráchta líonra a laghdú ag an time. céanna Phléigh muid freisin conas a a choinneáil ar do chuid faisnéise fhoinse sonraí cothrom le dáta trí ligean dó a trickle síos do gach ceann de do oibrithe. Dá bhrí sin againn limistéar a chinntiú go muid a choinneáil suas le loighic gnó agus eolas inár gcóras eangaí oifig. Beidh a bheith ann ar ndóigh roghanna eile countless chun comhlíonadh na tascanna seo, ach anseo bhí dhá shampla simplí chun a thaispeáint conas éasca é a réiteach le teacht ag.

An chéad uair eile

Sa chuid deiridh den tsraith seo, aptly ainmnithe Cuid 5 , beidh muid ag plé a dhéanamh ar an gcóras seo le haghaidh imscaradh. Feicfidh mé achoimre a dhéanamh ar an méid atá foghlamtha agus cad éirigh liom a chruthú.













Téama Panorama ag Themocracy

5 cuairteoirí ar líne anois
4 aíonna, 1 bots, 0 baill
Tá 22 ag 07:35 UTC: Max cuairteoirí an lae inniu
An mhí seo: 26 ag 2012/04/04 10:27 UTC
I mbliana: Tá 69 ar 27-02-2012 09:56 UTC
Gach am: 130 ag 28-03-2011 10:40 UTC