HTTP/1.0 200 OK Accept-Ranges: none Content-Location: http://www.evilprofessor.co.uk/category/internet/articles/ Content-Type: text/html; charset=UTF-8 Date: Wed, 31 Aug 2011 08:30:51 GMT X-Frame-Options: ALLOWALL Set-Cookie: PREF=ID=f9b73f108d3229bf:TM=1314779451:LM=1314779452:S=Ix5eC8En4ClD9ThM; expires=Fri, 30-Aug-2013 08:30:52 GMT; path=/; domain=translate.googleusercontent.com X-Content-Type-Options: nosniff Server: HTTP server (unknown) Cache-Control: private X-XSS-Protection: 1; mode=block Expires: Wed, 31 Aug 2011 08:30:51 GMT Evilprofessor.co.uk »Artikuj

Category: Artikuj

Oauth / Twitter auth Adapter për Zend Framework

Nga , e shtunë 23 prill 2011 03:57

Puna vazhdon (ngadale) mbi tim të ri Twitter aplikimit bazë. Gjatë disa ardhshme e pushimeve bankare unë shpresoj që të marrë vrull të shkojnë përsëri në projekt (në dritën e motit të mrekullueshme për momentin). Gjithsesi, detyra ime e ardhshme ishte për të krijuar një përshtatës authentication për Kornizën Zend . Unë kisha një zbatim të punës login, por ka një rënie në auth përshtatës për Zend Framework dukej si një propozim tërheqëse, kështu që unë krijuar atë ....

(Unë nuk do të kalojnë nëpër Oauth regjistrimit ose aplikimit tuaj me twitter, ka qindra të udhëzon dhe të procesit të saj mjaft të drejtpërdrejtë Gjithsesi.)
Vazhdo 'Oauth / Twitter auth Adapter për Zend Framework' leximin »

"Sign in me Twitter" duke përdorur Zend Framework

Nga , e enjte 17 mars 2011 01:07

Përkundër të gjitha urrejnë twitter në këtë moment, unë kam vendosur për të krijuar një të ri twitter aplikimit bazë. Duke qenë dikush që menaxhon disa llogari (si personale dhe për punën time bamirëse) Unë kam qenë që kanë nevojë për një mjet për diku që unë jam vetëm duke marrë rreth për të shkruar (më shumë se në të ardhmen e afërt ...).

Unë e kam lexuar deri në Zend_Oauth_Consumer dhe se si mund të përdoret për të marrë autorizim për përdorimin e ndërveprimit me eksitim oauth . Të gjitha të mirë dhe të mirë, unë kam kryesore e mia qasje dhe unë mund të postoni larg gëzim në emër të përdoruesit. Ka shumë të burimeve atje për të bërë këtë kështu që unë nuk do të popullit lindi.

Hapi tjetër ishte të lejojnë njerëzit të kthehen në faqen e internetit, hyni në llogarinë e tyre dhe të modifikojë. Kjo është ajo ku kam arritur në një problem të vogël. Duke përdorur shembuj kodin në faqet e internetit të thotë se unë do të kemi twitter pyetur mua për autorizim qasje përsëri për çdo login, nuk është e mirë. Duke analizuar në kuadër të kornizës unë nuk mund të shoh ndonjë gjë që do të më lejoni të vetëm të kërkojë authentication. Kjo nuk do të thotë se nuk e tij, por nuk duket të jetë një mekanizëm i vërtetimit që mund të përdoret pa e ditur shenjë qasje tashmë.

Alternativat ishin të zbatojë një log vend të bazuar në një farë mënyre ose dyqan shenjë e përdoruesit qasje në të klientit (Encrypted natyrisht). Asnjë nga këto dukej si një zgjidhje e mirë / të përshtatshme.

Vazhdo leximin "Sign in me Twitter" duke përdorur Zend Framework '»

Zend Certified Engineer (ZCE) 5.3

Nga , e enjte 30 shtator 2010 21:00

Me lirimin zyrtare e Certified Zend (ZCE) programi Inxhinier për 5,3 unë mendova se do të japin përshtypjen time të shpejtë të asaj që kam menduar të provimit.

