Tagged Prispevkov: Linux

Urad Grid Computing uporabo virtualnih okolij - 4. del

Z in petek 4 december 2009 23:59

Predstavitev

Delam v podjetju, kjer deluje veliko delovnih mest paketno obdelavo milijone zapisov podatkov vsak dan in sem pred kratkim razmišljal o vseh naprav, ki sedijo okrog vsak dan nič ne delaš več ur. Ali ne bi bilo dobro, če bi lahko uporaba teh strojev za okrepitev procesorske moči naših sistemov? V tem sklopu člankov bom pogled na možne koristi zaposlovanja za pisarniško omrežje z uporabo virtualiziranih okolij.

V delu 3 smo ustvarili svoj ​​virtualni stroj za obdelavo in vzpostaviti stroji okna, da postane idle delovnim časom.

Nameščeno najnovejšo kodo

Neizogibno po ustvarjanju svoje delavce poslovno logiko bo spremenilo, bo mogoče najti hrošči bodo hitreje bolj učinkovito kodo proizvaja in tako ostane vaši delavci sedeli okoli obdelave podatkov z uporabo starega smrdljiv kodo . Kako potem ne bomo zagotovili, da smo vedno z najnovejšo in najboljšo različico naših obdelavo skript?

Obstaja nekaj zelo preprostih preprostih načinov, kar lahko storimo to, trik pa je zmanjšati procesorske moči in omrežnega prometa pri doseganju teh ciljev. Začnimo z najbolj enostavna rešitev in jo izboljšati počasi nekaj ponovitev.

Prvi način bi bil, da preprosto povezati na naš strežnik delovnih nadzor (prek sambe, FTP, ali podobno) in podirajo najnovejšo različico kode. Ni zelo učinkovito, vendar pa bo to delo. Omogoča izboljšanje na tem nekako, kaj pa ustvarja rsync scenarij in uporabo tega vsakič, namesto tega? Druga možnost je, kaj pa polaganje naše najnovejše obdelavo skript v Subversion preverjanje ven kodo na začetku in potem samo posodobiti našo kodo na vsaki vožnji ( svn update )?

Na koncu bi lahko na koncu z skripto (bash razpiše cron vsakih 10 minut), ki je videti tako enostavno, kot je ta:

  #! / Bin / sh
 če ps ax | grep-v grep | grep php > / dev / null
 Nato
     echo "Job trenutno obdelave, izhoda"
 drugega
     echo "Job se ne izvaja, začeti zdaj"
     cd / pot / do / delovne / kopije
     svn update
     php yourJobProcessingScript.php
 povezava 

Sedaj smo lahko prepričani, da se z vsako vožnjo bomo zagotovo teče zadnji kodo. Mi smo da se to doseže s posodobitvijo našo kodo base vsakič opravimo vožnjo in zmanjšanje omrežnega prometa le za prenos datotek razlike med našo mrežo.

Po mojem demonstracijskega namestitvi, sem točno tako, kot zgoraj. Subversion je bil nameščen na mojem strežniku delovnih mest za obdelavo in sem enostavno potegnil najnovejšo kodo iz "delavec" podružnice uporabljajo "svn posodobitev". Prav tako sem dodal oznako številko različice na moj obdelavo skript, ki se je vrnil v bazo podatkov kot del napovedi rezultatov. Tako sem videl, da je moja koda posodablja vsakič, ko sem prekopiral moj prtljažnik v tj delavcev panoge, da sem definitivno teče zadnji obdelavo skript.

Z uporabo najnovejših podatkov

Če vaše delo obdelava omogoča uporabo virov podatkov potem na neki točki ti se bodo tudi posodobiti. Razen če pokličete svoje vire podatkov na zelo redke osnovi si boš poplav svoje omrežje s prometom takoj, ko vaši delavci začeli prikazovati prinaša vse do mirovanja. Za moje rešitve sem se odločil, da bi rad, da se premaknete svoje vire podatkov okrog z mojimi imajo proizvajalci.

Drži, da si konji tam! Kaj pa, če moji viri podatkov so ogromne? Pa to res primer, koliko podatkov govorimo? To je lahko bolj stroškovno učinkovito namestiti dodaten večji trdi disk v vsakem stroju kot za nakup dodatnega strežnika za obdelavo. To je vprašanje proračuna in je določena s strani podjetja odločiti. Prav mogoče, da bodo vaši viri podatkov so tako velike, da je njena samo neizvedljiva, da bo to količino podatkov v svojih delavcev strojev. V tem primeru, kaj bi storili? No, lahko pogledamo kliče lokalno podatkovnega strežnika, vendar pa to lahko povzroči težave z omrežjem. V tem primeru lahko omrežji, kot je to postalo nerealno vključiti v pisarniško okolje. Lahko je tudi, da si lahko ogledate v alternativne potekajo strategij, na primer samo kliče svoje delavce med 8pm in 6am vsak večer in / ali dušenje virov podatkov zahteva.

Gremo naprej recimo naše podatkovne vire znesek za 100 GB podatkov. No ja to je zelo malo podatkov za premikanje po mreži na posodobitev. Kako bi zagotovili, da imamo najnovejšo kopijo podatkov v tem primeru? Rsync je možnost, vendar osebno mislim, da s tekom svoje najnovejše vir podatkov na strežniku delovnih mest za obdelavo in vzpostavitev to gor kot mojster v replikacijo (z lepo dolgo dnevnik bin) je lahko pot:

replikacija Z določitvijo vsako od vaših delavcev gor kot sužnja na delovnih posodobitve strežnika za nadzor vaših virov podatkov bo čezmejno nakupovanje lepo vašim delavcem, ne da bi veliko povečanje aktivnosti omrežja (to je, če ne opravljajo ogromno podatkov, posodobitev in vse svoje delavce brcnil v naenkrat). To ima prednosti pred rsync v tem, da si ne bi dobili dolgem premoru pred vsako delo, kot so podatkovne baze posodobitve, mysql bo daemon na vašem delavec stalno obnavljati svoje podatke, medtem ko je predelava nadaljuje.

To je, kako sem ustanovil svoj predstavitveni strežnik. Če želite nastaviti replikacijo sem sledil navodilom na spletni strani mySQL ( Nastavitev replikacije ) in v 20 minutah sem imel inital delavca posnemanja strežnikov nabor podatkov za nadzor delovnih mest. Za vsako dodatno delavca so replikacije nastavitve in procesov dela vsakič, ko je bila kopirana VM.

Povzetek

V tem delu članka smo proučevali, kako enostavno in neboleče je, da vaš obdelavo kodo na tekočem z funkciji rsync ali using subverion (SVN), da ne dela in zmanjšanje omrežnega prometa ob istem time. Govorili smo tudi o tem, kako , da vaš vir podatkov podatke up-to-dan tako, da se je na čezmejno nakupovanje na vsako od vaših delavcev. Tako smo površina zagotavlja, da bomo sledili poslovno logiko in informacij v naš sistem pisarniškega omrežja. Tam bo zagotovo nešteto možnosti za izvedbo teh nalog, ampak tukaj sta dve preprosti primeri bi jih lahko pokazali, kako enostavno rešitev je, da dobiti.

Naslednjič

V zadnjem delu te serije, aptly imenovan 5. del , bomo razpravljali o uvajanju tega sistema. Jaz bom povzeti, kaj je bilo tisto, kar sem se naučil, in uspelo ustvariti.

