Kategorija: Kompjuter

prokura Apache ma diġestiva awtentikazzjoni

Permezz Watkin Lloyd Steven , Marzu Ħadd 27 2011 12:57

Dan il-post se malajr juruk kif stabbilit proxying ma 'awtentikazzjoni bażika bl-użu apache .

Fil-każ tiegħi jien ridt li jkollhom trasmissjoni bit torrent klijent disponibbli fuq l-internet hekk I jistgħu jiċċekkjaw dwar il-adminster torrent downloads u l-istat (bħall-rilaxx Fedora aktar tard) kif meħtieġ. Trażmissjoni nnifisha tmur klijent web tiegħu fuq il-port 9091 mill-kontumaċja. Pjuttost milli jolqot ftuħ portijiet aktar fuq firewall tiegħi u żżid l-twassil tal-port regoli nessecary I iddeċieda I'd biss prokura-sejħiet permezz ta 'trasmissjoni permezz apache jużaw mod_proxy .

Kompli qari "prokura Apache ma jiddiġerixxu awtentikazzjoni" »

Qafas Zend: tirrendi Jekk jeżisti

Permezz Watkin Lloyd Steven , 12 Diċembru 2010 il-Ħadd 16:19

Sommarju

Dan huwa post ta 'malajr biex jiddiskutu l-opinjoni helper sempliċi pjuttost I maħluqa għall tirrendi Zend Qafas stil ħsieb fajl biss jekk dan jeżisti. Ġeneralment titlob l-kodiċi li tirrendi fajl li ma teżistix se tarmi eċċezzjoni. Għalhekk I maħluqa 'ppakkjar għall-Zend_View:: jirrendu () metodu li ddeterminat jekk il-fajl jeżisti u jekk iva tirrendi, inkella sempliċiment prospetti string vojta.
Kompli qari "Zend Qafas: jirrendi Jekk jeżisti" »

Zend Inġinier Certified (ZCE) 5.3

Permezz Watkin Lloyd Steven 30 Settembru 2010 il-Ħamis 21:00

Bl- rilaxx uffiċjali tal-Zend Certified Inġinier (ZCE) programm għall-5.3 ħsibt I'd jagħtu impressjoni malajr tiegħi ta 'dak li ħsibt' l-eżami.