Një sfond pak veten: unë të parë u prezantua në PHP rreth 7 vjet më parë dhe kanë punuar profesionalisht në PHP që nga viti 2006. Unë aktualisht punojnë për një emocionuese fillimin e quajtur Brightpearl bazuar në Bristol, Britani të Madhe , prodhimin CRM të integruar, të kontabilitetit, dhe software ecommerce. Unë nuk kam marrë më parë asnjë të kualifikimeve ZCE e mëparshme. Unë aktualisht zhvillohet në seri 5.2.X dhe nuk kanë përdorur të vërtetë asnjë nga 5.3 karakteristikat specifike (Unë jam duke pritur për Zend Framework 2 dhe Doktrina 2) ne projektet e mia të zhvillimit.
Vazhdo 'Zend Certified Engineer (ZCE) 5.3' leximin »

Quick Symfony Fillimi DI (Injection varësisë) Tutorial

Nga , e shtune 14 gusht 2010 02:21

Çfarë është Injection varësisë (DI)?

Injeksion varësisë është një teknikë që lejon për objektet e shoqëruar lirshëm brenda një software application. Në përgjithësi, nëse një objekt kërkon qasje në funksionalitetin e një tjetër ajo do të jetë instantiated brenda vendit që çon në sistemet e shoqëruar fort. Duke zbatuar injeksion varësisë ne injektuar objektet e nevojshme gati për përdorim (nganjëherë referuar edhe përmbysja e kontrollit - IOC). Merrni shembullin e mëposhtëm:

  <? Php
 klasë DecisionMaker {
     makeDecision publike function (array $ parametrat) {
         / / Nevoja përshtatës të dhënave
         $ Dp = new DecisionParameters ();
         $ ParameterScore = $ dp-> getScore ($ parametrat);
         / * ...  Logjika e disa më shumë vendim ...  * /
         kthimit ($ parameterScore> 50);
     }
 } 

Kjo pjesë e kodit është thënë të jetë e shoqëruar ngushtë me objektin DecisionParameters. Rishkrimin e mësipërme në një mënyrë të shoqëruar lirshëm ne do të kemi diçka si ....

  <? Php
 klasë DecisionMaker {
     private $ _dp;
     __construct publike function ($ PD) {
         $ This-> _dp = $ dp;
     }
     makeDecision publike function (array $ parametrat) {
         $ ParameterScore = $ this-> _dp-> getScore ($ parametrat);
         / * ...  Logjika e disa më shumë vendim ...  * /
         kthimit ($ parameterScore> 50);
     }
 } 

Ndërsa duke fituar të mirat e kodit të shoqëruar lirshëm ne jemi duke shtuar kompleksitetit të tillë që çdo herë që një objekt është instantiated ne gjithashtu duhet të ilustroj me shembull konkret varësi të saj dhe të kalojë këto në shumë. Për shembull, këtë:

  $ Zgjedhja = DecisionMaker ri ();
 echo $ zgjedhje-> makeDecision (array ('përpjekjeve' => 'të ulët', 'Kthehu' => 'të lartë')); 

tani bëhet:

  $ Dp = new DecisionParameters ();
 $ Zgjedhja = new DecisionMaker ($ PD);
 echo $ zgjedhje-> makeDecision (array ('përpjekjeve' => 'të ulët', 'Kthehu' => 'të lartë')); 

Kjo situatë bëhet më e dhimbshme si numri e varësisë për një klasë është rritur, dhe çka nëse varësinë vetë kanë varësi? Kjo mund shumë shpejt të bëhet një administratë objekt ankth! Shkruani enë injeksion varësisë (ose kornizave) ...
Vazhdo leximin 'e Shpejta Symfony Fillim DI Tutorial (Injection varësisë)' »

Zend_Layout lakuriq dhe Zend_View

Nga , e martë 10 gusht 2010 11:47

Në këtë artikull unë shoh në përdorimin Zend_Layout dhe Zend_View së bashku me një kontrollues të thjeshtë përpara për të treguar se si është e mundur për të filluar që ndan logjikën e biznesit dhe paraqitja në aplikimin tuaj. Të gjitha Kodi është në dispozicion në github:
Zend_Layout zhveshur dhe Zend_View në GitHub .

Vazhdo 'Zend_Layout Naked dhe Zend_View' leximin »

Zend Framework Per Layout Settings Moduli - Follow Up

Nga , e martë 16 shkurt 2010 08:48