Urad Grid Computing uporabo virtualnih okolij - 3. del

Z in petek 4 december 2009 11:37 pm

Predstavitev

Delam v podjetju, kjer deluje veliko delovnih mest paketno obdelavo milijone zapisov podatkov vsak dan in sem pred kratkim razmišljal o vseh naprav, ki sedijo okrog vsak dan nič ne delaš več ur. Ali ne bi bilo dobro, če bi lahko uporaba teh strojev za okrepitev procesorske moči naših sistemov? V tem sklopu člankov bom pogled na možne koristi zaposlovanja za pisarniško omrežje z uporabo virtualiziranih okolij.

V delu 2 se pogledal v službah, strežnik bo delujejo, in kako je treba delovna mesta nastavljen, da bi dosegli največjo količino obdelave, ob zagotavljanju, da je vsako delovno mesto obdelujejo obvezno.

Nastavitev delavca - ali Limp strežnik

Naslednji korak v procesu je, da vzpostavijo svoje virtualne delavcev. Za to bom uporabite namestitev CentOS z uporabo VirtualBox. Bom namestiti MySQL in PHP na strežniku, znan tudi kot šepanja (Li nux, m ySQL, P KM) Server (sem lahko to ime navzgor).

  • Namesti VirtualBox na vašem računalniku Windows (sledite povezavi)
  • Prenesite in namestite CentOS (trenutna različica 5.3) v ustvarjen virtualni stroj

Nima smisla me bo to tam je verjetno 1.000 's velikih vaj tam (ok, tukaj je ena: Ustvarjanje in Managing CentOS stvaren stroj v VirtualBox ). Pomembno je tudi omeniti Mislim, da sem poklical moj virtualni stroj GridMachine.

Kar zadeva moje izbire naročnika virtualizacije in operacijskega sistema iti ni velik prepričljiv razlog za vsako izbiro. VirtualBox je nekaj, kar uporabljam na mojem domačem računalniku in je podprt s strani treh glavnih operacijskih sistemih. Sem izbral CentOS so njegove dobre stabilen OS in ga uporabljam na svoj lasten spletni strežnik. Jaz sem velik vernik v pravih orodij za to delo (čeprav sem uporabo "uporaba najhitrejši in najlažji za vas" miselnosti tukaj), tako da, če operacijski sistem X teče kodo hitreje in bolj učinkovito uporabljati, da namesto :)

Pomembno je zagotoviti, da vaš VM uporablja DHCP, drugače pa je pri vsaki novi virtualni stroj, bi bilo treba posebej nastavljena, ki je nekaj, česar ne want.By uporabljate DHCP nam ni treba nastaviti nastavitve omrežja za posamezno delavcev strojev, bo DHCP roko iz IP za vas. Zato lahko kopirate svojo navidezno napravo o pisarni brez skrbi nastavitev vsakega posebej navzgor (to izboljša prilagodljivost delavcev in zmanjšuje upravo).

Proces si mora prizadevati, da se doseže bi bilo pridobiti nov stroj, fizično namestitev VirtualBox, nato pa precej razporedi virtualno podobo brez veliko drugega. Morda bi bilo pametno, da nastavite vse svoje delavce na drugem podomrežju, tako da lahko vsaj videli, koliko stroji se izvajajo. Prav tako boste morali nastaviti svoje stroje na dolgoročni zakup ali neomejeno najema DHCP.

Kako teči Jobs na delavca

To je zanimivo področje in obstaja več veljavnih metod za obdelavo delovnih mest na delavca. Tukaj bom samo razpravljali o dveh najbolj očitna:

  • Nenehno teče scenarij: scenarij, pa naj bo lupinski skript, ali PHP skripta se izvede enkrat na delavca in poteka kot del neskončne zanke. Sem diskontirajo to metodo kot eno nesreči scenarij in morda se bodo vaši delavci, preneha teči, ne da bi neke vrste intervencije.
  • Cron skript temelji izvedba: Vsakih X minut cron daemon začenja klic na svoj scenarij, da bi dobili stvari dogaja. Brez neke preverjanju lahko pride do veliko veliko kopij vašega teka delavcev scenarij.

Moja odločitev je bila, da gredo z cron, ki začenja skripte ukaznih lupin vsakih 10 minutes. Moj shell skript opravlja naslednje naloge:

  1. Get proces seznam in grep to za 'php'. Če ni mogoče najti nato nadaljujte.
  2. Pokličite svojega delovnega mesta kodo, v mojem primeru bi bilo to nekaj, kar temelji PHP
  3. Delavec skript konča svoje teči
  4. Pripravljen še enkrat iti na naslednji ustrezni razpis

Moj bash skripta izgleda nekako naslednje:

  #! / Bin / sh
 če ps ax | grep-v grep | grep php> / dev / null
 Nato
     echo "Job trenutno obdelave, izhoda"
 drugega
     echo "Job se ne izvaja, začeti zdaj"
     php yourJobProcessingScript.php
 povezava 

Opomba: echo, so skoraj popolnoma nesmiselno, lahko pa pomaga naslednjo osebo, ki pride skupaj, da bi poskušali urediti in jih.

, Ki zaključuje niz sestavljen iz delavcev virtualni stroj, hitro, preprosto in enostavno kopiranje za vsak nov kos strojne opreme, ki je prejel. Je "spretnost" od omrežij, res ni v prikazanim OS, svoje vse storiti z oznako ustvarila za obdelavo delovnih mest, dela konfiguracijo, in pri zagotavljanju, da delo poteka po potrebi (to je, ko je gostitelj prostem teku ).

Nastavitev sistema Windows za inicializacijo Delavci

Prva naloga je izdelati ukaz, potrebne za zagon virtualnega stroja iz ukazni vrstici okna. Če ste namestili VirtualBox v privzetem mestu in ste poimenovali svoj ​​delavcev GridMachine nato ukaz preračunavanja vaš delavec je:

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

Kljub temu, da zaženete skript v 'Bezglav To stanje moramo uporabiti:

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

To se bo začelo stvaren stroj brez GUI in pustite, da shranite stanje elegantno. Drugi argument izklopi PRP, zato ni v nasprotju z Windows PRP, ali vam sporočilo o posluša na vratih 3389. Navidezni stroj je ime velike in male črke!

Nato bomo morali nastaviti okna do začelo naše delavcev VM, potem ko je bil stroj miruje. Če želite to narediti (na operacijskem sistemu Windows XP), boste morali iti na Start -> Vsi programi -> Pripomočki -> Sistemska orodja -> načrtovanje opravil, kot spodaj:

redne naloge

Nato kliknite na "Dodaj redne naloge" sledi brskanje dodati program po meri. Navigacijo do VBoxManage scenarij in kliknite ok. Urnik opravilo za katero od možnosti (da bomo to spremenili v minuti) in še naprej. Po preskoči naslednji zaslon bo windows vas, ki želite zagnati to nalogo, bi jaz predlagam bodisi "upravitelj" ali z ustvarjanjem novih privilegiran uporabnika. Zapomnite si ne želimo posegati v standardni račun zaposlenih na stroju na kateri koli točki. Kliknite naprej in preverite kažejo napredne možnosti za to nalogo.

Do konca delovanja učbenik dodati svoj ​​niz 'startvm GridMachine' in zagotoviti, da se teči šele, ko prijavljeni ostane unticked. Obiščite urnik nalogo naslednji in spremeniti urnik spustite do možnosti ', ko miruje ", izberite količino časa, ki ga želite stroj v praznem teku pred prehodom na naslednjo kartico.

