Introduzzjoni
I xogħol fil-kumpanija, niltaqgħu ħafna impjiegi ipproċessar tal-lott miljuni ta 'rekords ta' data kull jum u jien kont qed jaħsbu reċentement dwar l-magni li tiltaqa madwar kull jum li ma jsir xejn għal bosta sigħat. Mhux se jkun 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' l-uffiċċju gradilja tuża ambjenti virtualised.
Fl -1 Parti I taw ħarsa ġenerali tas-sistema u t-teknoloġiji I se tkun qed tuża kif ukoll diskuss wħud mir-raġunijiet potenzjali għala inti tixtieq li toħloq netwerk uffiċċju.
Kontroll tax-Xogħol
Jekk int ser tkun qed taħdem l-impjiegi allura int se jeħtieġu xi mod biex imexxuhom. Impjieg kontroll tiegħek tas-sistema (fuq is-server xogħol tiegħek) jeħtieġ li jkun verament maħsuba tajjeb qabel saħansitra jippruvaw jimxu 'grid uffiċċju. Allura l-ewwel nett, liema huma l-kompiti għal sistema ta 'kontroll tax-xogħol:
- L-impjiegi bl-idejn fuq talba mill-ħaddiema
- Għid ħaddiema liema tip ta 'impjiegi li jimxu
- Track-impjiegi
- Jiżguraw li l-impjiegi huma jaħdmu biss darba
- Jipprovdu data tax-xogħol 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 l-kummerċ jara l-valur f'soluzzjoni grid. 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 'anki tmexxi diversi magni differenti ħaddiema li huma ottimizzati għal kull tip ta' xogħol (għalkemm dan ma jitbiegħdu mill-ħaddiem "ġeneriċi ) idea ". Dejjem ipprova biex jaħsbu dwar il-futur meta jkunu qed jiżviluppaw is-sistemi, viżjoni fit-qasir jista 'jwassal għal frustrazzjoni aktar fit-tul u l-ħin ta' żvilupp akbar.
Server impjieg
Aħna qed tmur għall-bżonn x'imkien biex jikkontrollaw l-impjiegi tagħna minn, dan għandu jkun l-unika sistema fil-grid tiegħek li għandha riżors locator fissa, tkun li l-indirizz IP, l-isem ospitanti, ikteb (bl-użu intern DNS), eċċ Dan huwa minħabba il-ħaddiema jeħtieġu li jkunu jafu fejn tfittex għal impjiegi, ħaddiema jeħtieġ li tinstab sistema ta 'kontroll tax-xogħol (mhux is-sistema ta' kontroll tax-xogħol isibu l-ħaddiema).
Il-server impjieg fih innifsu ma verament għandhom kompitu kkumplikata (fis-sistema bażika xorta), jeħtieġ li jaħżnu lista ta 'impjiegi, idejn l-impjiegi, jirċievi r-riżultati, u sussegwentement jaħżinhom għall-irkupru aktar tard. Kif dawn il-partijiet ('idejn l-impjiegi "bħall) huma definiti jistgħu jkunu bażika ħafna. Aktar tard nistgħu testendi s-sistema li tinkludi interface amministrazzjoni li jżidu, teditja, iħassru, jissospendu l-impjiegi iżda dan huwa lil hinn minn dan l-eżerċizzju.
M'hemm l-ebda raġuni tkun xi tkun imbagħad 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 bżonn disponibbiltà għolja, jekk jinżel fuq Ġimgħa filgħaxija int ser jitilfu l-weekend sħiħ ta 'l-ipproċessar, potenzjalment inti tiswa ftit ġimgħat valur ta' ħin għall-ipproċessar (meta mqabbla ma 'l-ipproċessar prinċipali tiegħek server biss) . Inti tista 'tixtieq li jikkunsidraw l-istabbiliment server xogħol tiegħek dwar ambjent bbilanċjat għall-disponibbiltà għolja.
Bażiku Setup
Il-setup bażiċi għall-server xogħol tagħna se jikkonsisti minn dak li jien sejħa waħda ta 'servers limp tiegħi (li huwa nux Li, m ySql, P HP). Il-kodiċi li jimxi fuq il-ħaddiema Thea se attwalment jaħdmu barra dak l-impjiegi li tista 'taħdem permezz ta' interazzjoni ma 'xogħol ma' databases sistema ta 'kontroll. Aktar tard nistgħu jinħoloq servizz tal-web u fil-fatt fl-idejn aktar milli l-impjiegi li 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 (Żommha sempliċi, Stupid!).
Allura, tikri joħolqu minn tlieta MySQL tabelli biex jittrattaw l-impjiegi. Dawn se jkunu impjiegi ``, `jobRecords`, u `jobResults`.
Hawnhekk jien bl-użu SQL Buddy alternattiva ftit kbir biex phpmyadmin biss minħabba eħfef tagħha biex jiġu installati fuq CentOS (għall-oħrajn ara: 10 alternattivi Kbar biex phpmyadmin )
Din it-tabella tikkonsisti tal-5 oqsma sempliċi,
- id: Unikament tidentifika l-impjieg
- Isem: Jista 'jkun hemm referenza klijent, jew kwalunkwe numru ta' identifikaturi oħrajn
- Status: Għandek bżonn tkun taf fejn l-impjieg hija, eż
- 0: Mhux beda
- 1: Qabad sa
- 2: Completed
- started_by: Min hu bdiet tagħmel l-impjieg? Dan mhux kollox meħtieġ iżda huwa sbieħ li jkollhom. I d jissuġġerixxu ħaddiema traċċar 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 'ħin nafu li għandna bżonn li jittellgħu l-impjieg għal darb'oħra u tibda l-ipproċessar mill-ħaddiem ieħor. Ħaddiema tista 'twaqqaf l-ipproċessar / tmur offline għal kull numru ta' raġunijiet, nuqqas ta 'enerġija, crash, it-telf tan-netwerk, eċċ
Huwa faċli kif din it-tabella tista 'tiġi estiża ma' oqsma addizzjonali ftit biex jippermettu għall-istatistika traċċar, kolonna żmien finitura biex tara kemm l-impjieg ħa, kontro biex tara kemm ħ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 ta 'xogħol aktar kumplessi ikun possibbli li wieħed jispeċifika kemm memorja tal-ħaddiem tkun teħtieġ aċċess għal (u għalhekk jużaw biss ħaddiema xierqa), jew saħansitra liema tip ta' ħaddiem ikun meħtieġ.
Tikri żid ftit impjiegi eżempju:
It-tabella li jmiss għal darb'oħra huwa pjuttost faċli biex tifhimhom, dawn huma r-rekords tax-xogħol tagħna. Dawn huma marbuta mal-tabella impjiegi prinċipali permezz ta '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ħmel eżempju sempliċi ħafna fejn għandna erba' kolonni:
- id: ID tar-rekord
- Isem: l-isem tal-persuna
- : Indirizz tal-persuna
- jobs_id: L-ID tax-xogħol li dan ir-rekord huwa marbut ma '
It-tabella tielet u laħħar tikkonsisti minn tabella riżultati, hija għandha l-istess jagħmlu l-mejda rekords tagħna, u biż-żieda ta 'xi kolonni tista' tkun parti tat-tabella jirreġistra:
- job_record_id: Rabta-riżultat li l-tabella impjieg
- Riżultat: Il-dejta tirriżulta
... 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 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 tax-xogħol tagħna għalina għal issa, għalhekk kull ma għandna bżonn li verament tagħmel hu li ssib impjieg li jeħ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:
- Tieħu kwalunkwe impjiegi li m'humiex immarkati kif kompluta iżda mill-ħaddiema tagħna u reset minnhom (sostitut __ME__ b'identifikatur, eħfef tkun indirizz IP):
AĠĠORNAMENT 'impjiegi `SET` istatus `= 0` FEJN istatus `= 1 U` started_by' = __ME__;
- Użu ta 'kriterji tagħna għażla tax-xogħol, tagħżel xogħol 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' l-istatus` = 0 JEW
(`Istatus` = 1 U `started_at`> DATE_SUB (ISSA (), intervall X siegħa)) ORDNI MILL `id 'ASC;
Permezz ħtif impjiegi li ma jkunux lura tirriżulta fl-ammont X ta 'żmien aħna jiżguraw li l-impjiegi huma mmexxija fil-każ ta' ħaddiem jiġġarrfu jew sejrin AWOL.
- Li jmiss grab-dettalji impjiegi segwit mill-rekords infushom:
TAGĦŻEL * MINN FEJN 'impjiegi `` started_by `= __ME__ LIMITI 1;
TAGĦŻEL * MINN FEJN `job_records` `` = id __JOBID__;
Mat-tlestija tax-xogħol aħna daħħal rekords riżultat tagħna u l-marka l-impjieg bħala komplet. Ftakar kif l-impjiegi tista 'tissospendi / jerġa' fi kwalunkwe ħin titħalla ċerta robustezza fil-iskrittura tiegħek. Jista 'jkun li l-kompitu tissospendi nofs triq permezz ta' aġġornament tas-sistema ta 'kontroll tax-xogħol, sabiex iċċekkjar tal-numru ta' rekords fl-impjieg u n-numru ta 'riżultati salvati lura għas-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 qafas SQL-mistoqsija inti għandek verament tkun abstracting kontroll xogħol tiegħek hekk li jekk inti tiddeċiedi li jaqilbu għal użu ta 'servizz web, sistema bbażata fajl, XML , jew kwalunkwe numru ta 'sistemi mhux se jaffettwa l-kodiċi hawn fuq.
Konfigurazzjoni tax-xogħol
L-aspett li wieħed għandu jikkonsidra huwa d-daqs tax-xogħol u l-konfigurazzjoni. Bil-logħob ma 'konfigurazzjoni xogħol nistgħu jonħoloq bilanċ eċċellenti bejn il-veloċità, replikazzjoni proċess, u l-affidabbiltà. Ħu xenarji ofa koppja:
- Impjiegi tieħu 1 jum kull jiddekorri: Dan ifisser li l-ħaddiema tiegħek bżonn 15-il ġurnata biex il-proċess kull biċċa xogħol (ftakar 10% ta 'l-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 ipproċessat jekk il-ħaddiem inizjali jmorru AWOL (ħin li jtellgħu li ma rritornax riżultat flimkien ma 'ħin riproċessar). Fi ideali youd jkollu mill-inqas impjieg full faċilment kklerjati mill-aħħar ta 'kull perjodu ta' idling twil, il-mod inti żżomm l-impjiegi timmarka fuq u fl-agħar każ xogħol se jieħu jumejn biex il-proċess għandu l-ewwel jisparixxi.
- 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 'inizjalment jidher ideali, inti jiksbu l-ipproċessar addizzjonali ta' xogħol waqt 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 stess. Per eżempju, l-ewwelnett proporzjon tiegħek ħin setup / ipproċessar huwa se jmorru dritt isfel, għalhekk jitilfu l-effiċjenza tas-sistema. Network tiegħek se tkun kontinwament streaming informazzjoni tax-xogħol għall-impjegati ħaddiema varji frustranti li huma dong kuljum tagħhom għall-xogħol tal-ġurnata. Int wkoll se jagħmlu pressjoni aktar fuq 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 li ma tlestiex billi impjiegi ikbar jista' ta 'tkomplija tal-proċedura blissfully konxji li s-server xogħol kienet qed tesperjenza diffikultajiet.
Fir-realtà se jkun hemm l-ebda konfigurazzjoni ideali waħda għall-setup grilja tiegħek, ħafna jiddependi fuq ir-riżorsi disponibbli, it-tipi ta 'ħtiġiet tax-xogħol, xogħol ħin tibdil, il-kapaċità tan-netwerk, u l-bqija. Madankollu xi linji gwida jkunu:
- Impjiegi daqs hekk li kull ħaddiem tista 'tikseb permezz ta' mill-inqas impjiegi 3-4 fil-perjodu ta '15-il siegħa (l-itwal perjodu probabbli ħin wieqaf)
- Jilagħbu bil-daqs impjieg sabiex dak iż-żmien setup isir pjuttost insinifikanti meta mqabbla mal-ħin ta 'pproċessar (meta wieħed iqis il-punt hawn fuq).
- Jekk ix-xogħol ma kompluta fl-doppju tal-ammont ta 'ħin (forsi inqas) li inti tistenna li jitlesta wieħed 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 tnaqqas dan iż-żmien, imma jkun attent li ma jitnaqqas wisq kif inti tista' tibda tidduplika kompiti l-ipproċessar fuq bażi regolari.
- Impjiegi għandhom ikunu indipendenti ta 'rekwiżiti barra kemm jista' jkun. Il-server tax-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 matul il-jum tiegħek ser issib użu tan-netwerk frustranti u problemi jistgħu jiġu esperjenzati bil-konnessjonijiet ħin out problema li se jkomplu jsiru biss agħar kif inti skala grilja tiegħek.
- Tiżgura l-impjiegi tista 'taħdem fuq il-ħaddiema tiegħek. Jekk l-impjiegi sar wisq memorja impjiegi intensivi jew disk-ispazju intensiva se 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 'Xogħol
Meta jissottomettu r-riżultati ta 'impjieg huwa importanti ħafna li tivverifika li r-riżultati ma ġewx ippreżentati mill ħaddiem ieħor, speċjalment jekk il-ħaddiem kurrenti kien 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 fil-irkupru u r-riżultati tax-xogħol sottomissjoni. Il-ħaddiema jistgħu (u probabbilment se) tmur fil-modalità tissospendi l-aktar inkonvenjenti 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ħall-impjieg ta 'kontroll tiegħek sistema ħafna aktar faċli biex jittrattaw.
Sommarju
F'dan il-TAQSIMA ħarisna lejn dak ta 'server ta' kontroll tax-xogħol jeħtieġ li jsir u kif tikseb sistema bażika ħafna mwaqqfa. Iddiskutejna kif sabiex tkun irkuprata xogħol mis-sistema ta 'kontroll u kif l-aħjar biex jiġi kkonfigurat l-impjiegi biex jiksbu l-aktar tagħna ta' sistema tiegħek grilja uffiċċju. Biex jintemm, paragrafu jew tnejn fuq sottomessi riżultati lura lis-server tal-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 mimlija
- Permezz abstracting xogħol tiegħek tagħżel / riżultati sottomissjoni aħna nistgħu nbiddlu l-teknoloġija tas-server tal-kontroll mingħajr problemi ferm
- Kkonfigurat impjiegi tiegħek biex tiżgura li huma jimxu malajr u b'mod effiċjenti mingħajr tqegħid wisq pressjoni fuq infrastruttura ta 'network tiegħek, u mingħajr ma jidduplikaw l-ipproċessar ħidmiet fuq bażi regolari.
- Jiżguraw li inti tibni tolleranza ta 'difetti u checking żball fis-rutini tiegħek, il-ħaddiema tista' tissospendi u tkompli u l-aktar inkonvenjenti ta 'drabi. Ftakar li tikkontrolla jekk ir-riżultati diġà ġew ippreżentati mill ħaddiem ieħor.
Li jmiss ħin
Fil -parti 3 aħna ser joħolqu magna tagħna ipproċessar virtwali u jistabbilixxu magni twieqi tagħna biex issir idle-time.