Si vazhdim deri në postin e mia të mëparshme në parametrat bazë të modulit për paraqitjen për Zend Framework , unë kam updated kodin që kërkojnë konfigurimin më pak se më parë (jo se ajo kërkohet më shumë se disa rreshta në konfigurimin e aplikimit!).
Vazhdo 'Korniza Zend Per Settings Layout Moduli - Follow Up "leximin»

Krijimi URL në Zend Helper Custom Shiko

Nga , e enjte Jan 28, 2010 11:01

Kjo mund të duket e thjeshtë, por unë isha banging kokën duke u përpjekur për të krijuar një URL në një ndihmë të parë porosi në Zend Framework . Unë kam kurs përbërje e cila merr modul nga nën-fushë në përdorim kështu që unë nuk mund të përdorin një URL të thjeshtë hardcoded.

Vazhdo 'URL Krijimi në Zend Helper Custom Shiko leximin »

Kërkesat rrugë për sitemap.xml të kontrollues porosi / veprimit

Nga , e mërkurë 6 Jan 2010 12:13

Në mënyrë që kërkesa të drejtpërdrejta për / sitemap.xml për një kontrollues me porosi dhe veprimin në tuaj Zend Framework aplikimit thjesht shtoni e mëposhtme në application.ini tuaj ose fotografi alternative config (p.sh. I use navigation.ini):

 resources.router.routes.sitemap.route = "sitemap.xml"
 resources.router.routes.sitemap.defaults.controller = indeksi
 resources.router.routes.sitemap.defaults.action = sitemap

Kodi shembull për kompjuteri mund të shihet duke krijuar një veprim në kontrollues të përshtatshme (p.sh. sitemap tim qëndron në kontrollues indeksi, veprimi sitemap):

 < php
 klasës IndexController
     shtrihet Zend_Controller_Action
 {
     / **
      * E bën një sitemap bazuar në përbërje Zend_Navigation
      * /
     sitemapAction publike function ()
     {
    	 echo $ this-> pamje-> navigacion () -> sitemap ();
    	 $ This-> pamje-> paraqitjen () -> disableLayout ();
    	 $ This-> _helper-> viewRenderer-> setNoRender (e vërtetë);
     }
 }

Sitemaps shpejt dhe lehtë mund të jetë prodhuar duke përdorur Zend_Navigation , një tutorial të madhe të shpejtë (dhe në përgjithësi shumë të dobishme për Zend mësime Kornizë) është Zend hedh - dinamike duke krijuar një menu një sitemap dhe breadcrumbs .

Computing Grid Zyra e ambiente përdorur Virtual - Pjesa 4

Nga , e premte 4 dhjetor 2009 11:59

Hyrje

Unë punoj në një kompani ku kemi drejtuar shumë vende pune grumbull përpunimin e miliona e të dhënave të të dhënave të çdo ditë dhe unë kam qenë kohët e fundit duke menduar për të gjitha makinat që ulen rreth çdo ditë duke bërë asgjë për disa orë. Nuk do të jetë mirë nëse ne mund të përdorim këto makina për të forcuar pushtetin përpunimin e sistemeve tona? Në këtë grup të neneve Unë do të shikojmë në përfitimet e mundshme e punësimit të një zyre të rrjetit duke përdorur mjedise virtualised.

pjesën e 3 ne kemi krijuar virtuale makinë tona të përpunimit dhe të ngritur dritaret makina të bëhen boshe-punëtorët me orar.

Drejtimin kodin fundit

Në mënyrë të pashmangshme, pas krijimit të punëtorëve logjika e biznesit tuaj do të ndryshojë, mete do të gjenden, kodi më të shpejtë më efikas do të prodhohen duke lënë punëtorët tuaj ulur rreth përpunimit të të dhënave duke përdorur kodin e vjetër erë të keq . Si atëherë nuk kemi të siguruar që ne jemi gjithmonë duke përdorur versionin e fundit dhe më të madh të Scripts tona të përpunimit?

Ka disa mënyra shumë e lehtë të thjeshta ne mund të bëjmë këtë, mashtrim, megjithatë, është për të zvogëluar pushtetin e përpunimit dhe të trafikut të rrjetit në arritjen e kësaj. Le të fillojmë me më të thjeshtat e zgjidhjeve dhe për të përmirësuar atë ngadalë mbi disa iterations.