Končno untick možnost, ki pravi, ustavi nalogo, če poteka že X časa, vendar pa označite možnost, da ustavi nalogo, če naprava ni več prostega teka.

urnik

To je bilo takrat za nastavitev gostitelja oken!

Povzetek

V tem delu smo vzpostavili virtualni stroj, ki deluje kot delavec, kot tudi način, kako ga imenujemo in izvajanje our skripte za obdelavo delovnih mest (za sebe script PHP). Od tu bomo ogledali, kako vzpostaviti svoje kopije operacijskega sistema Windows za zagon navideznega stroja v Bezglav načinu, ko je računalnik postane nedejaven in shranite svoje stanje, ko uporabnik začne ponovno uporabo stroja. Upajmo, da na tej točki ste videli, kako enostavno je vzpostaviti tak sistem in so srbenje, da se nekateri poskusi si bomo!

Naslednjič

In dela 4 bomo morali iskati za uporabo orodja za zagotovitev, da imate nameščen najnovejšo različico virov kode in podatkov, tako da dobljeni rezultati so vedno up-to-date z najnovejšimi poslovnih informacij in logiko.

Urad Grid Computing uporabo virtualnih okolij - 1. del

Z in petek 4 december 2009 11:23 pm

Predstavitev

Delam v podjetju, kjer deluje veliko delovnih mest paketno obdelavo milijone zapisov podatkov vsak dan in sem pred kratkim razmišljal o vseh naprav, ki sedijo okrog vsak dan nič ne delaš več ur. Ali ne bi bilo dobro, če bi lahko uporaba teh strojev za okrepitev procesorske moči naših sistemov? V tem sklopu člankov bom pogled na možne koristi zaposlovanja za pisarniško omrežje z uporabo virtualiziranih okolij.

Kot PHP razvijalec bom uporabljati orodja, ki sem se uporabljajo vsak dan in sicer, Linux, MySQL , PHP, VirtualBox in rušenja (SVN). Vendar upam, da bo ta vodnik prilagajanje drugih jezikov in tehnologij, prav tako dobro.

Rešitev sem zagotovila, bodo zelo ohlapno temelji na vrsti predelave sva morali pa bi to dosegli, ne more biti res, skozi celoten članek kot boste lahko spremenim stvari, zaradi enostavnosti, ali pa za izdelavo bolj zanimivih scenarijev uporabe.

Ti virtualiziranih okolij bo potekal na strojih okna, saj je to tisto, kar večina pisarn teči. Pri obdelavi, da so pisarniški stroji ne sme posegati v zaposlenimi, ki uporabljajo te stroje je treba ne potrebujejo vzdrževanja na stroju, in da je lahko premestljive za nove naprave, ko so na voljo. Prav tako nove virtualne stroje, ne sme zahtevati dodatne nastavitve, kot je to v veliki meri zmanjšuje razširljivost in enostavnost pri kateri se lahko podaljša omrežji.

Zakaj Uvajanje Urad Computing Grid?

Najprej boste morda mislil, zakaj ne šele raba virov cloud computing kot EC2 platforme Amazon ? Dobro bi bilo več razlogov, na primer:

  • Ne boste zaupali določene podatke v okolju cloud computing
  • Ne, ne moreš postaviti določene podatke v okolju cloud computing iz pravnih razlogov (npr. podatki izstopu iz države), lahko iz pravnih razlogov, npr NZS evidenc.
  • Želite, da bodo vaši procesnih enot blizu in imajo popoln nadzor nad strojno opremo preveč
  • Nimate projektnih sredstev za zagon oblaku primere
  • Vaš urad nima povezave z internetom, zato njeno ni mogoče uporabiti oblak vira
  • Vam ni všeč, dež, oblaki kažejo, dež, zato se boste držali daleč

Prepričan sem, da se seznam lahko še naprej, vendar mislim, da je dovolj za zdaj.

Prednosti za mrežo Urad Computing

No, vam še nekaj matematike (in v pravem slogu fizike omogoča še nekaj osupljivih predpostavke). Predstavljajte si, da imate veliko Debel obdelavo strežniku 100 delovnih mest na dan. V pisarni imate 50 stroje, ki so idle 16 ur na dan, vsak od teh naprav je 10% tako močan kot je vaš Debel Sever obdelavo. (Vsi rezultati tukaj so zaokrožene na podcenjevati učinkovitosti povečanje).

Torej, 1 stroj * 10% moči * 2/3 čas = 0,067 tj. 1 namizni obdelava v stanju času uspelo obdelati 6 zvrhanih opravil na dan.

Če zdaj to gor lestvici traja 15 idle namiznih računalnikov za obdelavo, kot je veliko delovnih mest na dan, kot je vaš glavni strežnik za predelavo ne.

Torej, v naši pisarni pretvarja, 50 strojev, bi lahko povečali našo procesorske moči od 1 do 4 strežnika polnih strežnikov za predelavo, ali pa bi se obdelavo 400 delovnih mest na dan namesto 100.

Obvestilo, brez vlaganja v novo strojno opremo je vaše podjetje le povečala svojo paketno obdelavo zmogljivosti 4-krat! Potencialno boste povečali svojo porabo energije, ampak v večini okolij pisarniških sem bil, da stroji, so na splošno na levo čez noč nekako, tako da boste lahko videli, da je to pobuda za okolju prijazne.

Druge prednosti pomeni tudi, da vlaganje v nove (ali posodobljene) obdelavo strežniki se lahko odloži, če vaš pisarniški stroji so dovolj in da kot ste izboljšali moč vaših pisarniških strojev vaš urad mreža postane močnejši samodejno.

Tehnologije

Kaj potrebujete? (Ali več pravilno kaj uporabljam):

  • Idle pisarniški stroji (v mojem primeru rezervno stari Windows XP laptop)
  • VirtualBox (ali drugo stranko virtualizacija programske opreme)
  • Stvaren stroj s PHP, MySQL running teče posekali OS, Kličem te moje Limp strežnikih :)
  • Delovna mesta za zagon
  • Job strežnik (lahko drug navidezni stroj nekje)

Tipična delovna mesta

Vrste delovnih mest, da se ta sistem, namenjenih za zagon je, kot sledi:

  • Sistem prejme seznam podatkov, na katerih moramo prilagoditi in se vrniti rezultate
  • Usklajevanje vključuje preverjanje / iskanje več (dokaj statična) virov podatkov
  • Rezultati virov podatkov lahko zahtevajo dodatno potrditev, združevanje, preverjanje dodatnih virov podatkov kot odziv na rezultate
  • Podatki se vrne s ustrezajo evidence, v celoti potrjeni in obdelujejo
  • Vsak zapis v službo je neodvisen od ostalih

Torej v bistvu smo iskali na teče delovna mesta, ki zahtevajo mešanico baze poizvedbe in nekaj številk škrtanje, ki je dokaj tipičen scenarij v poslovnem okolju.

Mrežne rešitve, ne samo koristno, za obdelavo delovnih mest te vrste. V bistvu lahko vsak proces, ki ga lahko razdelimo na samostojne enote, se vzporedno. Oglejte si ta Wikipedijo za primere in več informacij: računalniške mreže , ampak nekaj znanih primerov je SETI @ home in BIONC . Obstaja okvir za delovanje računalniških omrežij, in to so dobro vredno preučiti.