A ftit sfond dwar myself: I-ewwel ġie introdott biex PHP madwar 7 snin ilu u ħadmu professjonalment fil-PHP mill-2006. I bħalissa jaħdmu għal eċċitanti start-up imsejħa Brightpearl ibbażat Bristol, UK , produzzjoni CRM integrati, il-kontabilità, u softwer eCommerce. I qabel ma kinitx kisbet xi waħda mill-kwalifiki ZCE preċedenti. I bħalissa tiżviluppa fis-serje 5.2.X u ma jkunux verament użati kwalunkwe mill-karatteristiċi speċifiċi 5.3 (I'm stennija għall Zend Qafas 2 u Duttrina 2) fil-proġetti ta 'żvilupp tiegħi.
Kompli qari "Zend Certified Inġinier (ZCE) 5.3" »

Qafas Zend Per Settings Layout Modulu - Follow Up

Permezz Watkin Lloyd Steven , Frar Tlieta 16 2010 20:48

Bħala segwitu għall-post preċedenti tiegħi dwar kull bbażati settings tqassim modulu għall Zend Qafas , stajt Aġġornata l-kodiċi li jeħtieġu konfigurazzjoni inqas minn qabel (mhux li hija meħtieġa aktar li ftit linji fil-konfigurazzjoni l-applikazzjoni tiegħek!).
Kompli qari "Zend Qafas Per Modulu Layout Settings - Follow Up" »

Uffiċċju Grid Kompjuter li jużaw l-ambjenti virtwali - Parti 4

Permezz Watkin Lloyd Steven , 4 Diċembru ġimgħa 2,009 11:59

Introduzzjoni

I xogħol fil-kumpanija fejn we run lott ħafna impjiegi ipproċessar miljuni ta 'rekords ta' data kull jum u stajt kienu jaħsbu reċentement dwar l-magni li tiltaqa madwar kull jum li ma jsir xejn għal bosta sigħat. Ma Ikun tajjeb jekk aħna jistgħu jużaw dawk il-magni li jsaħħu l-qawwa l-ipproċessar tas-sistemi tagħna? F'dan is-sett ta 'oġġetti jien ser tħares lejn il-benefiċċji potenzjali għall-impjieg ta' uffiċċju grilja li jużaw ambjenti virtualised.

Fil -parti 3 ħloqna virtwali magna li tipproċessa tagħna u mwaqqfa magni twieqi li jsiru-time idle.

Jmexxu l-aħħar kodiċi

Inevitabbilment wara l-ħolqien ħaddiema loġika tan-negozju tiegħek se tinbidel, bugs se jkun jinstab, aktar effiċjenti kodiċi aktar mgħaġġla se jiġu prodotti b'hekk tħalli lill-ħaddiema tiegħek sib madwar ipproċessar ta 'data bl-użu kodiċi smelly qodma . Kif mela irridu nassiguraw li qed dejjem jużaw id-aħħar verżjoni u l-akbar ta 'skripts ipproċessar tagħna?

Hemm ftit modi faċli ħafna sempliċi stajna nagħmlu dan, l-trick, madankollu, huwa li tnaqqas l-qawwa ipproċessar u traffiku tan-network biex jinkiseb dan. Tikri tibda bil-aktar sempliċi ta 'soluzzjonijiet u titjieb bil-mod fuq ftit iterazzjonijiet.

L-ewwel metodu għandu jkun li sempliċement konnessjoni ma 'server tagħna kontroll tax-xogħol (permezz samba, FTP, jew simili) u iġbed l-aħħar verżjoni tal-kodiċi. Mhux effiċjenti ħafna, iżda se jagħmlu l-impjieg. Tikri ttejjeb fuq li xi ftit, kif dwar il-ħolqien iskrittura rsync u l-użu li kull darba li minflok? Alternattivament dak dwar it-tqegħid ipproċessar tagħna iskrittura tard fis sovverżjoni tiċċekkja l-kodiċi inizjalment u mbagħad biss aġġornament kodiċi tagħna fuq kull run ( aġġornament SVN )?

Fl-aħħar nistgħu tispiċċa bil-iskrittura bash (msejjħa mill Cron kull 10 minuti) li jagħti ħarsa sempliċi kemm dan:

  #! / Bin / sh
 jekk ps mannara | grep vs grep | grep php > / DEV / null
 imbagħad
     eku "Job bħalissa hija l-ipproċessar, ħruġ"
 inkella
     eku "Job ma tkunx qed taħdem, bidu issa"
     cd / triq / l / xogħol / tikkopja
     SVN aġġornament
     yourJobProcessingScript.php PHP
 fi 

Issa aħna jista 'jkun żgur li ma' kull run we're definittivament jmexxu l-aħħar kodiċi. We're jiġi żgurat dan billi taġġorna kodiċi bażi tagħna kull darba li aħna titwettaq prova u t-tnaqqis tat-traffiku fin-netwerk billi biss jittrasferixxu l-differenzi fajl madwar in-netwerk tagħna.

Fil-setup dimostrazzjoni tiegħi, jien ma eżattament kif imsemmi hawn fuq. Subversion kienet installata fuq server tiegħi proċessar ta 'xogħol u I sempliċiment jinġibed il-kodiċi mhux aktar tard mill-fergħa ta' "ħaddiem" użu "aġġornament SVN". I miżjuda wkoll tag numru tal-verżjoni li iskrittura ipproċessar tiegħi li ġie rritornat lill-database bħala parti mir-return riżultati. Dan il-mod I tista 'tara dan il-kodiċi tiegħi kienet qed tiġi aġġornata kull darba I kkupjati trunk tiegħi fil-fergħa jiġifieri ħaddiem li kien I definittivament li jmexxu l-iskrittura ipproċessar aktar tard.

Uża l-aħħar data

Jekk l-ipproċċessar tax-xogħol tiegħek jagħmel użu ta 'sorsi ta' data allura f'xi punt dawn ser ikunu aġġornati wisq. Sakemm inti sejħa sorsi ta 'data tiegħek fuq bażi ferm frekwenti li int ser għargħar network tiegħek ma' traffiku hekk kif ħaddiema tiegħek tibda taħdem jġibu kollox għal waqfien. Għal soluzzjoni tiegħi I iddeċieda li nixtieq li jiċċaqalqu sorsi ta 'dejta tiegħi madwar il VMs tiegħi.

Żomm int żwiemel hemm! X'jiġri jekk sorsi ta 'data tiegħi huma enormi? Ukoll dan huwa verament każ ta 'kemm id-data aħna nitkellmu? Jista 'jkun aktar kost-effettiv biex jinstallaw addizzjonali akbar hard drive fis kull magna milli tixtri server addizzjonali ta' pproċessar. Din hija kwistjoni tal-baġit u huwa f'idejn l-kummerċjali biex jiddeċiedu. Huwa forsi li s-sorsi tad-data tiegħek huma tant kbar li fattibbli tagħha biss biex iżommu dan l-ammont ta 'data fil-magni ħaddiem tiegħek. F'dak il-każ dak would you do? Well we tista 'tħares lejn ssejjaħ server tad-dejta lokali, iżda dan jista' jikkawża kwistjonijiet mal-netwerk. F'dan il-każ sistema tal-grilja bħal din tista 'ssir realistiku li tinkludi fl-ambjent uffiċċju tiegħek. Jista 'jkun ukoll li inti tista' tfittex fis-tmexxija 'strateġiji alternattivi, per eżempju biss sejħa ħaddiema tiegħek 20:00-06:00 kull lejl u / jew data sors talbiet throttling.

Nimxu fuq tikri say data sorsi tagħna ammont li 100Gb ta 'data. Well iva li pjuttost ftit ta 'data li jiċċaqalqu madwar in-netwerk ta' aġġornament. Kif se niżguraw li aħna għandna l-aħħar kopja ta 'l-informazzjoni f'dan il-każ? Rsync hija possibbiltà, iżda personalment naħseb mill-running sors tiegħek aħħar dejta fuq is-server tiegħek proċessar ta 'xogħol u l-istabbiliment dan up bħala kaptan fir-replikazzjoni (bil-log sbieħ bin fit-tul) jista' jkun il-mod biex imorru:

replikazzjoni Bl-iffissar ta 'kull tal-ħaddiema tiegħek sa bħala iskjavi għall-aġġornamenti impjieg server kontroll għal sorsi tad-data tiegħek ser jaslu s'għand nicely lill-ħaddiema tiegħek mingħajr żieda enormi fl-attività tan-netwerk (jiġifieri jekk inti twettaq jaġġornaw data enormi u l-ħaddiema kollha tiegħek jidħlu fis-seħħ f'daqqa). Din għandha vantaġġi fuq l rsync b'mod li inti mhux se tikseb waqfa twila qabel kull xogħol; bħala l-aġġornamenti database, il- mysql daemon fuq ħaddiem tiegħek ser kontinwament jaġġornaw data tagħha filwaqt li tkompli l-ipproċessar.

Dan huwa kif jiena stabbilit server dimostrazzjoni tiegħi. Li jitwaqqaf replikazzjoni I segwita l-gwida fuq is-sit mySQL ( Twaqqif replikazzjoni ) u fi żmien 20 minuta kelli ħaddiem inital tiegħi jirreplikaw l-impjieg ta 'kontroll servers dataset. Għal kull ħaddiem addizzjonali-settings replikazzjoni u l-proċess maħduma kull darba meta l VM ġie kkupjat.

Sommarju

F'din it-taqsima ta 'l-artikolu ħarisna lejn kif u faċli tbatija huwa li żżomm kodiċi ta' pproċessar tiegħek aġġornata mill rsync using jew subverion (SVN) biex jagħmlu x-xogħol u jitnaqqas it-traffiku netwerk fuq il-time. istess Aħna wkoll diskuss dwar kif li jżomm informazzjoni tiegħek sors ta 'data up-to-data billi jippermettilha li jaslu s'għand lil kull wieħed mill-ħaddiema tiegħek. Għalhekk aħna żona jiżguraw li aħna ilaħħqu mal-loġika kummerċjali u informazzjoni fis-sistema tagħna grid uffiċċju. Hemm ovvjament se jkun alternattivi għadd li jwettaq dawn il-kompiti, iżda hawnhekk kienu żewġ eżempji sempliċi li juru kemm hu faċli soluzzjoni hija li tinstab.

Next time

Fil-parti finali ta 'din is-serje, b'mod adattat issemmiet Parti 5 , aħna ser jiddiskuti iskjerament din is-sistema għall. I'll tqassar dak li ġie tgħallmu u dak I rnexxielha toħloq.

Uffiċċju Grid Kompjuter li jużaw l-ambjenti virtwali - Parti 3

Permezz Watkin Lloyd Steven , 4 Diċembru ġimgħa 2,009 23:37

Introduzzjoni

I xogħol fil-kumpanija fejn we run lott ħafna impjiegi ipproċessar miljuni ta 'rekords ta' data kull jum u stajt kienu jaħsbu reċentement dwar l-magni li tiltaqa madwar kull jum li ma jsir xejn għal bosta sigħat. Ma Ikun tajjeb jekk aħna jistgħu jużaw dawk il-magni li jsaħħu l-qawwa l-ipproċessar tas-sistemi tagħna? F'dan is-sett ta 'oġġetti jien ser tħares lejn il-benefiċċji potenzjali għall-impjieg ta' uffiċċju grilja li jużaw ambjenti virtualised.

Fil -parti 2 ħarisna lejn l-impjiegi server se jimxu, u kif l-impjiegi għandhom jiġu kkonfigurati sabiex jinkisbu akbar ammont ta 'l-ipproċessar filwaqt li jiżguraw li kull biċċa xogħol hija pproċessata mingħajr dubju.

Twaqqif ħaddiem tiegħek - jew server limp

Il-pass li jmiss fil-proċess huwa li jiġi stabbilit ħaddiema virtwali tiegħek. Għal dan jien ser jużaw l-installazzjoni ta 'CentOS jużaw VirtualBox. Jien ser tinstalla mySQL u PHP fuq is-server, magħrufa wkoll bħala limp (Nux Li, m ySQL, P HP) Server (I jista 'jkun għamel dak l-isem up).

  • Installa VirtualBox fuq magna twieqi tiegħek (segwitu link)
  • Tniżżel u tinstalla CentOS (verżjoni attwali 5.3) fi magna virtwali maħluqa

M'hemm l-ebda punt lili tmur għal dan hemm probabbilment "i 1000 ta 'tutorials kbira hemmhekk (ok, here's wieħed: Il-ħolqien u Managing magna virtwali CentOS taħt VirtualBox ). Il-punt importanti li wieħed jinnota I suppose I hija li tissejjaħ virtwali GridMachine magna tiegħi.

Safejn għażliet tiegħi tal-klijent virtwalizzazzjoni u sistema operattiva jmorru hemm ebda raġuni konvinċenti kbar għal kull għażla. VirtualBox hija xi ħaġa I użu fuq magna dar tiegħi u hija appoġġjata mill-tliet sistemi operattivi ewlenin. I għażlet CentOS bħala OS tagħha stabbli tajba u I-użu fuq server web tiegħi stess. I am a fidi kbira fl-għodod dritt għax-xogħol (għalkemm jien applikazzjoni "użu l-aktar mgħaġġel u eħfef għalik" mentalità hawn), hekk jekk is-sistema operattiva X runs kodiċi tiegħek malajr u b'mod aktar effiċjenti l-użu li minflok:)

Importanti kun żgur li VM tiegħek juża DHCP, inkella għal kull magna virtwali ġdida se jkollha tiġi kkonfigurata separatament li hija xi ħaġa li aħna ma want.By jużaw DHCP ma kellniex bżonn biex jiġi kkonfigurat l-issettjar netwerk individwalment għal magni ħaddiem, DHCP se idejn out IPs għalik. Għalhekk inti tista 'kopja magna virtwali tiegħek dwar l-uffiċċju mingħajr ma tinkwieta dwar it-twaqqif ta' kull wieħed up (din ittejjeb modularità u jnaqqas l-amministrazzjoni ħaddiem).

Il-proċess għandek jimmiraw li jiksbu ikun li jikseb magna fiżika ġdida, jinstallaw VirtualBox, u mbagħad pjuttost ħafna tuża l-immaġini virtwali mingħajr wisq inkella. Jista 'jkun għaqli li setup ħaddiema kollha tiegħek fuq subnet differenti sabiex inti tista' mill-inqas tara kif ħafna magni huma t-tmexxija. Int ser ikollok bżonn ukoll li jitwaqqaf magni tiegħek fuq kirja għal żmien twil jew kiri DHCP illimitat.

Kif tmexxi l-Impjiegi fuq il-ħaddiem

Dan huwa qasam interessanti u hemm metodi validi diversi għall-impjiegi ipproċessar fuq il-ħaddiem. Hawnhekk I'll biss jiddiskutu l-aktar żewġ ovvju:

  • Perpetually tmexxija iskrittura: A b'kitba, kemm jekk tkun b'kitba qoxra, jew b'kitba PHP hija esegwita darba fuq il-ħaddiem u tmur bħala parti minn linja infinita. Stajt skontati dan il-metodu bħala wieħed tiġrifa ta 'l-iskrittura u potenzjalment ħaddiema tiegħek ser jieqaf milli jiddekorri mingħajr xi tip ta' intervent.
  • Cron bbażati iskrittura eżekuzzjoni: Kull minuta X-daemon Cron kicks off sejħa lill b'kitba tiegħek sabiex tikseb l-affarijiet għaddejjin. Mingħajr xi verifika dan jista 'jwassal għal kopji ħafna ħafna tal-iskrittura ħaddiem tiegħek taħdem.

deċiżjoni tiegħi kien li jmorru ma Cron li kicks off b'kitba qoxra kull minutes. 10 b'kitba qoxra tiegħi twettaq il-kompiti li ġejjin:

  1. Get a lista proċess u grep dan għal "PHP". Jekk ma tkunx misjuba mbagħad tkompli.
  2. Sejħa kodiċi tax-xogħol tiegħek, fil-każ tiegħi din tkun xi ħaġa PHP bbażati
  3. iskrittura Ħaddiem tikkompleta run tagħha
  4. Lesta li tmur mill-ġdid fuq is-sejħa xierqa suċċessiva

iskrittura bash My jistenna xi ħaġa bħal dawn li ġejjin:

  #! / Bin / sh
 jekk ps mannara | grep vs grep |> php grep / DEV / null
 imbagħad
     eku "Job bħalissa hija l-ipproċessar, ħruġ"
 inkella
     eku "Job ma tkunx qed taħdem, bidu issa"
     yourJobProcessingScript.php PHP
 fi 

Nota: il-eku's huma kważi kompletament inutli, iżda jista 'jgħin lill-persuna li jmiss li ġejja flimkien biex jippruvaw u jeditjaw lilhom.

Li jikkonkludi l-twaqqif tal-magna ħaddiem virtwali, malajr, sempliċi, u faċli għall-kopja għal kull biċċa ġdida ta 'hardware li huwa riċevut. "Cleverness" tas-sistema tad-distribuzzjoni huwa verament mhux fil-OS viżwalizzata, tiegħu kollha biex jagħmlu mal-kodiċi maħluqa għall-impjiegi proċess, il-konfigurazzjoni ta 'impjiegi, u fl-iżgurar li l-impjieg jibda meta xieraq (ie meta l-ospitanti tkun idle ).

Twaqqif Windows sabiex inizjalizzazzjoni Ħaddiema

L-ewwel kompitu huwa li jaħdmu l-kmand meħtieġa biex titmexxa l-magna virtwali mill-linja tal-kmand twieqi. Jekk inti stajt installati VirtualBox fil-post default u inti stajt jismu GridMachine ħaddiem tiegħek allura l-kmand meħtieġ għal tagħbija ħaddiem tiegħek huwa:

  "C: \ Program Files \ Ħad \ VirtualBox \ VBoxManage.exe" GridMachine startvm 

Madankollu biex imexxu l-iskrittura f '"headless" stat għandna bżonn għall-użu:

  "C: \ Program Files \ Ħad \ VirtualBox \ VBoxHeadless.exe"-startvm GridMachine - vrdp = off 

Din se tibda l-magna virtwali mingħajr il-GUI u jippermettulha li jiffrankaw l-istat gracefully. It-tieni argument jintefa PŻR hekk ma jkunx hemm konflitt ma twieqi PŻR, jew jagħtuk messaġġ dwar smigħ fuq 3389 tal-port. L-isem magna virtwali huwa sensittiv każ!

Sussegwentement, aħna ser bżonn li jiġu stabbiliti twieqi sa kick off VM ħaddiem tagħna darba l-magna tkun ġiet idle. Biex tagħmel dan (fuq Windows XP) li ghandek bzonn biex imorru Start -> All Programs - Aċċessorji> -> System Tools -> Skedati Kompiti kif imniżżel hawn taħt:

kompiti skedati

ikklikkja Next fuq "Żid Skedata Task" segwit minn jibbrawżjaw li żżid programm tad-dwana. Biex jinnaviga VBoxManage iskrittura tiegħek u ikklikkja ok. Skeda kompitu tiegħek għal kwalunkwe mill-għażliet (aħna ser tbiddel dan fil-minuta) u tkompli. Wara taqbeż il-twieqi iskrin li jmiss se jgħidlek li inti tixtieq li tmexxi dan il-kompitu, I'd jissuġġerixxu jew "Amministratur" jew ħolqien ta 'utent privileġġjat ġdid. Ftakar li aħna ma rridux li jinterferixxu mal-kont tal-persunal standard fuq il-magna fi kwalunkwe punt. Ikklikkja għażliet li jmiss u kontroll juru avvanzati għall-dan il-kompitu.

Sat-tmiem tal-kaxxa run żid "startvm GridMachine" spag tagħna u jiżguraw li jiddekorri biss meta illoggjat titħalla unticked. Żur il-kompitu iskeda li jmiss u jibdlu l-iskeda qatra l isfel għall-għażla "meta idle", jagħżlu l-ammont ta 'ħin li tixtieq-magna biex tiġi idle qabel ma jimxu fuq il-tab li jmiss.

Fl-aħħarnett untick l-għażla li jgħid twaqqaf il-kompitu jekk ikun ġie taħdem ammont X ta 'żmien, iżda immarka l-għażla li jwaqqfu l-kompitu jekk il-magna ma tkunx aktar idle.

iskeda

That's dan imbagħad għall-setup ospitanti twieqi!

Sommarju

F'din il-parti aħna waqqfu magna virtwali li taġixxi bħala ħaddiem, kif ukoll il-mod li bih nirregolaw sejħa u tesegwixxi skripts tagħna proċessar ta 'xogħol (għalija nnifsi b'kitba PHP). Minn hawn irridu nħarsu lejn kif stabbilit kopji tagħna ta 'twieqi li jibdew il-magna virtwali fil-modalità bla ras meta l-kompjuter isir idling, u tiffranka istat tiegħu meta l-utent jerġa' jibda l-użu tal-magna. Nisperaw f'dan il-punt int tara kemm huwa sempliċi li jitwaqqaf sistema bħal din u huma ħakk biex nikseb xi esperimenti li jmorru ruħek!

Next time

Fil- Parti 4 aħna ser tkun tħares lejn użu ta 'għodod sabiex jiżguraw li inti qed taħdem l-aħħar verżjoni tal-sorsi u d-data kodiċi sabiex ir-riżultati miksuba huma dejjem up-to-date ma' l-informazzjoni kummerċjali aħħar u loġika.

Uffiċċju Grid Kompjuter li jużaw l-ambjenti virtwali - Parti 1

Permezz Watkin Lloyd Steven , 4 Diċembru ġimgħa 2,009 11:23

Introduzzjoni

I xogħol fil-kumpanija fejn we run lott ħafna impjiegi ipproċessar miljuni ta 'rekords ta' data kull jum u stajt kienu jaħsbu reċentement dwar l-magni li tiltaqa madwar kull jum li ma jsir xejn għal bosta sigħat. Ma Ikun tajjeb jekk aħna jistgħu jużaw dawk il-magni li jsaħħu l-qawwa l-ipproċessar tas-sistemi tagħna? F'dan is-sett ta 'oġġetti jien ser tħares lejn il-benefiċċji potenzjali għall-impjieg ta' uffiċċju grilja li jużaw ambjenti virtualised.

Bħala PHP iżviluppatur jien ser jużaw l-għodod li nuża kull jum jiġifieri, Linux, MySQL , PHP, VirtualBox u subversion (SVN). Madankollu Nispera din il-gwida se jadattaw għal lingwi oħra u t-teknoloġiji ftit ukoll.

Is-soluzzjoni I jipprovdu se jkun ħafna laxk bbażati fuq it-tip ta 'proċessar we'd ħtieġa li jintlaħaq madankollu dan ma jista' jkun minnu permezz ta 'l-artikolu kollu kif I'll ibiddlu l-affarijiet għas-sempliċità, jew biex jipproduċu xenarji użu aktar interessanti.

Dawn l-ambjenti virtualised se jimxu fuq magni twieqi peress li dan huwa dak li l-maġġoranza ta 'uffiċċji run. L-ipproċessar li l-magni l-uffiċċju ma għandhiex tinterferixxi mal-persunal li jużaw dawk il-magni, għandhom jeħtieġu l-ebda manteniment fil-magna, u jkunu faċilment jistgħu jiġu skjerati għal magni ġodda hekk kif isiru disponibbli. Ukoll, magni virtwali ġdid ma jkunx jeħtieġ konfigurazzjoni addizzjonali peress li dan inaqqas ħafna l-modularità u l-faċilità li biha l-sistema tad-distribuzzjoni tista 'tiġi estiża.

Għaliex tuża Grid Kompjuter Uffiċċju?

Ewwelnett inti tista 'taħseb, għaliex mhux biss użu riżors kompjuters sħaba bħal EC2 pjattaforma Amażonja ? Ukoll l-raġunijiet tista 'tkun diversi, per eżempju:

  • Inti mhux se tafda ċerta data li f'ambjent ta 'komputerizzar sħaba
  • Inti ma tistax tpoġġi ċerta data fis f'ambjent ta 'komputerizzar sħaba għal raġunijiet legali (eż. dejta jħallu l-pajjiż), potenzjalment għal raġunijiet legali, eż rekords NHS.
  • Inti tixtieq li żżomm unitajiet ta 'ipproċessar tiegħek mill-qrib u għandhom kontroll sħiħ fuq il-hardware wisq
  • Inti ma għandekx il-fondi tal-proġett li run każi sħaba
  • uffiċċju tiegħek ma jkollux konnessjoni għall-internet u għalhekk tagħha mhux possibbli li jintużaw riżors sħaba
  • Inti ma simili xita, sħab jissuġġerixxu xita, għalhekk inti żżomm 'il bogħod sewwa

Jien ċert li l-lista tista 'tkompli, iżda naħseb li biżżejjed għal issa.

Vantaġġi ta 'Grid Kompjuter Uffiċċju

Ukoll, tikri jagħmlu xi matematika (u fl-istil fiżika veru tikri tagħmel xi suppożizzjonijiet knis). Immaġina li inti kbir mimli ipproċessar server running 100 impjieg għal kull jum. Fl-uffiċċju tiegħek għandek 50 magni li huma idle 16-il siegħa kuljum, kull wieħed minn dawn il-magni hija 10% bħala qawwi ipproċessar beefy tiegħek qtugħ. (Ir-riżultati kollha hawn huma miġjuba għall jiżdiedu l-prestazzjoni jissottovalutaw).

Allura, 1 magna * 10% * setgħa 2 / 3 = ħin 0.067 jiġifieri l-ipproċessar tad-desktop 1 fil-ħin wieqaf jista 'proċess 6 impjieg full kuljum.

Jekk inti issa skala dan up li jieħu 15 desktops idle għall-proċess kif ħafna impjiegi kuljum bħala prinċipali server tiegħek ipproċessar ma.

Allura fil-kariga nippretendu tagħna ta '50 magni nistgħu iżidu l-poter ipproċessar tagħna mill-1 server sa 4 servers ipproċessar sħiħ, jew nistgħu tkun għall-ipproċessar 400 x-xogħlijiet kuljum minflok 100.

Avviż, għall-ebda investiment fil-hardware ġdid kumpanija tiegħek tkun biss miżjuda l-ipproċessar tagħha lott kapaċità 4 darbiet! Potenzjalment int ser jżid l-użu qawwa tiegħek imma minn ambjenti uffiċċju aktar stajt għal magni huma ġeneralment jitħallew fuq matul il-lejl xorta, sabiex inti tista 'tara dan bħala inizjattiva aħdar.

Vantaġġi oħra jfissru wkoll li l-investiment fl-ġdid (jew aġġornati) servers ipproċessar tistax tiġi ttardjata jekk magni uffiċċju tiegħek huma biżżejjed u li kif inti jtejbu l-enerġija ta 'magni uffiċċju tiegħek grid uffiċċju tiegħek issir aktar qawwija awtomatikament.

Teknoloġiji

X'għandek bżonn? (Jew aktar korrett dak li għamlet I użu):

  • Idle magni uffiċċju (fil-każ tiegħi laptop XP twieqi antiki parts)
  • VirtualBox (jew softwer ieħor klijent virtwalizzazzjoni)
  • Magna virtwali ma PHP, running mySQL tmexxija ta 'cut down OS, jien ssejjaħ dawn is-servers limp tiegħi:)
  • Impjiegi jiddekorri
  • server Xogħol (jista 'jkun magna oħra virtwali x'imkien)

Impjiegi tipiċi

It-tipi ta 'impjiegi li din is-sistema hija ddisinjata biex taħdem huwa kif ġej:

  • Sistema tirċievi lista ta 'data li fuqhom għandna bżonn li jqabbel u rizultati
  • Tqabbil jinvolvi l-kontroll / tiftix diversi (pjuttost statiku) sorsi ta 'data
  • Riżultati minn sorsi ta 'data jistgħu jeħtieġu aktar validazzjoni, li qed jingħaqdu, kontroll ta' sorsi ta 'data addizzjonali b'reazzjoni għal riżultati
  • Data huwa lura bl-rekords li jaqblu, kompletament validati u pproċessati
  • Kull rekord fi impjieg huwa indipendenti mill-bqija

Allura bażikament aħna qed tfittex fil-running-impjiegi li jeħtieġu taħlita ta 'reverse database u xi crunching numru, xenarju pjuttost tipika fl-ambjent tan-negozju.

soluzzjonijiet Grid mhux biss huma vantaġġjużi għall-ipproċessar impjiegi ta 'dan it-tip. Bażikament, kull proċess li jista 'jinqasam f'unitajiet indipendenti jistgħu jitmexxew b'mod parallel. Ara dan wikipedia għal eżempji u aktar informazzjoni: Grid Computing , iżda ftit eżempji famużi huma SETI @ Intern u BIONC . Hemm oqfsa għat-tmexxija grids informatika, u dawn huma ferm utli li nħarsu lejn.

X'se nistgħu nilħqu?

Sa l-aħħar ta 'dawn l-artikoli jien nittama li juru li bagħtet grid uffiċċju ma teħtieġx li tkun immensament għalja jew il-ħin. Jien ser jiddiskuti:

  • Twaqqif tas-sistema kontroll tax-xogħol, il-konfigurazzjoni impjieg
  • Ħolqien ta 'magna xierqa virtwali ipproċessar
  • Kif setup tas-sistema fuq magna twieqi
  • Iżgurar qed tuża l-aħħar kodiċi u d-data
  • Iskjerament u l-benchmarking
  • Ħarsa 'l quddiem

I ser tkun bini (ok I mibnija, imbagħad kiteb dan) applikazzjoni eżempju biex jittestjaw il-kunċetti fuq magna lokali bl-użu Windows XP u magna virtwali "GridMachine tiegħi". impjieg server kontroll tiegħi se tkun magna prinċipali tiegħi li tmur Fedora 11 .

Dan huwa fl-ebda mod intenzjonati biex juri sistema robusta sħiħ tax-xogħol, tiegħu fisser aktar ta 'dimostrazzjoni u tiddiskuti li turi li dawn l-affarijiet jista' jinkiseb fi spazju raġonevolment qasir ta 'żmien u bi spejjeż żgħar. Nitolbok li tħossok liberu li tibgħatli xi kummenti, korrezzjonijiet, jew titjib u I'll nagħmlu l-almu tiegħi biex iżommu dan l-artikolu aġġornat biex jaqblu.

Next time

Fil -parti 2 I se tibda billi tħares lejn sistema ta 'kontroll tax-xogħol, u ħarsa lejn kif l-impjiegi għandhom jiġu kkonfigurati sabiex jinkisbu akbar ammont ta' l-ipproċessar filwaqt li jiżguraw li kull biċċa xogħol hija pproċessata mingħajr dubju.

Uffiċċju Grid Kompjuter li jużaw l-ambjenti virtwali - Parti 2

Permezz Watkin Lloyd Steven , 4 Diċembru ġimgħa 2,009 11:23

Introduzzjoni

I xogħol fil-kumpanija fejn we run lott ħafna impjiegi ipproċessar miljuni ta 'rekords ta' data kull jum u stajt kienu jaħsbu reċentement dwar l-magni li tiltaqa madwar kull jum li ma jsir xejn għal bosta sigħat. Ma Ikun tajjeb jekk aħna jistgħu jużaw dawk il-magni li jsaħħu l-qawwa l-ipproċessar tas-sistemi tagħna? F'dan is-sett ta 'oġġetti jien ser tħares lejn il-benefiċċji potenzjali għall-impjieg ta' uffiċċju grilja li jużaw ambjenti virtualised.

Fil- Parti 1 I taw ħarsa ġenerali tas-sistema u t-teknoloġiji I se tkun qed tuża kif ukoll diskussi xi wħud mill-raġunijiet potenzjali għala inti tixtieq li toħloq netwerk uffiċċju.

Job Kontroll

Jekk int ser tkun qed taħdem impjiegi allura int se jeħtieġu xi ftit mod biex imexxuhom. xogħol ta 'kontroll tiegħek tas-sistema (fuq is-server xogħol tiegħek) jeħtieġ li jkun verament maħsub sew qabel saħansitra jippruvaw jimxu' grid uffiċċju. Allura l-ewwel nett, liema huma l-kompiti għal sistema ta 'kontroll tax-xogħol:

  • Naħa l-impjiegi fuq talba mill-ħaddiema
  • Għid liema tip ta 'ħaddiema impjiegi jiddekorri
  • Track impjiegi
  • Jiżguraw li l-impjiegi huma biss run darba
  • Jipprovdu data impjieg għall-ħaddiema, jew għall-inqas jgħidulhom fejn biex tiksbu

Is-sistema jeħtieġ ukoll li jkun estensibbli, soluzzjoni li taħdem għal issa f'każ wieħed jista 'jiġi estiż biex imexxu diversi tipi ta' impjiegi bħala n-negozju jara l-valur f'soluzzjoni gradilja. Per eżempju, l-impjiegi jistgħu jiksbu l-prijoritajiet, it-tip ta 'xogħol aktar minn wieħed jista' jeżisti (jiġifieri kodiċi diversi bażijiet), eventwalment tista 'saħansitra jmur diversi magni differenti ħaddiem li huma ottimizzati għal kull tip ta' impjieg (għalkemm dan ma jitbiegħed mill-"ħaddiem ġeneriċi "idea). Dejjem ipprova li jaħsbu dwar il-futur meta iżvilupp ta 'sistemi, viżjoni għal żmien qasir jistgħu jwasslu għal frustrazzjoni tul u l-ħin żvilupp akbar.

Job Server

Aħna ser bżonn x'imkien għall-kontroll impjiegi tagħna minn, dan għandu jkun l-unika sistema fil-grid tiegħek li għandha locator riżors fiss, għandha tkun din l-indirizz IP, l-isem ospitanti, il-URL (bl-użu intern DNS), eċċ Dan huwa minħabba il-ħaddiema jeħtieġ li tkun taf fejn tfittex għal impjiegi, il-ħaddiema bżonn issib ir-sistema ta 'kontroll tax-xogħol (mhux is-sistema kontroll tax-xogħol isibu l-ħaddiema).

Il-server xogħol innifsu ma verament għandhom kompitu kkumplikata (fi xorta sistema bażika), jeħtieġ li jaħżnu lista ta 'impjiegi, minn naħa l-impjiegi, jirċievi r-riżultati, u sussegwentement jaħżinhom għall-kisba aktar tard. Kif dawn il-partijiet ("l-idejn impjiegi" bħal) huma definiti jistgħu jkunu ħafna bażiku. Aktar tard nistgħu testendi s-sistema li tinkludi interface amministrazzjoni li jżid, teditja, ħassar, tissospendi l-impjiegi iżda dan huwa lil hinn minn dan l-eżerċizzju.

M'hemm l-ebda raġuni allura li server xogħol tiegħek ma setgħux jiġu magna virtwali tmexxija fi ħdan is-server tiegħek ipproċessar prinċipali sakemm dan ma drain wisq riżorsi minnha. Il-server impjieg madankollu ma disponibbiltà bżonn għoli, jekk dan jinżel fuq Ġimgħa filgħaxija int ser jitilfu weekend kollu ta 'pproċessar, potenzjalment inti tiswa ftit ġimgħat jiswew ta' ħin għall-ipproċessar (meta mqabbla ma 'server tiegħek ipproċessar prinċipali biss) . Inti tista 'tixtieq li jikkunsidraw tqegħid server xogħol tiegħek dwar ambjent bilanċjat tagħbija għal disponibbiltà għolja.

Setup Bażiku

Il-setup bażiċi għall-server xogħol tagħna se jkun magħmul minn dak li jien sejħa waħda ta 'servers limp tiegħi (li hi Nux Li, ySql m, P HP). Il-kodiċi li jaħdem fuq ħaddiema Thea se attwalment jaħdmu barra dak l-impjiegi tista 'taħdem permezz ta' interazzjoni ma 'xogħol ma' databases sistema ta 'kontroll. Aktar tard nistgħu jinħoloq servizz tal-web u attwalment naħa l-impjiegi aktar milli jkollhom l-ħaddiema jagħmlu x-xogħol iebes infushom, iżda għal issa aħna ser ikomplu jużaw il- prinċipju KISS (Żomm dan sempliċi, Stupid!).

Allura, tikri joħolqu minn tlieta mySQL tabelli biex jittrattaw l-impjiegi. Dawn se jkunu "impjiegi", "jobRecords", u "jobResults".

impjiegi tabella Hawnhekk jien jużaw SQL Buddy alternattiva ftit kbir biex phpMyAdmin biss minħabba tagħha aktar faċli biex jiġu installati fuq CentOS (għall-oħrajn ara: 10 alternattivi Kbar biex phpMyAdmin )

Din it-tabella tal-5 jikkonsisti oqsma sempliċi,

  • id: Unikament tidentifika l-impjieg
  • Isem: Jista 'jkun referenza klijent, jew kwalunkwe numru ta' identifikaturi oħrajn
  • Status: Inti għandek bżonn tkun taf fejn l-impjieg huwa fil, eg
    • 0: Mhux beda
    • 1: Qabad
    • 2: Completed
  • started_by: Who's bdiet tagħmel l-impjieg? Dan mhux kollox meħtieġa, iżda huwa sabiħ li jkollhom. I'd jissuġġerixxu traċċar tal-ħaddiema mill-indirizz IP tagħhom fuq network tiegħek
  • started_at: Meta ma l-ħaddiem jibda l-impjieg? Minn tracking impjiegi li ma temmewx fl-ammont X ta 'żmien nafu għandna bżonn li jtellgħu l-impjieg għal darb'oħra u l-bidu ipproċessar minn ħaddiem ieħor. Ħaddiema tista 'twaqqaf l-ipproċessar / tmur offline għal kull numru ta' raġunijiet, nuqqas ta 'enerġija, crash, netwerk telf, eċċ

Huwa faċli kif din it-tabella tista 'tiġi estiża bi ftit oqsma addizzjonali biex tippermetti għall-istatistika traċċar, kolonna żmien finitura biex tara kemm l-impjieg ħa, kontro biex tara kif ħafna ħaddiema telgħet l-impjieg (ovvjament dan jeħtieġ li għandhom tendenza li 1), il-prijorità tax-xogħol, il-lista tista 'tmur fuq u fuq. Fil-xenarji aktar xogħol kumplessa ikun possibbli li wieħed jispeċifika kemm memorja il-ħaddiem ikun jeħtieġu aċċess għal (u għalhekk jużaw biss ħaddiema addattati), jew anki liema tip ta 'ħaddiem ikun meħtieġ.

Tikri żid impjiegi ftit eżempju:

eżempju l-impjiegi

It-tabella li jmiss darb'oħra huwa pjuttost faċli biex tifhimhom, dawn huma r-rekords tax-xogħol tagħna. Dawn huma marbuta mat-tabella impjiegi prinċipali minn kolonna "jobs_id". L-għamla ta din it-tabella jiddependi ħafna fuq l-informazzjoni li għandek bżonn għall-provvista lill-ħaddiema tiegħek, tikri jagħmlu eżempju sempliċi ħafna fejn għandna erba 'kolonni:

  • id: ID tar-rekord
  • Isem: l-isem Person
  • indirizz: l-indirizz Person
  • jobs_id:-ID-impjieg li dan ir-rekord hija marbuta ma '

It-tabella tielet u laħħar huwa magħmul minn tabella riżultati, għandha ħafna l-istess jagħmlu bħala tabella rekords tagħna, u biż-żieda ta 'xi kolonni tista' tkun parti tat-tabella reġistri:

  • job_record_id: Link-riżultat li l-tabella impjieg
  • riżultat: Id-data riżultat

... U li kollox għandek bżonn għall-kontroll tax-xogħol! (Għalkemm fuq livell bażika ħafna) Fil-każ tiegħi jien indikat għall-ieħor tabella fejn id-data tiegħi għall-proċess kien jinsab, iżda dan jista daqstant faċilment ġew fajl, parametri jiddekorri kodiċi simulazzjoni, inti isem li bih.

Għażla ta 'impjieg

Kif intqal qabel, il-ħaddiema se do ġestjoni xogħol tagħna għalina għal issa, għalhekk kull għandna bżonn biex verament tagħmel hu li ssib impjieg li teħtieġ l-ipproċessar u jiksbu l-informazzjoni. Kif se nagħmlu dan? Ukoll pick kriterji tagħna għażla tax-xogħol u tfittex għal impjiegi, fil SQL I ma 'dan li ġej:

  1. Jieħdu kwalunkwe impjiegi li mhumiex immarkati bħala kompluta iżda mill-ħaddiema tagħna u reset minnhom (__ME__ sostitut b'identifikatur, eħfef ikun indirizz IP):
      AĠĠORNAMENT "impjiegi" SET "istatus" = 0 FEJN "istatus" = 1 U "started_by" = __ME__; 
  2. Użu ta 'kriterji ta' għażla tagħna impjieg, tagħżel impjieg u għid l-sistema ta 'kontroll li dan il-ħaddiem qed jinnegozjaw:
      AĠĠORNAMENT "impjiegi" SET "istatus" = 1, "started_by" = __ME__, "" started_at = ISSA () FEJN "istatus" = 0 JEW
     ("Istatus" = 1 U "" started_at> DATE_SUB (ISSA (), INTERVALL X SIEGĦA)) ORDNI MILL "id" ASC; 

    Mill-ħtif impjiegi li ma jitreġġax lura riżultati fl-ammont X ta 'żmien aħna niżguraw li l-impjiegi kollha huma mmexxija fil-każ ta' ħaddiem jiġġarrfu jew sejrin AWOL.

  3. Li jmiss grab-dettalji impjiegi segwit mill-rekords nfushom:
      TAGĦŻEL * MINN "impjiegi" FEJN "started_by" = __ME__ LIMITU 1;
     TAGĦŻEL * MINN "job_records" FEJN "id" = __JOBID__; 

Mat-tlestija ta 'l-impjieg aħna daħħal tagħna rekords riżultat u l-marka l-impjieg bħala komplet. Ftakar bħala l-impjiegi tista 'tissospendi / jerġa' fi kwalunkwe ħin titħalla ċerta robustezza b'kitba tiegħek. Jista 'jkun li l-kompitu tissospendi nofs triq permezz jaġġornaw is-sistema kontroll tax-xogħol, sabiex iċċekkjar tal-numru ta' rekords fl-impjieg u l-għadd ta 'riżultati salvati lura lill-sistema ta' kontroll ix-xogħol ser tkun pass għaqli.

Barra minn hekk, filwaqt li dan juri kif l-impjiegi jistgħu jiġu magħżula u mmexxija minn-mistoqsija qafas SQL għandek verament tkun abstracting kontroll tax-xogħol tiegħek sabiex jekk inti tiddeċiedi li jaqilbu għal użu ta 'servizz web, sistema bbażata fuq fajl, XML , jew kwalunkwe numru ta 'sistemi li mhux se jaffettwa l-kodiċi hawn fuq.

Job Konfigurazzjoni

L-aspett li wieħed għandu jikkonsidra huwa d-daqs tax-xogħol u l-konfigurazzjoni. Billi jilagħbu bil-konfigurazzjoni xogħol nistgħu jilħqu bilanċ eċċellenti bejn il-veloċità, replikazzjoni proċess, u l-affidabbiltà. Ħu koppja of xenarji:

  1. Impjiegi qed jieħu l-1 jum kull jiddekorri: Dan ifisser li l-ħaddiema tiegħek bżonn 15-il jum li jipproċessaw kull biċċa xogħol (ftakar 10% tal-enerġija għall 2/3rds tal-ħin). Dan huwa b'mod ċar mhix maħsuba konfigurazzjoni għaqli, id-daqs tax-xogħol tiegħek huwa mod wisq kbir! Hija se tieħu mill-inqas doppju tal-ħin li jsibu xogħol pproċessati għandhom il-ħaddiem inizjali jmorru AWOL (ħin li jtellgħu li ma rritorna riżultat flimkien ma 'ħin ta' riproċessar). Fi ideali inti'd jkollu mill-inqas impjieg full faċilment kklerjati mill-aħħar ta 'kull perjodu ta' idle twil, li mod inti żżomm l-impjiegi timmarka aktar u fuq l-agħar każ ta 'impjieg se jieħu jumejn biex il-proċess għandu l-ewwel jisparixxi.
  2. Impjiegi qed jieħu 1 minuta jiddekorri: Dan ifisser li l-ħaddiema tiegħek jieħu madwar 15 minuta biex imexxu kull biċċa xogħol. Filwaqt li dan jista 'jidher fil-bidu ideali, inti jiksbu ipproċessar addizzjonali ta' xogħol matul il-ħin ikla, pawżi kafè, laqgħat, eċċ dan ix-xenarju tpoġġi pressjoni fuq oqsma oħra tas-sistema tiegħek u jintroduċi problemi tagħha. Per eżempju, l-ewwelnett setup tiegħek / proporzjon ħin għall-ipproċessar huwa se jmorru dritt isfel, għalhekk jitilfu l-effiċjenza tas-sistema. In-netwerk tiegħek se tkun kontinwament streaming xogħol ta 'informazzjoni lill-ħaddiema diversi persunal frustranti li huma dong ġurnata tagħhom biex jaħdmu kuljum. Inti wkoll se jagħmlu pressjoni aktar fuq is-server tiegħek proċessar ta 'xogħol minħabba li għandu dixx lottijiet u lottijiet ta' biċċiet żgħar ta 'xogħol fuq bażi regolari. Fl-aħħar nett, f'din is-sitwazzjoni jekk server impjieg tiegħek jinżel int ser toħloq log lura kbir ta 'xogħol mhux mitmuma billi impjiegi akbar, jista' jitkompla l-ipproċessar blissfully konxji li s-server xogħol kienet qed tesperjenza diffikultajiet.

Fir-realtà se jkun hemm ebda konfigurazzjoni waħda ideali għall-setup grid tiegħek, ħafna jiddependi fuq ir-riżorsi disponibbli, it-tipi ta 'xogħol, il-ħtiġiet tax-xogħol ħin tibdil, il-kapaċità tan-netwerk, u fuq hekk. Madankollu xi linji gwida jkunu:

  • impjiegi Daqs hekk li kull ħaddiem tista 'tikseb permezz ta' mill-anqas 3-4 impjiegi fil-perjodu ta '15-il siegħa (l-itwal perjodu probabbli ħin wieqaf)
  • Play mad-daqs impjieg sabiex dak iż-żmien setup isir pjuttost insinifikanti meta mqabbla mal-ħin ta 'pproċessar (meta wieħed iqis il-punt ta' hawn fuq).
  • Jekk ix-xogħol ma tkunx kompluta fir-doppju tal-ammont ta 'ħin (forsi inqas) li inti tistenna li jitlesta jassumi li AWOL marret tagħha u tibda l-ipproċessar ma ħaddiem ieħor. Dan ifisser li inti jista 'jkollok tistenna sa tliet darbiet it-tul normali ta' xogħol għal li jlesti (possibilment itwal jekk l-impjieg sussegwenti jonqos). Inti tista 'tixtieq li jnaqqsu dan iż-żmien, imma jkun attent li ma jitnaqqas wisq kif inti tista' tibda tidduplika kompiti ipproċessar fuq bażi regolari.
  • Impjiegi għandhom ikunu indipendenti ta 'rekwiżiti barra kemm jista' jkun. Il-server xogħol, per eżempju, għandhom biss jiġu kkuntattjati fil-bidu u tmiem ta 'kull impjieg.
  • M'għandekx saturat network tiegħek, dan se jkollu żewġ effetti negattivi, il-persunal bi nhar tiegħek ser issib użu tan-netwerk frustranti u l-problemi jistgħu jiġu esperjenzati bil-konnessjonijiet timing out problema li se jkomplu jsiru biss agħar kif inti skala grid tiegħek.
  • impjiegi Tiżgura tista 'taħdem fuq il-ħaddiema tiegħek. Jekk l-impjiegi sar wisq memorja impjiegi intensivi jew disk ispazju intensiv ser tibda jabortja u l-unika ħaġa tkun taf Avviż huwa tnaqqis fin-numru ta 'impjiegi pproċessati bl-ebda raġuni vera għaliex.

Riżultati Sottomissjoni ta 'Job

Meta jissottomettu r-riżultati ta 'impjieg huwa importanti li jiġi vverifikat li r-riżultati ma jkunux ġew ippreżentati mill ħaddiem ieħor, speċjalment jekk il-ħaddiem kurrenti ġie fissi għal xi żmien.

Meta r-riżultati jiġu ppreżentati jiżguraw li n-numru ta 'riżultati jaqbel man-numru ta' rekords fi ħdan l-impjieg.

Kif intqal qabel, u ma tistax tkun enfasizzata, jibnu tolleranza ta 'difetti fis-irkupru u r-riżultati tax-xogħol sottomissjoni. Il-ħaddiema jistgħu (u probabbilment se) tidħol fis tissospendi modalità fil-inkonvenjenti aktar ta 'drabi u dan jeħtieġ li jiġu provduti. Wkoll għal darb'oħra abstracting bogħod riżultati sottomissjoni tiegħek se jgħin jilqgħu għall-bidliet futuri għas-sistema tiegħek kontroll tax-xogħol ħafna aktar faċli biex jittrattaw.

Sommarju

F'dan section ħarisna lejn dak server kontroll tax-xogħol jeħtieġ li jagħmlu u kif tikseb sistema bażika ħafna stabbilit. Iddiskutejna kif sabiex tkun irkuprata l-impjieg mis-sistema ta 'kontroll u kif l-aħjar biex jiġi kkonfigurat l-impjiegi biex jiksbu l-aktar tagħna tas-sistema tiegħek grilja uffiċċju. Biex jintemm, il-paragrafu jew tnejn fuq sottomessi riżultati lura lis-server kontroll tax-xogħol ġiet ippreżentata.

  • A server kontroll tax-xogħol tamministra l-impjiegi u tiżgura li l-unitajiet kollha tax-xogħol huma kompletati
  • Permezz abstracting xogħol tiegħek tagħżel / riżultati sottomissjoni aħna nistgħu nbiddlu l-teknoloġija tas-server ta 'kontroll mingħajr problemi ferm
  • impjiegi Kkonfigurat tiegħek biex tiżgura li dawn huma mmexxija malajr u b'mod effiċjenti mingħajr ma jpoġġi wisq pressjoni fuq infrastruttura ta 'network tiegħek, u mingħajr ma jidduplikaw kompiti ipproċessar fuq bażi regolari.
  • Jiżguraw li inti tibni tolleranza ta 'difetti u checking żball fis-rutini tiegħek, il-ħaddiema jistgħu jissospendu u tkompli u l-inkonvenjenti aktar ta' drabi. Ftakar li tikkontrolla jekk ir-riżultati diġà ġew ippreżentati mill ħaddiem ieħor.

Next time

Fil -parti 3 aħna ser toħloq ipproċessar ta 'magna virtwali tagħna u jistabbilixxu magni twieqi tagħna biex issir-time idle.

Uffiċċju Grid Kompjuter li jużaw l-ambjenti virtwali - Parti 5

Permezz Watkin Lloyd Steven , 4 Diċembru ġimgħa 2,009 11:03

Introduzzjoni

I work in a company where we run many batch jobs processing millions of records of data each day and I've been thinking recently about all the machines that sit around each and every day doing nothing for several hours. Ma Ikun tajjeb jekk aħna jistgħu jużaw dawk il-magni li jsaħħu l-qawwa l-ipproċessar tas-sistemi tagħna? In this set of articles I'm going to look at the potential benefits of employing an office grid using virtualised environments.

In Part 4 we looked at using tools to ensure that we're running the latest version of the code and data sources so that obtained results are always up-to-date with the latest business information and logic.

Pre-Deployment

Before deploying your grid system if there's one thing you do and one thing alone it's benchmark your current system ! No matter what you tell colleagues about how much extra work your system is going to do unless you have numbers to back this up your guarantees are nothing. So,

  • how many records can you process currently? Per Day? Per Hour?
  • How long does it typically take to turn around a job?
  • How much more capacity do you have?

There's also additional questions:

  • If your processing server (or one of your processing servers) goes down how will this affect your capabilities, will you be crippled?
  • What advantages do you hope/expect to get from a grid system?
  • Are your office machines capable of running the jobs?
  • Are your (or can you jobs be converted) to wrok in this style of running?

The last major point is to take your time on any major change like this. Update your processing code to work using the new methodology, benchmark again. Possibly set up your processing server to run a virtual machine, after all your processing server will just be another worker (just a very powerful one relatively). Allow the new process to settle.

Deployment

My suggestion would be to pop into the office one weekend perform all the installations and setup. Do this just before a fortnight's holiday and leave so other poor chap to deal with the consequences… maybe not…

Deployment for a system like this needs to be slow. Despite it being relatively simple to set up this system will affect your entire office infrastructure (well the digital one). Firstly, roll out to a couple of machines at a time, monitor network traffic, how the worker hosts perform on a day-to-day basis. You may need to alter your job configuration in response to your findings.

Once the system has settled with a few machines (lets say 10% of all office machines, ie 5) keep monitoring network traffic and host machine performance. Next benchmark again, you should now be processing 33% more jobs than your first benchmarks. Check this is so, or that you're at least in this ballpark. If not, investigate what is going on before moving on. Repeat this cycle until you happily have all office machines running without killing individual machine performance or grinding your network to a standstill.

At all times keep benchmarking, even after all deployments are made. Check how new code updates affect speed of your system, check all workers are reporting in and processing jobs. Slowly (very slowly) increment your job configuration to get the best from your workers and network.

Stop!

What if you want to stop your workers from running at some time? They are all out there running, regenerating, and trying their best to process data like hungry insects. The answer may seem obvious but its worth adding just in case its overlooked. Simply edit your processing script with an exit(0) or die() or some other statement to kill your processing job. An important reason why we always try to update to the latest processing script before any run!

Demonstration System

In order to write this set of short articles I created a very small grid to demonstrate the technologies and methodologies. I read lots of articles, tutorials, and used various tools to setup and monitor what was going on. By no means have I gone out and saturated a whole office with traffic and nor have I had access to a regular staff members PC to see how host performance was affected.

My demonstration system was very humble indeed. I used my regular desktop set up as a job control server. On this I had installed mySQL server installed set up as a master in replication, PHP , and SVN linked through apache (for access via worker VM).

I then created a centOS worker machine on VirtualBox on a 6 year old windows XP laptop. I setup scheduled tasks as specified after copying the VM onto the machine and let it go.

The virtual machine was set up with PHP, subversion, and mySQL. I checked out a branch named 'worker' from my job control servers repository and made sure it could be updated using 'svn update'. Next I setup mySQL as a slave and checked that data was replicating from mySQL on the job control server down to the worker VM. After all this I setup the bash script and the cron job.

My processing script basically went along the lines of this (very simple stuff):

  • Read in the name field
  • Counted the number of similar names in a table from the data source held on the VM
  • Counted the number of names as above but splitting the name by spaces (ie forename, middle, surname)
  • Repeated this process 1,000 times

Each job took approximately 20 minutes to run. At one point I opened several copies of the worker VM on the windows laptop and watched the jobs be checked off by each of the worker IP addresses. At this point I also confirmed that replication automatically restarted.

Leaving the laptop to idle resulted in a worker starting to process jobs from the job control server. When resuming laptop usage there was a delay of about 30-60 seconds, this is a fair amount of time and staff would need to be made aware that their machine may pause for a short while when returning to the machine. Newer machines may not have a pause of this long. The benefit of the amount of processing performed by these machines during idle periods would more that outweigh staff members having to wait a short period (say 1 minute) on arriving at their machines of a morning (I frequently wait longer that this for a Windows Defender update to take place) provided they were made aware of this (useful time to grab a morning coffee!).

Overall I feel confident that I have demonstrated the technologies that could be used to create such a system. I have shown that such a system does work on a (very) small scale and with some more experimenting could be scaled up utilise the resources of an office's machines. If I don't get to the point of doing this I would be very interested to know/see when someone else does.

Conclusions / Evaluation

Il-pass ovvju li jmiss ikun li fil-fatt tikseb eżempju dinja reali u tibda tuża sistema bħal din fl-ambjent uffiċċju u tara x'jiġri. Tistaqsi negozju li jimpenjaw ruħhom li dan mingħajr il-kumpannija traċċa tisreġ biex tipprova l-teknoloġija u l-effettività tista 'tkun ftit diffiċli. Grid / computing distribwita hija popolari ħafna xi ċrieki u għandha xi applikazzjonijiet kbar (BIONC, SETI @ Intern, Folding @ Intern, eċċ). I ma, madankollu, issib skala iżgħar u sistema sempliċi bħal din fl-tfittxijiet tiegħi li jistgħu jitqassmu fi ħdan ambjent uffiċċju.

I created a basically free system using mostly open source software and tools available in almost any office. The technologies were basically demonstrated and show to perform and work as expected. Hopefully I have show that with not much work and with a very simple setup you can deploy an office grid computing system that is powerful, cheap, and scalable all at the same time.

Once a system is up and running there is almost no end to the amount of customisation and improvements you can make. For example statistics / benchmarking can easily be added showing the worth of such a system every day. New machines can be added quickly and easily as and when they arrive with upgrades to existing hardware bolstering your processing power.

I hope you've enjoyed reading this series of articles and its given you food for thought on running an office grid system. The solution presented here won't necessarily work in all situations but should be adaptable to allow you to get your data processing done using your own solution.

Please feel free to send me any comments, corrections, or improvements and I'll do my best to keep this article updated to match.

Zend Framework: Fundamentals – Review

By Steven Lloyd Watkin , Saturday 28th November 2009 10:42 pm

My employer recently paid for a group of us developers to take the Zend Framework: Fundamentals course, here I'll summarise my thoughts and opinions on the course for others. For those looking to save time, here's my summary:

For developers who haven't had time to look at the Zend Framework this course (Zend Framework: Fundamentals) offers a good overall picture of the framework introducing you to the key areas and giving enough information in order to continue. For those who have spent time looking at the framework and have followed one or two tutorials this course does not offer much beyond.

Sfond

I've been a PHP developer for around 5-6 years, and have started working with the Zend Framework on a component basis over the last 6 months. I've developed and/or been a developer on a couple of small Zend Framework MVC sites. I'll be honest, I haven't had a huge amount of exposure to other frameworks from a coding point of view but have spent several hours researching the project websites and evaluating them. The framework and the community surrounding Zend Framework it is quite exciting and there seem to be huge possibilities in where its going.

About the Course

The course is delivered over 9 two hour webex sessions (with a 10-minute break in the middle). The time is spent going through a set of slides provided by Zend with discussion at any time. You can use a microphone to talk to the instructor, but to be honest I didn't see anyone use anything more than the chat window. In addition a VMWare Ubuntu machine is provided that has example code and projects set up an a trial version of Zend Studio. The course leader talks to attendees either over an integrated VoIP solution, or you can dial in using one of the many worldwide dial in numbers.

During the course the material consists of a brief overview of the Framework and the MVC pattern before heading into a sample guestbook application. The discussion demonstrated bootstrapping, Zend_Application, Db Tables, Database access, Forms, Filtering, ACL, Validating, etc, etc. Basically covering all the topics you'd require to get a basic site up an running all the time giving you the tools to go and get more advanced in the framework (although this did amount to 'See the website' much of the time).

Time is given to code up some examples, and to develop the 'guestbook' and simple 'wiki' application. Personally I felt that providing the code or each app and then asking us to develop what was essentially a copy alongside didn't really provide a good learning experience. I would have preferred to develop an application similar, but not identical. to the example application with the benefit of having a guide to refer to. Alternatively building the applications from scratch with the demonstrator would of possibly led to more questions about why and how , thus giving a better understanding of the framework, after all you can look up specifics after the course.

The last lecture consisted of working on the wiki application with help/guidance from the instructor. After the course feedback was taken, it was emphasised several times through the course that Zend takes feedback very seriously, in fact apparently our version of the course was quite new. Some of the other developers in the company will be taking the course soon so it will be interesting to see if this has happened.

The course style was informal, allowed for feedback and collaboration between attendees and the instructor. The course leader was friendly, approachable (email addresses were shared for questions), and whilst his presentation from the slides was a bit shaky seemed fully competent in the framework. He was clearly someone who used the framework on a regular basis rather than someone who is taught to teach the course, I liked the 'real world' experience in that respect.

Overall Feeling

In some ways I found the course a waste of time, in others it was very handy. Hopefully I'll get my reasons across clearly, and maybe provide some food for thought or useful feedback (knowing me this is unlikely!).

For myself this course was aimed at too low a level. Having gone through the quickstart guide, read Rob Allen's Zend Framework in Action, and worked with the framework a little I didn't really get anything too much. I would of liked the course to pick up from the end of the quickstart and develop additional skills.

That said, the course title does clearly state “Zend Framework: Fundamentals ” and in that aspect the course achieves what it sets out to do. Other members of the development team that haven't spent the time looking into the framework finished each session with enthusiasm and asked questions which was really nice to see.

All was not lost, it was good to spend time confirming the basic details of the framework and get to ask a couple of questions in areas where I wasn't 100%. It was also time that I got to sit down each day and think about coding using the framework and future projects, something I wouldn't of been able to do otherwise (can you imagine your company agreeing to that? :) ). Last but not least you also get a nice certificate from Zend to say that you attended the course (albeit by email).

Zend Framework Certification

This was one question that kept coming to mind during the course, would it prepare me for the certification? The quick, easy is a resounding No . The course instructor was quite clear on that with the additional advice that for the certification you should really be using the framework on a day to day basis and feel very comfortable and confident in its usage and methodologies.

Sommarju

Given everything I've written above, I'll summarise everything in two easy bullet points:

  • New to Zend Framework: This course does exactly what you'd expect, it gives you a nice introduction to the framework and a good grounding on the basics from which you can build. The course seems to generate interest and enthusiasm for the framework amongst developers.
  • Used the Zend Framework: While it was nice to shore up some of the very basics I felt the time, effort, and funds to take the course could of been better spent elsewhere. It will be nice to see Zend create a new higher level course to take developers to the next level – at least to the standard of certification and beyond. For that I would sign up immediately.












Tema Panorama minn Themocracy

7 viżitaturi online issa
6 mistednin, 1 bots, 0 membri
Max visitors today: 14 at 12:11 pm UTC
Dan ix-xahar: 26 fil 2011/07/05 12:35 UTC
Din is-sena: pm UTC 130 fil 28-03-2011 10:40
All time: 130 at 28-03-2011 10:40 pm UTC