Metoda e parë do të ishte thjesht të lidheni me serverin tonë të kontrollit të punës (me anë të samba, FTP, ose të ngjashme) dhe tërheq poshtë versionin më të fundit të kodit. Jo shumë efikase, por ajo do të bëjë punë. Lejon të përmirësuar në këtë disi, si për krijimin e një script rsync dhe duke përdorur atë kohë çdo vend? Përndryshe ajo që për vënien e fundit script tona të përpunimit në përmbysjes kontrolluar nga kodi fillimisht dhe pastaj vetëm përditësimin kodin tonë në çdo të drejtuar ( svn rinovuar )?

Në fund, ne mund të përfundojë me një skenar bash (i quajtur nga cron çdo 10 minuta), që duket aq e thjeshtë si ky:

  #! / Bin / sh
 nëse ps sëpatë | grep-v grep | grep php > / dev / null
 pastaj
     echo "Job është aktualisht e përpunimit, dalja"
 tjetër
     echo "Job nuk është i rrjedhshëm, të fillojnë tani"
     cd / path / to / pune / kopje
     svn rinovuar
     php yourJobProcessingScript.php
 fi 

Tani ne mund të jetë i sigurt se me çdo drejtuar ne jemi patjetër duke kodin fundit. Ne jemi të siguruar këtë me përditësimin e bazës tonë kodin çdo herë ne kryejmë një afat dhe reduktimin e trafikut të rrjetit vetëm nga dallimet transferuar dosjen në rrjetin tonë.

Në demonstratën setup tim, kam bërë pikërisht si më sipër. Subversion ishte instaluar në server të përpunimit të punës sime dhe unë thjesht tërhoqi kodin e fundit nga një degë 'punëtorit' përdorur 'svn freskimi'. Unë gjithashtu shtoi një tag numrin e versionit të shkrimit tim të përpunimit i cili u kthye në bazën e të dhënave, si pjesë e kthimit të rezultateve. Në këtë mënyrë unë mund të shoh se kodi im ishte duke u përditësuar çdo herë kam kopjuar bagazhin tim në degën përkatësisht punëtori që unë isha patjetër drejtimin e shkrimit të fundit të përpunimit.

Duke përdorur të dhënat e fundit

Nëse përpunimi tuaj të punës e bën përdorimin e burimeve të të dhënave pastaj në disa pika këto do të jenë updated too. Nëse ju telefononi burimeve të të dhënave tuaja mbi një bazë shumë të rrallë ju do të jeni përmbytjeve rrjetit tuaj me trafik sa më shpejt që punëtorët tuaj të fillojnë duke e çuar çdo gjë në vend numëro. Për zgjidhjen e mia unë kam vendosur që do të doja të lëvizur burimet e mia të dhënat e rreth me VMs tim.

Hold jeni kuaj atje! Çfarë ndodh nëse burimet e mia të dhënat janë të mëdha? E pra kjo është me të vërtetë një rast të se sa të dhëna janë të flasim? Ajo mund të jetë me kosto më efektive për të instaluar një disk shtesë të madhe të vështirë në çdo makinë se sa për të blerë një server të tjera të përpunimit. Kjo është një pyetje e buxhetit dhe është deri në të biznesit për të vendosur. Është ndoshta sepse burimet tuaja të dhënat janë kaq të madh që. Parealizueshme vetëm për të mbajtur se shuma e të dhënave në makina tuaja punonjësit e saj Në këtë rast çfarë do të bëni? Edhe ne mund të shikoni në një lokal quajtur server të dhënave, por kjo mund të shkaktojë probleme me rrjetin. Në këtë rast një sistem të rrjetit të tilla si ky mund të bëhen jorealiste që të përfshijë në mjedisin tuaj zyre. Ajo mund të jetë që ju mund të shikoni në strategjitë alternative në punë, për shembull, vetëm duke bërë thirrje punëtorëve tuaj 8:00-06:00 çdo natë dhe / ose të dhënave throttling kërkesa burim.

Lëvizja më lejon të thonë shumë burime të dhënat tona për 100Gb të të dhënave. E pra po kjo është shumë pak e të dhënave për të lëvizur rreth rrjetit në një update. Si do të sigurohemi që ne kemi kopje të fundit të të dhënave në këtë rast? Rsync është një mundësi, por personalisht unë mendoj se me drejtimin e burimit të fundit të dhënat tuaja në serverin tuaj të punës dhe përpunimin e vënë këtë si një master në replikimin (me një regjistër të bukur të gjatë bin) mund të jetë rruga për të shkuar:

përsëritje Me vendosjen e secilit prej punëtorëve tuaj si një skllav të reja të kontrollit të punës server burimeve të dhënat tuaja do të rrjedh poshtë bukur për punëtorët tuaj pa një rritje të madhe në aktivitetin e rrjetit (që është nëse nuk keni kryer një i madh përditësimin e të dhënave dhe të gjithë punëtorët tuaj goditje në në të njëjtën kohë). Kjo ka avantazhe mbi rsync në atë që ju nuk do të merrni një pauzë të gjatë para çdo punë, si më të reja të të dhënave, mysql daemon për punonjësit tuaj do të vazhdimisht update të dhënat e tij, ndërsa të përpunimit të vazhdon.

Kjo është se si unë ngritur serverin tim demonstrim. Për të ngritur replikimin e kam ndjekur udhëzues në faqen e mySQL ( Ngritja replikimin e ) dhe brenda 20 minutash kam bashkëpunëtori im inital përsëritur të kontrollit të punës dataset servers. Për çdo punëtor shtesë settings replikimit dhe procesit të punuar çdo herë kur VM është kopjuar.

Përmbledhje

Në këtë seksion të artikullit ne kemi shikuar se sa e lehtë dhe pa dhimbje ajo është për të mbajtur kodin tuaj të përpunimit deri tani nga using rsync ose subverion (SVN) për të bërë punën dhe për të reduktuar trafikun e rrjetit në të njëjtën time. Ne gjithashtu diskutuam se si për të mbajtur të dhënat të dhënat tuaja burim up-to-date duke e lejuar atë që rrjedh poshtë për secilin prej punëtorëve tuaj. Kështu që ne zonën e siguruar se do të vazhdojmë deri me logjikën e biznesit dhe informacionin në sistemin e rrjetit tonë zyra. Ka padyshim do të jetë alternativa të panumërta për kryerjen e këtyre detyrave, por këtu janë dy shembuj të thjeshtë për të treguar se sa e lehtë një zgjidhje për të ardhur nga.

Herën tjetër

Në pjesën e fundit të kësaj serie, quajtur me vend Pjesa 5 , ne do të diskutuar vendosjen e këtij sistemi për të. Unë do të përmbledh atë që është mësuar dhe atë që kam arritur për të krijuar.

Computing Grid Zyra e ambiente përdorur Virtual - Pjesa 3

Nga , e premte 4 dhjetor 2009 11:37

Hyrje

Unë punoj në një kompani ku kemi drejtuar shumë vende pune grumbull përpunimin e miliona e të dhënave të të dhënave të çdo ditë dhe unë kam qenë kohët e fundit duke menduar për të gjitha makinat që ulen rreth çdo ditë duke bërë asgjë për disa orë. Nuk do të jetë mirë nëse ne mund të përdorim këto makina për të forcuar pushtetin përpunimin e sistemeve tona? Në këtë grup të neneve Unë do të shikojmë në përfitimet e mundshme e punësimit të një zyre të rrjetit duke përdorur mjedise virtualised.

pjesën 2 kemi shikuar në punë një server do të shkojë, dhe sa punë duhet të konfigurohet në mënyrë që të arrihet shuma më të mëdha të përpunimit, ndërsa të siguruar se çdo punë është përpunuar pa të dështojnë.

Ngritja punëtor tuaj - ose server butë

Hapi i ardhshëm në këtë proces është për të ngritur punëtorët tuaj virtuale. Për këtë unë do të përdorin një instalimin e CentOS përdorimit VirtualBox. Unë do të instalojë mySQL dhe PHP në server, i njohur gjithashtu si një (nux ​​Li, m ySQL, P HP) Server butë (Unë mund të kenë bërë që emri i lart).

  • Install VirtualBox në dritare kompjuterin tuaj (ndiqni link)
  • Shkarkoni dhe instaloni CentOS (versionin e tanishëm 5.3) brenda një makinë krijuar virtuale

Nuk ka asnjë pikë unë do të këtë ka ndoshta 1.000 's i mësime të mëdha atje (ok, këtu është një: Krijimi dhe Managing CentOS makinë virtuale nën virtualbox ). Pika e rëndësishme të theksohet unë mendoj është se unë quhet makinën time virtuale GridMachine.