Kaj bomo dosegli?

Do konca teh členov upam pokazati, da napotitev pisarniško omrežje ni treba biti zelo draga ali dolgotrajen. Bom na njih:

  • Vzpostavitev sistema za nadzor delovnih mest, delo konfiguracija
  • Ustvarjanje primernega obdelavo stvaren stroj
  • Kako nastaviti sistem na stroju okna
  • Zagotavljanje uporabljate najnovejše kode in podatkov
  • Uvajanje in benchmarking
  • Pogled naprej

Bom stavba (ok sem zgradil, potem je to napisal), na primer uporaba preveriti zasnove na lokalnem stroju z Windows XP in na moji strani GridMachine "virtualno stroj. Moja naloga je nadzor nad strežnik bo moj glavni stroj, ki teče Fedora 11 .

To nikakor ne pomeni, da dokaže polno delovno robusten sistem, njegovo mišljeno bolj za predstavitev in razprave je razvidno, da se lahko te stvari doseči v razmeroma kratkem času in z malo stroški. Prosim, vas prosimo, da mi pošljete kakršne koli pripombe, popravke ali izboljšave in bom po svojih najboljših močeh, da bo ta članek posodobljene, da se ujemajo.

Naslednjič

In delu 2 bom začel s pogledom na sistemu za nadzor delovnih mest, in proučila, kako je treba delovna mesta nastavljen, da bi dosegli največjo količino obdelave, ob zagotavljanju, da je vsako delovno mesto obdelujejo obvezno.

Urad Grid Computing uporabo virtualnih okolij - 2. del

Z in petek 4 december 2009 11:23 pm

Predstavitev

Delam v podjetju, kjer deluje veliko delovnih mest paketno obdelavo milijone zapisov podatkov vsak dan in sem pred kratkim razmišljal o vseh naprav, ki sedijo okrog vsak dan nič ne delaš več ur. Ali ne bi bilo dobro, če bi lahko uporaba teh strojev za okrepitev procesorske moči naših sistemov? V tem sklopu člankov bom pogled na možne koristi zaposlovanja za pisarniško omrežje z uporabo virtualiziranih okolij.

V delu 1 sem dal pregled sistema in tehnologij bom uporabo kot tudi obravnavali nekaj možnih razlogov, zakaj bi si želeli ustvariti pisarniško omrežje.

Služba za nadzor

Če boste za vodenje delovnih mest, potem boste morali na nek način, da jih upravljajo. Vaša naloga nadzorni sistem (na vašem delovnem mestu strežnik), je treba res dobro premišljena, še preden poskušate zagnati pisarniško omrežje. Torej, najprej, kaj so naloge za sistem za nadzor delovnih mest:

  • Izročiti delovnih mest na zahtevo delavcev
  • Povej delavcem, kakšne vrste delovnih mest za vodenje
  • Track delovna mesta
  • Poskrbite, da se delovna mesta teči šele, ko
  • Zagotavljanje delovnih mest za delavce, podatke, ali pa vsaj jim povej, kje naj dobim