Sa i përket zgjedhjes sime të klientit virtualisation dhe të sistemit operativ të shkuar nuk ka asnjë arsye bindëse e madhe për çdo zgjedhje. VirtualBox është diçka që unë e përdor në kompjuterin e shtëpisë sime dhe është mbështetur nga tre sistemet operative të mëdha. Unë zgjodha CentOS si një OS saj të mirë të qëndrueshme dhe ta përdor atë në serverin tim web. Unë jam një besimtar të madh në mjetet e duhur për punë (edhe pse unë jam duke aplikuar "përdorimin e shpejtë dhe e lehtë për ju mentalitetin këtu), kështu që nëse X sistemit operativ shkon kodin tuaj të shpejtë dhe më efikase të përdorur që në vend:)

E rëndësishme të sigurohemi që VM juaj përdor DHCP, përndryshe për çdo makinë të re virtuale do të duhet të konfigurohet vete e cila është diçka që ne nuk want.By duke përdorur DHCP ne nuk kemi nevojë për konfigurimin e rrjetit settings individualisht për makinat e punëtor, DHCP do t'ia IP për ju. Prandaj ju mund të kopjoni kompjuterin tuaj virtuale per zyra, pa u shqetësuar për vendosjen e çdo një dorë (kjo përmirëson scalability dhe redukton administratës punëtor).

Procesi ju duhet të synojnë për të arritur do të jetë për të marrë një makinë të re fizike, të instaluar VirtualBox, dhe pastaj shumë e shumë të vendosur imazhin virtual pa shumë tjetër. Mund të jetë urtë të setup gjithë punëtorët tuaj në një subnet të ndryshme në mënyrë që ju të mund të paktën të shihni se sa shumë makina të vrapojnë. Ju gjithashtu duhet për të ngritur makina tuaj në një qira të gjatë apo të pakufizuar me qira DHCP.

Si për të kandiduar Jobs në punëtori

Kjo është një fushë interesante dhe ka disa metoda të vlefshme për përpunimin e punë të punonjësit. Këtu unë do të diskutojë vetëm dy më të dukshme:

  • Përjetësisht running script: Një skenar, qoftë një script shell, apo një script PHP kryhet një herë në punëtori dhe do të vazhdojë si pjesë e një lak pafund. Unë e kam zbritur këtë metodë si një përplasje e shkrimit dhe potencialisht punëtorët tuaj do të pushojë për të kandiduar, pa ndonjë lloj të intervenimit.
  • Bazuar cron script ekzekutimit: Çdo minuta X daemon cron nis një thirrje për të shkrimit tuaj për të marrë gjërat do. Pa disa kontrolluar kjo mund të çojë në shumë kopje shumë për drejtimin e shkrimit tuaj punëtor.

Vendimi im ishte për të shkuar me cron e cila nisi një script shell çdo 10 minutes. script ime shell kryen detyrat e mëposhtme:

  1. Marrë një listë proces dhe grep këtë për 'PHP'. Nëse nuk u gjet pastaj të vazhdojë.
  2. Telefononi kodin tuaj të punës, në rastin tim kjo do të ishte diçka e bazuar PHP
  3. Script punëtor përfundon garën e saj
  4. Gati për të shkuar përsëri në thirrjen e ardhshme të përshtatshme

Script ime bash duket diçka si në vijim:

  #! / Bin / sh
 nëse ps sëpatë | grep-v grep | grep php> / dev / null
 pastaj
     echo "Job është aktualisht e përpunimit, dalja"
 tjetër
     echo "Job nuk është i rrjedhshëm, të fillojnë tani"
     php yourJobProcessingScript.php
 fi 

Shënim: echo janë pothuajse tërësisht të pakuptimta, por mund të ndihmojë personi tjetër që vjen së bashku të përpiqen dhe të modifikoni ato.

Që përfundon ngritjen e makinës virtuale punëtorit, të shpejtë, i thjeshtë dhe e lehtë për kopje të çdo pjesë të re të pajisjeve që është pranuar. "Zgjuarsi" e sistemit të rrjetit të vërtetë nuk është në OS visualized e tij, të gjithë të bëjë me kodin e krijuar për të procesit të punës, të konfigurimit të punës, dhe në marrjen e sigurt se puna shkon kur është e përshtatshme (dmth., kur të presë është i papunë ).

Ngritja e Windows për fillim të Punëtorëve

Detyra e parë është që të punojë me komandën e nevojshme për të drejtuar makinës virtuale nga vija e komandës dritaret. Nëse e keni instaluar virtualBox në vend default dhe ju keni emrin GridMachine tuaj punëtor, atëherë komanda e nevojshme për të ngarkesës deri punonjësi juaj është:

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

Megjithatë, për të drejtuar script në një shtet "pa kokë" ne kemi nevojë për të përdorur:

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

Kjo do të fillojë në makinë virtuale pa GUI dhe të lejojë atë për të ruajtur shtetin gracefully. Argumenti i dytë fiket RDP kështu që nuk ka konflikt me dritare RDP, apo të ju jap një mesazh për të dëgjuar në portin 3389. Emri virtual machine është raste të ndjeshme!

Tjetra, ne do të duhet për të vendosur dritare deri në fillojë VM tonë punëtor një herë në makinë ka qenë i papunë. Për ta bërë këtë (në Windows XP) ju do të duhet të shkoni Start -> All Programs -> Accessories -> System Tools -> Scheduled Tasks si më poshtë:

detyrave të planifikuara

Klikoni Next për 'Add Scheduled Task' e ndjekur nga shfletoni për të shtuar një program me porosi. Shkoni tek shkrimit tuaj VBoxManage dhe klikoni OK. Orari detyra e juaj për ndonjë prej opsioneve (që ne do të ndryshojë këtë në një minutë) dhe të vazhdojë. Pas duke lënë mënjanë ekranin e ardhshëm Windows do të ju pyes që ju doni të drejtuar këtë detyrë, unë do të sugjeroj ose 'Administrator', ose krijimin e një përdorues të ri të privilegjuar. Mos harroni ne nuk duam të ndërhyjë me llogari stafin standarde në makinë në çdo pikë. Klikoni Next dhe kontrolloni tregojnë opsione të avancuara për këtë detyrë.

Deri në fund të textbox drejtuar add vargun tonë 'startvm GridMachine' dhe për të siguruar që të kandidojë vetëm kur keni hyrë brenda është lënë unticked. Vizitoni detyrë orarin e ardhshëm dhe për të ndryshuar orarin bjerë poshtë në opsionin ', kur boshe ", të zgjedhin sasinë e kohës që ju dëshironi makinë të jetë boshe para se të lëvizin për në skedën tjetër.

Së fundi untick opsionin i cili thotë ndaluar detyrë në qoftë se ajo ka qenë duke sasi të X të kohës, por mos shënoni mundësi për të ndaluar detyrë nëse makina nuk është më i papunë.

orar

Kjo është ajo, atëherë për setup host dritaret!

Përmbledhje

Në këtë pjesë ne kemi ngritur një makinë virtuale për të vepruar si një punëtor, si dhe mënyrën në të cilën ne e quajmë dhe ekzekutuar përpunimin tonë të punës Scripts (për veten një skenar PHP). Nga këtu shohim se si për të ngritur kopje tonë të dritareve të fillojnë deri në makinë virtuale në mënyrë të pa kokë kur kompjuteri bëhet i papunë, dhe për të shpëtuar shtetin e tij kur përdoruesi rifillon përdorimin e makinës. Shpresojmë se në këtë pikë ju jeni duke parë sa e thjeshtë është për të ngritur një sistem të tillë dhe janë të kruhet për të marrë disa eksperimente do veten!

Herën tjetër

Pjesa 4 ne do të jetë në kërkim në të duke përdorur mjetet për të siguruar që ju jeni duke versionin e fundit të burimeve të kodit dhe të dhënat në mënyrë që rezultatet e arritura janë gjithmonë up-to-date me informacionin e biznesit të fundit dhe logjikës.













Theme Panorama nga Themocracy

12 vizitorë online tani
7 vizitorë, 5 bots, 0 anëtarë
Max vizitorët sot: 17 at 2:46 UTC
Këtë muaj: 23 at 5:40 UTC 24-08-2011
Këtë vit: 130 at 22:40 UTC 28-03-2011
Gjithë kohës: 130 at 22:40 UTC 28-03-2011