Sistem mora biti tudi razširljiv, rešitev, ki deluje za zdaj v enem primeru se lahko podaljša za zagon več vrst delovnih mest, kot so podjetja vidi vrednost v mreži rešitev. Na primer, delovna mesta pridobiti prednostne naloge, več kot eno opravilo Tip lahko obstajajo (torej več kod baze), na koncu lahko celo deluje več različnih strojev delavca, ki so optimizirane za vsako vrsto dela (čeprav to ne odmakne od To generično delavca "ideja). Vedno poskušajo, da razmišljajo o prihodnosti pri razvoju sistemov, lahko kratek čas vizija vodi k dolgoročno frustracije in večjo razvojno časa.

Job Server

Bomo nekje morali nadzirati naša delovna mesta iz, naj bo to edini sistem v vaši mreži, ki ima stalno Resource Locator, da je IP naslov, ime gostitelja, URL (z uporabo notranjega DNS), itd To je zato, ker delavci morajo vedeti, kje iskati za delovna mesta, delavci morali najti sistem za nadzor delovnih mest (ne delo nadzorni sistem našli delavce).

Naloga strežnika sama po sebi ne res zapletena naloga (v osnovni sistem tako ali tako), ki jih potrebuje za shranjevanje seznam delovnih mest, ročno iz delovnih mest, prejeli rezultate, nato pa jih shranite za kasnejše iskanje. Kako so opredeljene ti deli (kot so "roko ven delovna mesta"), je lahko zelo osnovne. Kasneje lahko razširiti sistem za vključitev uprave vmesnik za dodajanje, urejanje, brisanje, začasno delo, ampak to je izven te vaje.

Nobenega razloga ni, sploh pa, da je vaša naloga strežnik ne more biti stvaren stroj teče v vaš glavni strežnik za obdelavo, pod pogojem, da ne odteče preveč sredstev iz nje. Naloga strežnika pa ne potrebujemo visoko razpoložljivost, če zaide na petek zvečer si boš izgubil cel vikend obdelave, lahko stanejo nekaj tednov vredno časa za obdelavo (v primerjavi s vaš glavni strežnik za obdelavo samo) . Morda boste želeli, da razmisli svoje delo strežnik na obremenitve okolja za uravnotežen visoke razpoložljivosti.

Osnovna nastavitev

Osnovne nastavitve za naš strežnik delovnih mest bo sestavljen iz kaj sem pozval eno od mojih mlačni strežnikov (to je Li nux, m ySql, P KM). Koda deluje na delavce Thea bo dejansko delajo, kaj delovnih mest lahko vodijo v stiku z z delovnih zbirk nadzornega sistema. Kasneje bi lahko ustvarili spletno storitev in pravzaprav bi jih izdala delovna mesta bolj kot da bi delavci ne trdega dela sami, vendar za zdaj bomo še naprej uporabljati načelo KISS (Keep it Simple, Stupid!).

Torej, omogoča ustvarjanje tri MySQL tabel za reševanje delovnih mest. To bo `delovna mesta ',' jobRecords` in `jobResults`.

delovna mesta miza Tukaj sem z SQL Buddy veliko malo alternativa phpMyAdmin samo zato, ker njegov lažje namestiti na CentOS (na drugi strani: 10 Velika alternativa phpMyAdmin )

Ta tabela je sestavljena iz 5 preprostih področjih,

  • id: enolično identifikacijo delo
  • Ime: Bi lahko naročnik reference, ali poljubno število drugih identifikatorjev
  • Status: Moraš vedeti, kje naloga je, na, na primer
    • 0: Se ne izvaja
    • 1: Pobral
    • 2: Zaključen
  • started_by: Kdo je začel delamo? To ni povsem potrebna, vendar je lepo imeti. Želel predlagam sledenje delavce po svoji IP naslov v omrežju
  • started_at: Kdaj je delavec začel svoje delo? S sledenjem delovnih mest, ki se niso zaključile v višini X časa vemo, moramo pobrati svoje delo še enkrat in začeti predelave s strani drugega delavca. Delavci se lahko ustavite obdelavo / go offline za poljubno število razlogov, izpad električne energije, crash, omrežja izgube, itd

To je enostavno, kako bi se to lahko tabela razširi z nekaj dodatnih področjih, da omogočajo sledenje statistika, obdelava čas stolpca, kako dolgo naj delo je, v nasprotju z vidite, koliko delavcev je pobral svoje delo (seveda to potrebuje, da se nagibajo k 1), delo prednostna naloga, se lahko seznam gre naprej in naprej. V bolj zapletenih scenarijev delovnih mest bi bilo mogoče določiti, koliko pomnilnika bo delavec potrebujejo dostop do (in zato uporabljajte le primerne delavcev), ali pa bi celo kakšen tip delavca zahteva.

Lets dodati nekaj delovnih mest primere:

primer delovna mesta

Naslednja tabela spet je zelo preprost za razumevanje, da so to naše delo zapisov. Te so povezane z glavno tabelo delovnih mest s kolono 'jobs_id `. Make up te tabele zelo odvisna od podatkov, ki jih morate posredovati svojim delavcem, da omogoča zelo enostaven primer, kjer imamo štiri stolpce:

  • id: ID zapisa
  • Ime: ime osebe
  • Naslov: oseba, naslov
  • jobs_id: Naloga ID, ki je ta zapis povezan

Tretja in zadnja tabela je sestavljena iz tabele rezultatov, je zelo podobno make up, kot je naš tabeli evidence in z dodatkom nekaterih stolpcev je lahko del tabele zapisov:

  • job_record_id: Povezava rezultat na delovnem mizi
  • Rezultat: Rezultat podatki

... In to je vse, kar potrebujete za nadzor delovnih mest! (Čeprav na zelo osnovni ravni) V mojem primeru sem opozoril na drugo mizo, kjer je bil sedež moji podatki za proces, vendar je to lahko prav tako enostavno ni pila, parametri za zagon simulacije kodo, kar hočete.

Izbira službo

Kot je bilo že omenjeno, bodo delavci narediti svoje delo upravljanja za nas, za zdaj, tako da vse, kar morate storiti, je res našel delo, ki potrebuje obdelavo in dobili informacije. Kako bi to naredil? No kramp naše merila za izbor delovnih mest in iščejo zaposlitev, v SQL sem storil naslednje:

  1. Bodite vsakega delovnega mesta, ki niso označena kot popolna, ampak iz našega delavca in ga ponastavi (nadomestiti __ ME__ z identifikacijsko bi najlažje je IP naslov):
     UPDATE `delovna mesta 'SET' stanje '= 0 WHERE` stanja `= 1 in` started_by' = __ ME__; 
  2. Uporaba naših merila za izbor delovnih mest, izberite delovno mesto in povedal, nadzornega sistema, da ta delavec, ki se ukvarjajo z njim:
      UPDATE `delovna mesta 'SET' stanje '= 1,` started_by' = __ ME__, `started_at '= NOW () WHERE` stanja `= 0 ali
     ('Stanje' = 1 in `started_at`> DATE_SUB (NOW (), INTERVAL X URA)) ORDER BY `id` ASC; 

    Z oprijemalne delovnih mest, ki se niso vrnili rezultate v višini X časa bomo zagotovili, da so vsa delovna mesta vodijo v primeru delavca, treskav ali gredo AWOL.

  3. Naslednja zgrabi delovnih mest podrobnosti sledi evidenc sami:
      SELECT * FROM `delovnih mest 'WHERE` started_by' = __ ME__ LIMIT 1;
     SELECT * FROM `job_records` WHERE `id` = __ JOBID__; 

Po končanem delovnem mestu smo vstavili naše rezultat evidence in označite delo kot popolna. Ne pozabite, saj lahko delovna mesta prekinitev / nadaljevanje v vsakem trenutku lahko nekaj trdnosti v vašem scenariju. Mogoče je, da je naloga prekine na polovici posodobiti sistem nadzora opravil, tako da preverjanje število zapisov v službo in število rešenih rezultatov nazaj na sistem nadzora opravil bi bil pametna poteza.

Poleg tega pa to dokazuje, kako lahko delovna mesta izbrani in vodi iz SQL poizvedb okvirja morate res abstrahiranja svoje delo nadzor, tako da če se odločite za prehod na uporabo spletnega storitev, datotečni sistem, ki temelji na XML ali katero koli drugo število sistemov, to ne bo vplivalo na kodo nad njo.

Job Nastavitve

Naslednji vidik, ki menijo, naloga velikost in konfiguracijo. Z igranjem s konfiguracijo delovnih mest lahko udari odlično razmerje med hitrostjo, procesne replikacijo in zanesljivost. Vzemite si nekaj scenarijev OFA:

  1. Delovna mesta se 1 dan vsak teči: To pomeni, da bodo vaši delavci potrebujejo 15 dni za obdelavo vsako delo (ne pozabite 10% moči za 2/3rds tistega časa). To seveda ni pametno konfiguracijo, vaša naloga je velikost tako prevelika! Zato bi potrebovali vsaj dvakrat časa, da bi dobili delo predela bi začetno delavec šel AWOL (čas, da se poberem, da je ne vrne rezultat plus ponovno predelavo čas). V idealnem želite imeti vsaj eno polno delovno mesto z lahkoto odstranjujeta koncu vsakega prostega teka dolgo, da način, kako ohraniti delovna mesta teče čez in v najslabšem primeru delo bi potrebovali dva dni, da se proces mora najprej iti manjka.
  2. Delovna mesta se 1 minuto teči: To pomeni, da bodo vaši delavci traja približno 15 minut teči vsako delo. Čeprav se to sprva zdi idealno, boste pridobili dodatno delo obdelavo v času kosila, kava odmori, sestanki, itd Ta scenarij postavlja pritisk na druga področja vašega sistema in uvaja svoje težave. Na primer, najprej vaš setup / čas obdelave razmerje bo šel desno navzdol, zato izgubljajo učinkovitost sistema. Omrežje se bo nenehno pretakanje delo informacije na različnih delavcev frustrirajuće osebja, ki so dong svoj dan na delo podnevi. Ste tudi dogaja, da se bolj obremenjuje strežnika delovnih mest za obdelavo, saj je jed iz veliko in veliko manjših kosov dela redno. Nazadnje je v tem primeru, če vaša naloga strežnik gre dol boste ustvarili ogromen dnevnik zadnji nedokončanega dela medtem ko večjih delovnih mest bi lahko v njem naprej obdelavo Blaženo vedela, da je delo strežnik je bil v težavah.

V resnici ne bo nihče idealna konfiguracija za vaše omrežje setup, veliko je odvisno od razpoložljivih sredstev, vrste delovnih mest in delovnih zahtev čas preobrat, mrežo zmogljivosti in tako naprej. Vendar pa bi nekaj smernic so:

  • Velikost delovnih mest, tako da lahko vsak delavec priti skozi vsaj 3-4 delovnih mest v roku 15 ur (najdaljša verjetno idle časovno obdobje)
  • Igrajte se z velikostjo dela, tako da nastavitev časa postane precej nepomemben v primerjavi z obdelavo času (ob upoštevanju zgoraj točko).
  • Če delo ni končano dvojno količino časa (morda manj), ki jih pričakujete, da za dokončanje je domnevati, da je njena šel AWOL in začeli z drugo obdelavo delavca. To pomeni, da boste morda morali počakati do trikrat normalno dolžino delovnega mesta za to izpolniti (lahko več, če naknadno delo ne uspe). Morda boste želeli zmanjšati ta čas, vendar bodite previdni, da se ne zmanjša preveč, saj lahko začnete podvajanja nalog za obdelavo na redni osnovi.
  • Delovna mesta morajo biti neodvisni od zunanjih zahtev, kolikor je to mogoče. Naloga strežnika, na primer, le da me kontaktirajo na začetku in koncu vsakega delovnega mesta.
  • Ne nasičena vaše omrežje, bo to imelo dve negativni učinki, bo vaše dnevne osebje našli uporabo omrežja frustrirajuće in težave se lahko pojavili pri določanju časa povezave ven problem, da bo samo še poslabšala, ko se prilagoditev spletne mreže.
  • Zagotoviti delovna mesta se lahko izvaja na vaših delavcev. Če delovnih mest preveč pomnilnika bo intenzivni ali disku intenzivnih delovnih mest začeli z zaustavitvijo in edina stvar, ki jo boste opazili, je zmanjšanje števila delovnih mest, ki se obdelujejo brez pravi razlog, zakaj.

Predložijo Rezultati Job

Ob predložitvi rezultatov delo je pomembno, da preveri, ali so rezultati niso bili predloženi drug delavec, še posebej, če je bil delavec trenutno miruje, za nekaj časa.

Ko so rezultati predloženi zagotoviti, da število rezultatov ustreza številu zapisov v službo.

Kot je navedeno prej, in ne more biti več kot je poudaril, zgraditi toleranco napak v iskanje novih delovnih mest in predložitev rezultatov. Delavci se lahko (in verjetno bo) šel v način mirovanja na najbolj neprijetno, kolikokrat in to je treba poskrbljeno za. Prav tako še enkrat abstrahiranja proč svoje rezultate predložitev bodo pomagali poskrbeti za bodoče spremembe v sistemu nadzora opravil veliko lažje reševanje.

Povzetek

V tem section smo pogledal kaj nadzor opravil strežnik mora storiti in kako priti zelo osnovni sistem, vzpostavljen. Razpravljali smo o tem, kako pridobiti opravilo iz sistema nadzora in kako najbolje oblikovati delovna mesta, da bi dobili večino naših vašega sistema pisarniškega omrežja. Do konca, je bil predstavljen odstavek ali dva na oddajo rezultate nazaj na strežnik delovnih mest nadzora.

  • Nadzor opravil strežnik upravlja delovnih mest in zagotavlja, da so zaključeni vsi delovne enote
  • Z abstrahiranja svoje delo izberite / rezultati predložitev lahko spremenimo tehnologijo nadzorni strežnik brez veliko težav
  • Nastaviti svoje delo, da se zagotovi, da so teči hitro in učinkovito, ne da bi preveč pritiska na vaše omrežne infrastrukture in brez podvajanja nalog za obdelavo na redni osnovi.
  • Prepričajte se, da si zgraditi toleranco napak in napak checking v svoje rutine, lahko delavci prekine in nadaljuje, najbolj neprijetno krat. Ne pozabite preveriti, če so rezultati že predložil drug delavec.

Naslednjič

V delu 3 se bomo ustvarili našo stvaren stroj za obdelavo in vzpostaviti naše okno stroje, da postane idle delovnim časom.

Urad računalniške mreže z uporabo virtualne okolja - 5. del

Z in petek 4 december 2009 11:03 pm

Predstavitev

Delam v podjetju, kjer deluje veliko delovnih mest paketno obdelavo milijone zapisov podatkov vsak dan in sem pred kratkim razmišljal o vseh naprav, ki sedijo okrog vsak dan nič ne delaš več ur. Ali ne bi bilo dobro, če bi lahko uporaba teh strojev za okrepitev procesorske moči naših sistemov? V tem sklopu člankov bom pogled na možne koristi zaposlovanja za pisarniško omrežje z uporabo virtualiziranih okolij.

V delu 4, smo preučevali uporabo orodij za zagotovitev, da smo nameščeno najnovejšo različico virov kode in podatkov, tako da dobljeni rezultati so vedno up-to-date z najnovejšimi poslovnih informacij in logiko.

Pre-Deployment

Pred namestitvijo svojega omrežja sistem, če obstaja ena stvar, ki jo storite, in ena stvar, sam to je merilo vaš trenutni sistem! Ni važno, kaj poveste kolege o tem, koliko dodatno delo, vaš sistem bo naredil, če imate številke bi to potrdili vaše jamstev niso nič. Torej,

  • Koliko zapisov lahko obdelali trenutno? Na dan? Na uro?
  • Koliko časa običajno traja, da se obrnil službo?
  • Koliko več zmogljivosti imate?

Tam je tudi dodatna vprašanja:

  • Če je vaš strežnik za obdelavo (ali eden od vaših strežnikov za predelavo) gre dol, kako bo to vplivalo na vaše sposobnosti, vam bo invalid?
  • Kakšne prednosti vam upam / pričakujem, da bi dobili od omrežnega sistema?
  • So vaši pisarniški stroji pogon delovnih mest?
  • Ali vaš (ali pa ste lahko pretvori delovnih mest), da wrok v tem slogu vodenja?

Zadnji večji Bistvo je, da si vzemite čas za večje spremembe, kot je ta. Posodobite obdelavo kodo za delo z novo metodologijo, ki merilo znova. Mogoče nastaviti za obdelavo strežnik teči virtualni stroj, po vsem strežniku obdelave bo samo še en delavec (samo zelo močna 1 relativno). Pustimo, da se nov postopek za poravnavo.

Deployment

Moj predlog bi bil pop v pisarni enega tedna izvajanje vseh naprav in nastavitev. Ali to tik pred počitnicami štirinajstih dneh in pustite, da drugi revni chap za reševanje posledic ... morda pa tudi ne ...

Uvajanje sistem, kot je ta mora biti počasen. Kljub temu, da bi bilo razmeroma preprosto vzpostavitev tega sistema bo vplivala na vaše celotno infrastrukturo urada (tudi digitalni 1). Prvič, razvaljamo na nekaj strojev v času, monitor omrežnega prometa, kako se delavec gostitelji opravljajo na dan za dnem. Morda boste morali spremeniti svoje delo konfiguracijo kot odgovor na vaše ugotovitve.

Ko je sistem rešiti z nekaj strojev (recimo 10% vseh pisarniških strojev, tj 5) vodi za spremljanje prometa omrežja in gostiteljski stroj performance. Naslednja merilo še enkrat, bi morali sedaj predelavo 33% več delovnih mest kot vaših prvih meril. Preverite, to je tako, ali da ste vsaj v tem Športni teren. Če ne, raziskati, kaj se dogaja pred prehodom na. Ponovite ta cikel, dokler ne boste z veseljem vsi pisarniški stroji teče brez ubijanja individualno stroja ali mletje omrežje do zastoja.

Ves čas vodi primerjalno analizo, tudi po tem, ko so na vseh uvajalnih. Preverite, kako nove posodobitve koda vpliva na hitrost vašega sistema, preverite, ali so vsi delavci v poročanje in obdelavo delovnih mest. Počasi (zelo počasi), prirastek svoje delo konfiguracijo, da bi dobili najboljše iz vaših delavcev in mreže.

Stop!

Kaj pa, če želite ustaviti svoje delavce iz teče nekaj časa? Vsi so tam teče regeneracijo, in poskuša po svojih najboljših močeh za obdelavo podatkov, kot so žuželke lačnih. Odgovor se morda zdi očitno, vendar je vredno dodajanjem vsak slučaj njegov spregledati. Preprosto urejanje obdelavo skript, z izhodom (0) ali die () ali kakšno drugo izjavo, da bi ubil svojo obdelavo delo. Pomemben razlog, zakaj smo vedno poskušali posodobiti na najnovejšo scenarij obdelave pred vsako vožnjo!

Prikaz sistema

Da bi napisal to zbirko kratkih člankov sem ustvarila zelo majhen mrežo dokazati tehnologije in metodologije. Prebral sem veliko člankov, vaj in se uporabljajo različna orodja za namestitev in spremljati, kaj se dogaja. Nikakor sem šel ven in nasičenih celo pisarno s prometom in tudi ne sem imel dostop do rednega PC člane osebja, da vidite, kako je vplivala gostitelj delovanje.

Moja demonstracija sistem je bil zelo skromen res. Včasih sem svojo redno namizje ustanovi kot strežnik delovnih nadzora. Na to sem namestiti mySQL strežnik nameščen ustanovljena kot mojster v replikacije, PHP , A in SVN povezana s Apache (za dostop preko VM delavcev).

Nato sem ustvaril stroj delavcev CentOS na VirtualBox na 6 let star laptop Windows XP. Jaz nastaviti predvidene naloge, kot je določeno po kopiranju VM na stroj in pustite, da gredo.

Stvaren stroj je bil ustanovljen s PHP, Subversion in MySQL. Preveril sem ven podružnico z imenom "delavec" iz mojega nadzora delovnih skladišče strežnikov in je prepričan, da bi se lahko posodobijo po ilo posodobitev ". Nato sem nastavitev mySQL kot suženj in preveri, ali podatki so bili posnemanja iz mySQL na strežniku delovnih mest za vodenje delavcu VM. Po vsem tem sem setup bash skripto in cron službo.

Moj obdelavo skript v bistvu šli po vzoru to (zelo preprosta stvar):

  • Preberite v polje Ime
  • Prešteti število podobnih imen v tabeli od vira podatkov, ki je potekala na VM
  • Prešteti število imen, kot zgoraj, vendar razdelitev imena s presledki (npr. ime, srednja, priimek)
  • Postopek se ponovi 1000 krat

Vsako delovno mesto je približno 20 minut teči. V nekem trenutku sem odprl tudi več izvodov delavcev VM na laptop okno in opazoval delovna mesta preveriti off vsaka od naslovov IP delavcev. Na tej točki sem tudi potrdil, da replikacije samodejno ponovno zažene.

Zapusti laptop v stanje povzročilo delavca začne za obdelavo delovnih mest iz strežnika delovnih mest nadzora. Ko nadaljevanje laptop navada je prišlo do zamude približno 30-60 sekund, je to pošteno časa in osebja bi bilo treba zavedati, da je njihova naprava lahko ustavite za kratek čas, ko se vrne na stroju. Novejši stroji ne smejo imeti pavzo, dolgo tako dolgo. Korist za znesek, ki ga opravi obdelavo teh strojev v prostem teku več obdobjih, ki bi prevladali nad uslužbencem, da počaka na kratko obdobje (recimo 1 minuta) ob prihodu na svojih strojih za zjutraj (I pogosto čakati več, da je to za Windows Defender posodobiti, da poteka), če so seznanjeni s tem (koristen čas, da zgrabite jutranjo kavo!).

Na splošno sem prepričani, da sem prikazal tehnologije, ki bi jih lahko uporabili za oblikovanje takšnega sistema. I so pokazale, da tak sistem ne dela na (zelo) majhnem obsegu in z nekaj več eksperimentirati lahko povečajo uporabiti sredstva strojev urada je. Če ne dobim do te mere, to bi mi bilo zelo zanimalo, / videli, ko nekdo drug ne.

Sklepi / ocene

Naslednji korak bi bil očitno dejansko dobil pravi zgled svetu in začeti uvajanje sistema, kot je to v pisarniško okolje in videli, kaj se zgodi. Zahtevati podjetja, da se zavežejo, da to brez sled Plamen podjetje dokazati, tehnologija in učinkovitost lahko malo težko. Mreža / porazdeljeni računalniški je zelo priljubljen, je nekaj krogov in ima nekaj velikih aplikacij (BIONC, SETI @ Home, Folding @ Home, itd.) Nisem pa našli v manjšem obsegu in enostaven sistem, kot je ta v svojih iskanjih, ki bi se lahko razvalja v pisarniško okolje.

Ustvaril sem v bistvu brez sistema z uporabo odprtokodne programske opreme v glavnem in orodij na voljo v skoraj vsaki pisarni. Tehnologije so v bistvu dokazati in pokazati, da opravlja delo, in kot je bilo pričakovano. Upajmo, da imam kažejo, da z ne preveč dela in z zelo preprosto namestitev lahko se uporabi računalniške pisarno omrežja sistem, ki je močan, poceni, a in prilagodljiva vse ob istem času.

Ko sistem je začela delovati skoraj ni konec znesek prilagoditev in izboljšav, ki jih lahko dajo. Na primer, lahko statistiko / benchmarking enostavno treba dodati, ki prikazuje vrednost takega sistema vsak dan. Nove naprave se lahko doda hitro in enostavno, če in ko prispejo z nadgradnjo obstoječe strojne opreme za krepitev svoje procesorske moči.

Upam, da ste uživali branju tega serijo člankov in njegove dal snov za razmišljanje o teče sistem pisarniškega omrežja. Rešitev, predstavljena tukaj, ne bo nujno delo v vseh situacijah, vendar morajo biti prilagojeni, da vam omogočajo, da se vaš obdelava podatkov opravi s pomočjo svoje rešitve.

Prosim, vas prosimo, da mi pošljete kakršne koli pripombe, popravke ali izboljšave in bom po svojih najboljših močeh, da bo ta članek posodobljene, da se ujemajo.

Zend okvir: Osnove - Pregled

Z in sobota 28. november 2009 10:42

Moj delodajalec pred kratkim plačal za skupino nas razvijalce, da tega Zend okviru: Osnove tečaj, tukaj bom povzeti moje misli in mnenja o poteku za druge. Za tiste, ki želijo prihraniti čas, tukaj je moj povzetek:

Za razvijalce, ki niso imeli časa, da pogledate na Zend okviru tega predmeta (Zend okvir: Osnove) ponuja dober celovito sliko okviru vam uvaja na ključnih področjih in daje dovolj informacij, da bi nadaljevali. Za tiste, ki so nekaj časa preživel videti v okviru in so sledi eno ali dve Vadnice to seveda ne ponuja močno presegalo.

Ozadje

Bil sem PHP razvijalec za okoli 5-6 let, in so se začela delati z ogrodjem Zend na osnovi komponent v zadnjih 6 mesecih. Sem razvila in / ali so bile razvijalec na nekaj majhnega Zend okvirnega MVC sites. bom iskren, nisem imel ogromno izpostavljenosti drugih okvirov iz kodiranja vidika, ampak so porabili več ure raziskovanje projekta spletnih strani in ocenjevanje them. okvira in skupnost okoli Zend okvir je precej zanimivo in tam zdi, da so velike možnosti v katerih bodo svoje.

O poteku

Tečaj je dal več kot 9 ur dveh sejah WebEx (z 10-minutnega odmora v sredini). Čas, ki se porabi skozi niz diapozitivov, ki jih je Zend z razpravo v vsakem trenutku. Lahko uporabite mikrofon in govori na inštruktorja, ampak če sem iskren nisem videl kdo uporablja kaj več kot okno za klepet. Poleg tega je VMWare Ubuntu računalnik pod pogojem, da je primer kode in projekti vzpostaviti poskusno različico Zend Studio. Pogovori vodja tečaja za udeležence bodisi preko za rešitev integriranega VoIP, ali pa lahko pokličete z uporabo enega od številnih po vsem svetu številčnici v številkah.

V teku je gradivo vsebuje kratek pregled okvira in MVC vzorec pred naslovom v vzorec uporabe knjigo gostov. Razprava je pokazala metodo vezanja, Zend_Application, DB Mize, baze podatkov, obrazci, filtriranje, ACL, potrjevanje, itd, itd V bistvu zajema vse teme, ki ste jo potrebujejo, da bi dobili osnovno stran oblikuje teče ves čas, ki vam daje orodja za pojdi in dobili več napredovala v okviru (čeprav to ni znesek, ki "si oglejte spletno stran To je veliko časa).

Čas je, da kodo do nekaj primerov, in razviti knjigo gostov 'in preprost "wiki" zahtevek. Osebno sem se počutil, da je zagotavljanje kodo ali vsak app, nato pa nas prosi za razvoj, kar je v bistvu kopija skupaj ni res zagotovili dobro izkušnjo učenja. Jaz bi raje, da razvijejo aplikacije podobno, ne pa enaki. na primer z uporabo v korist ob vodnik za sklicevanje na. Druga možnost je gradnja aplikacij iz nič z demonstrator bo morebiti privedlo do več vprašanj o tem, zakaj in kako, kar daje boljše razumevanje okvira, konec koncev si lahko pogledate posebnosti po teku.

Zadnje predavanje je sestavljalo delo na wiki uporabo s pomočjo / vodenje s predavateljem. Potem ko je bila sprejeta tečaj povratne informacije, je bilo poudarjeno, večkrat skozi tečaj, ki traja Zend povratne informacije zelo resno, v resnici očitno naša različica Seveda je povsem nova. Nekaterih drugih razvijalcev v podjetju bo sprejela tečaj kmalu tako bo zanimivo videti, če se je to zgodilo.

Tečaj slog je bil neformalen, lahko za povratne informacije in sodelovanje med udeleženci in predavateljem. Tečaj vodja je bil prijazen, pristopen (so e-poštne naslove v skupni rabi za vprašanja), in medtem ko je svojo predstavitev iz diapozitivov je malo Drhtav zdelo polno pristojnost v okviru. Bil je očitno nekdo, ki uporabljajo okvir, redno in ne kot nekoga, ki se učijo za poučevanje tečaja, mi je bilo všeč izkušnje "Resnično svetu 'v zvezi s tem.

Na splošno Občutek

Na nek način sem našel pot izguba časa, v drugih pa je bilo zelo priročno. Upajmo, da bom dobil svoje razloge čez jasno, in morda zagotoviti nekaj hrane za misli povratne informacije ali koristen (jaz vedel, je to malo verjetno!).

Za mene je ta tečaj namenjen tudi nizko raven. Ob šel skozi Hitri vodnik, preberite Roba Allena Zend okvir v akciji, in delal z okvirom malo nisem zares dobil ničesar preveč. Jaz bi rad od tečaja, da poberem od konca nestrpne in razvoj dodatnih znanj.

To je dejal, naziv pa seveda jasno državno "Zend okvir: osnove" in v tem pogledu seveda dosega tisto, kar določa storiti. Ostali člani razvojne ekipe, ki niso porabili časa videti v okviru končali vsako sejo z navdušenjem in vprašanja, ki se je res lepo videti.

Vse ni izgubil, je bilo dobro, da nekaj časa potrjuje osnovne podatke o okviru in se vprašati nekaj vprašanj na področjih, kjer mi ni bilo 100%. To je bil tudi čas, da sem dobil, da se usedem vsak dan in razmišljati o kodiranje s pomočjo projektov okvirnih in prihodnost, nekaj, kar bi ne mogla delati drugače (si lahko predstavljate vaše podjetje strinja s tem? :)). Nenazadnje ste tudi dobili lepo potrdilo Zend povedati, da ste se udeležili tečaja (čeprav po elektronski pošti).

Zend okvirni Certification

To je bilo eno vprašanje, ki redno prihajajo na misel med, bi me pripravili za certificiranje? Hitro, enostavno je izjemno št. Tečaj za inštruktorja bilo povsem jasno, o tem z dodatnimi obvestili, da je za potrjevanje bi bilo res uporabljali okvir, na podlagi dneva v dan in se počutim zelo udobno in samozavestno v uporabi in metodologije.

Povzetek

Glede na vse, kar sem zgoraj napisal, bom povzeti vse, kar je v dveh preprostih alinejah:

  • Prvič na Zend okvira: Ta predmet ne točno to, kar ste pričakovali, vam daje prijeten uvod v okvir in dobro ozemljitev na osnovah, iz katerih lahko zgradite. Tečaj se zdi, da ustvarjajo zanimanje in navdušenje za okvir med razvijalci.
  • Uporabljal Zend okvir: Medtem ko je bilo lepo na obalo do nekaj zelo osnov sem se počutil na čas, trud in sredstva, da se potek bi bilo bolje porabiti za drugje. To bo lepo, da see Zend ustvariti novo višjo stopnjo tečaja, da se razvijalcem na naslednjo stopnjo. - Vsaj po standardu certificiranja in širše Za to bi se prijavim takoj.

[Obvestilo] otrok pid XXXX izhod signala Segmentacija napake (11)

Z in nedelja 11. oktober 2009 06:09 pm

Če ste pred kratkim nadgradili PHP ali Apache ste morda začele pred izdajo svoj ​​spletni strežnik vračajo praznih strani in metanje sporočil o napakah v svoje dnevnike z ne vem, zakaj, tukaj je eden od možnih načinov, da to popravimo ...

Imel sem ta problem nekajkrat v zadnjem času po nadgradnji Apache ali PHP na virtualni stroj. Prvič, ko sem opazil napako sem preprosto obrnil na rezervno mojega VM, vendar drugi čas sem ugotovil, da bi morali pogledati v to vprašanje.

Prvič, ko sem opazil izdaji nekaj mojih spletnih strani, ki so služila kot praznih datotek, medtem ko so drugi delali popolnoma v redu. Po nekaj preiskav sem ugotovil, da apache pisal ven na / var / log / HTTP / error_log z naslednjim sporočilom repeatidly:

[Obvestilo] otrok pid XXXX izhod signala Segmentacija napake (11)

Tam ni dodeliti, da gre za on-line, in večina strani o njem sled off nič. To je dejal, sem zožil vprašanje za PHP treskav, ko poskušajo nepotrebnih dinamičnih knjižnic.

Če pogledamo na mojem php.ini (/ etc / php.ini) sem komentiral iz vseh dinamičnih knjižnic obremenjenih načrtovanje jih komentiral nazaj kot je potrebno. 2 sem moral vzeti tam, kjer pdo.so in mysql . tako.

Ko so bili ti odstrani vse moje spletne strani so vročitve v redu, tako kot pred posodobitvijo PHP / Apache.













Panorama Tema, ki jo Themocracy

6 obiskovalcev online zdaj
4 gostov, 2 bots, 0 članov
Največ obiskovalcev danes: 22 ob 07:35 uri UTC
Ta mesec: 26 04-04-2012 ob 10:27 pm UTC
V letošnjem letu: 69 27-02-2012 ob 09:56 uri UTC
Ves čas: 130 v 28-03-2011 10:40 pm UTC