Kategória: Počítače

Apache proxy s overovací

Tým, Steven Lloyd Watkin , v nedeľu 27. marca 2011 12:57

Tento príspevok sa rýchlo ukáže, ako nastaviť proxy sa základné autentifikáciu pomocou Apache .

V mojom prípade som chcel mať prenos bit torrent klient k dispozícii na internete, takže som mohol skontrolovať a adminster torrent na stiahnutie stavu (napríklad najnovšie vydanie Fedory), ako je požadované. Prevodovka beží jej webový klient na porte 9091 v predvolenom nastavení. Skôr než trápiť otvorenie viac portov na firewalle a pridanie nessecary pravidlá pre odovzdávanie portu som sa rozhodol by som len proxy volania prostredníctvom prenosu cez apache pomocou mod_proxy .

Pokračovať v čítaní 'Apache proxy s overovací' »

Zend Framework: Render Ak existuje

Tým, Steven Lloyd Watkin , v nedeľu 12.12.2010 16:19

Zhrnutie

Jedná sa o rýchly príspevok k diskusii o pomerne jednoduchý pohľad pomocník som vytvoril pre vykresľovanie Zend Framework štýl zobrazenia súboru len vtedy, ak existuje. Všeobecne žiadať kód k tomu, aby súbor, ktorý neexistuje, bude hádzať výnimku. Preto som vytvoril obal pre Zend_View:: render () metódu, ktorá určuje, či súbor existuje a ak áno, omietky, inak proste vráti prázdny reťazec.
Pokračovať v čítaní 'Zend Framework: Render Ak existuje' »

Zend Certified Engineer (ZCE) 5,3

Tým, Steven Lloyd Watkin , štvrtok 30 septembra 2010 21:00

S oficiálne vydanie v Zend Certified Engineer (ZCE), program pre 5,3 Myslela som, že dám rýchlo dojem z toho, čo som si myslel, zo skúšky.

Niečo na pozadí na seba: Ja som bol prvýkrát predstavený na PHP asi pred 7 rokmi a pracovali profesionálne v PHP od roku 2006. V súčasnosti pracujem pre vzrušujúce start-up volal Brightpearl so sídlom v Bristole vo Veľkej Británii , vyrábajúce integrované CRM, účtovníctvo a elektronického obchodovania softvér. Som zatiaľ nezískala žiadne z predchádzajúcich ZCE kvalifikácie. Aj v súčasnosti vyvíjajú v rade 5.2.X a nie skutočne použité žiadne osobitné črty 5,3 (čakám na Zend Framework 2 a doktrína 2) vo svojej rozvojovej projekty.
Pokračovať v čítaní 'Zend Certified Engineer (ZCE) 5,3' »

Zend Framework na modul Layout Settings - Spracovať

Tým, Steven Lloyd Watkin , utorok 16 februára 2010 20:48

V nadväznosti na môj predchádzajúci príspevok na modul založený na rozloženie nastavenia pre Zend Framework , som aktualizoval kód požadovať menej nastavení ako predtým (nie že by to vyžadovalo viac, že pár riadkov v konfigurácii aplikácie!).
Pokračovať v čítaní 'Zend Framework na modul Layout Settings - Spracovať' »

Úrad výpočtových sietí pomocou virtuálnych prostredí - Časť 4

Tým, Steven Lloyd Watkin , piatok 04.12.2009 23:59

Úvod

Pracujem vo firme, kde sme sa spustiť veľa dávkové úlohy spracovanie milióny záznamov dát každý deň a ja som bol nedávno premýšľal o všetkých strojoch, ktoré sedia okolo každého a každý deň nerobí nič pre niekoľko hodín. Nebolo by dobré, keby sme mohli využiť týchto strojov pre posilnenie výpočtového výkonu našich systémov? V tomto súbore článkov Idem sa pozrieť na potenciálne výhody zamestnávanie úradu siete pomocou virtualizovaných prostrediach.

V časti 3 sme vytvorili virtuálne spracovanie a nastaviť počítače so systémom Windows, aby sa stal nečinnosti-úväzok.

Nainštalovaný najnovší kód

Nevyhnutne po vytvorení vašich pracovníkov obchodnej logiky sa bude meniť, bude sa nachádzajú chyby, účinnejšie kód bude rýchlejší vyrábať tak opúšťať vaši zamestnanci sedeli spracovanie dát pomocou starý smradľavý kód . Ako teda zabezpečíme, že sme vždy používať najnovšiu a najlepšiu verziu nášho spracovanie skriptov?

Existuje niekoľko jednoduchých spôsobov, ako ľahko sme mohli urobiť to, trik, však, je zníženie výpočtového výkonu a sieťovú prevádzku v dosiahnutí tohto cieľa. Začnime s najjednoduchšie riešenie a zlepšiť to pomaly cez niekoľko iterácií.

Prvá metóda by sa jednoducho pripojiť k nášmu serveru kontroly práce (cez Sambu, FTP, alebo podobné) a strhnúť najnovšiu verziu kódu. Nie veľmi výkonný, ale to bude robiť svoju prácu. Umožňuje zlepšiť na tom niečo, ako sa o vytvorenie a použitie rsync skript, že zakaždým, keď namiesto toho? Inak, čo sa o uvedenie našich najnovších spracovanie skriptu do podvracanie odhlasovaní kód spočiatku a potom už len aktualizovať náš kód na každom spustení ( svn update )?

V závere sme mohli skončiť s bash skript (nazvaný cron každých 10 minút), ktorý vyzerá rovnako jednoduché ako tento:

  #! / Bin / sh
 ak ps ax | grep-v grep | grep php > / dev / null
 potom
     echo "práca je v súčasnej dobe spracovania, exit"
 iného
     echo "práca nie je spustená, spustite teraz"
     cd / cesta / k / pracovné / copy
     svn update
     php yourJobProcessingScript.php
 fi 

Teraz môžeme byť istí, že s každým spustení sme definitívne spustený posledný kód. Sme to zabezpečiť, že sa aktualizuje základný kód každej dobe vykonávame beh a obmedziť prevádzku v sieti iba prenos súborov rozdiely medzi našej siete.

V mojom demonštrácie nastavenia, urobil som presne, ako je uvedené vyššie. Subversion je nainštalovaný na svojom serveri spracovanie zákaziek a ja som proste vytiahol posledný kód z 'pracovník' pobočka pomocou 'svn update'. Tiež som pridal číslo verzie značku môj spracovanie skript, ktorý bol vrátený do databázy ako súčasť výsledkov návratu. Týmto spôsobom som mohol vidieť, že môj kód bol aktualizovaný zakaždým, keď som kopíroval môj kufor do tj pracovník pobočky, že som bol rozhodne beh najnovšie spracovanie skriptu.

Použitie najnovších údajov

Ak je vaša práca spracovanie využíva zdroje údajov potom v určitom okamihu sa jedná bude aktualizovaný tiež. Ak ste zavolať svoje zdroje dát na veľmi riedke základe budete povodňovej vašej siete s prevádzkou, akonáhle si pracovníci začnú prinášať všetko, čo ku kľudu. Pre moje riešenie, som sa rozhodol, že by som chcel presunúť svoje zdroje dát okolo s mojou VM.

Hold si tam kone! Čo ak je moja zdroje dát sú obrovské? No to je naozaj prípad, koľko dát je reč? To môže byť viac efektívne z hľadiska nákladov na inštaláciu ďalšie väčší pevný disk na každom stroji, než na nákup ďalšie spracovanie servera. To je otázka rozpočtu a je na podniku, aby rozhodol. Je možná, že vaše zdroje dát sú tak veľké, že je to len možné, aby toto množstvo dát vo vašom pracovník stroja. V tomto prípade to, čo by ste robili? Tak sme sa mohli pozrieť na volania miestnej dátový server, ale môže to spôsobiť problémy so sieťou. V tomto prípade distribučnej sústavy, ako je tento, sa môže stať nereálne zahrnúť do kancelárskeho prostredia. To môže tiež byť, že sa môžete pozrieť na alternatívne beh stratégií, napríklad iba volanie vaši zamestnanci medzi dvadsať hodín a 6 hodín ráno každú noc a / alebo škrtiacej zdroj údajov žiadostí.

Pohybujúce sa na povedzme našich dátových zdrojov činí 100 GB dát. No áno, to je docela dost dát sa pohybovať po sieti na aktualizáciu. Ako by sme zabezpečiť, že máme poslednej kópie dát v tomto prípade? Rsync je možné, ale osobne si myslím, spustením svojej najnovšej zdroja dát na serveri miesto spracovania a toto nastavenie ako majster v replikáciu (s veľmi dlho bin log) by mohol byť spôsob, ako ísť:

replikácie Pri nastavení každého z vašich zamestnancov sa ako otrok do práce aktualizácie ovládanie servera do zdroja údajov budú pekne steká do svojho zamestnanca, bez k obrovskému nárastu činnosti siete (ktorá je, ak budete vykonávať obrovské množstvo dát aktualizovať a všetkých svojich zamestnancov kop vo naraz). To má výhody oproti rsync v tom, že by nedostal dlhá pauza pred každú prácu, ako je aktualizácia databázy, mysql na váš zamestnanec bude daemon priebežne aktualizovať svoje údaje, zatiaľ čo spracovanie pokračuje.

To je, ako mám nastaviť svoj server demonštrácie. Ak chcete nastaviť replikácia Sledoval som návod na stránkach mySQL ( Nastavenie replikácie ) a do 20 minút som mal inital pracovník kopírujúci kontroly práce servery dátového súboru. Za každý ďalší pracovník nastavenia replikácie a proces pracoval zakaždým, keď bol skopírovaný VM.

Zhrnutie

V tejto časti článku sme sa pozrel na to, ako ľahké a bezbolestné je, aby vaše spracovaní kódu v aktuálnom stave pomocou rsync alebo using subverion (SVN) robiť prácu a znížiť prevádzku v sieti v rovnakú time. Hovorili sme tiež o tom, ako , aby vaše informácie o zdroji údajov sa-to-dáta tým, že mu dostali až ku každému z vašich pracovníkov. Tak sme oblasť zabezpečenie toho, že sme sa držať krok s obchodnej logiky a informácie v našom systéme kancelárii siete. K dispozícii budú samozrejme nespočetné množstvo alternatív na plnenie týchto úloh, ale tu boli dva jednoduché príklady ukazujú, aké ľahké je riešenie prísť.

Nabudúce

V záverečnej časti tohto seriálu, vhodne pomenovaný Časť 5 , budeme diskutovať o nasadenie tohto systému pre. Budem zhrnúť to, čo sme sa naučili a čo sa mi podarilo vytvoriť.

Úrad výpočtových sietí pomocou virtuálnych prostredí - Časť 3

Tým, Steven Lloyd Watkin , piatok 04.12.2009 23:37

Úvod

Pracujem vo firme, kde sme sa spustiť veľa dávkové úlohy spracovanie milióny záznamov dát každý deň a ja som bol nedávno premýšľal o všetkých strojoch, ktoré sedia okolo každého a každý deň nerobí nič pre niekoľko hodín. Nebolo by dobré, keby sme mohli využiť týchto strojov pre posilnenie výpočtového výkonu našich systémov? V tomto súbore článkov Idem sa pozrieť na potenciálne výhody zamestnávanie úradu siete pomocou virtualizovaných prostrediach.

V časti 2 sme sa pozreli na pracovné miesta server pobeží, a ako pracovných miest by mal byť nakonfigurovaný tak, aby sa dosiahlo čo najväčšie množstvo spracovanie a zároveň zabezpečiť, že každá práca je spracovaná bez výnimky.

Nastavenie pracovník - alebo núdzový server

Ďalším krokom v tomto procese je nastaviť virtuálny pracovníkov. Pre tento budem používať inštalácia CentOS pomocou VirtualBox. Idem k inštalácii MySQL a PHP na serveri, tiež známy ako krívať (Li Nux, m ySQL, P HP) Servera (Možno som sa, že názov sa).

  • Inštalovať VirtualBox na váš počítač so systémom Windows (nasledovať odkaz)
  • Stiahnuť a nainštalovať CentOS (aktuálna verzia 5.3) v rámci vytvorený virtuálny stroj

Neexistuje žiadny bod, aby som bude to tam asi 1.000 's veľkou cvičenie vonku (ok, tu je jedna: Vytvorenie a Managing CentOS virtuálny stroj pod VirtualBox ). Dôležité poznamenať, myslím, že som zavolala virtuálny stroj GridMachine.

Čo sa týka mojej voľby virtualizácie klientov a operačný systém tam nie je žiadny veľký závažný dôvod pre každú voľbu. VirtualBox je niečo, čo som sa používať na svojom domácom počítači a je podporovaná tromi hlavnými operačnými systémami. Vybrala som si CentOS ako dobrý stabilný OS, a používam ho na vlastný webový server. Som veľkým zástancom správne nástroje pre prácu (aj keď ja som použitie 'použitia najrýchlejší a najjednoduchší pre vás' mentalita tu), takže ak operačný systém X spúšťa svoj ​​kód rýchlejšie a efektívnejšie využiť, že namiesto toho:)

Dôležité je, aby vaše VM používa DHCP, inak za každý nový virtuálny stroj by bolo nutné konfigurovať samostatne, ktoré je niečo, čo nemáme want.By pomocou DHCP nepotrebujeme pre konfiguráciu sieťových nastavení individuálne pre pracovníka stroje, bude DHCP hand z IP pre vás. Preto je možné skopírovať vaše virtuálny stroj o kancelárii bez obáv o nastavení každej z nich sa (to zvyšuje škálovateľnosť a zníži pracovník správy).

Proces by ste mali za cieľ dosiahnuť, by bolo získať nový fyzický stroj, nainštalovať VirtualBox a potom do značnej miery nasadiť virtuálny obraz, bez veľa iného. To by mohlo byť múdre nastaviť všetky svojich zamestnancov na inej podsieti, takže si môžete aspoň vidieť, koľko strojov so systémom. Budete tiež musieť nastaviť stroje na dlhodobý prenájom alebo lízing neobmedzené DHCP.

Ako spustiť práce na pracovníka

Jedná sa o zaujímavú oblasť a tam je niekoľko overených metód pre spracovanie práce na pracovníka. Tu som si len diskutovať dva najevidentnejší:

  • Trvalo spustenie skriptu: Skript, či už je to shell skript, alebo PHP skriptu je vykonaný raz na pracovníka a beží ako súčasť nekonečnej slučky. Ja som túto metódu diskontovaných ako jeden pád skript a potenciálne vaši zamestnanci prestanú plynúť, bez toho aby nejaký zásah.
  • Cron na základe skriptu: každých x minút cron démona začína volanie skriptu dať veci do pohybu. Bez nejaké kontroly by to mohlo viesť k mnohých mnohých kópií pracovníka skript beží.

Moje rozhodnutie bolo ísť s cron, ktorý odštartuje skript každých 10 minutes. Môj skript vykoná nasledujúce úlohy:

  1. Získať zoznam procesov a grep to pre 'php'. Ak nebol nájdený potom pokračovať.
  2. Zavolajte svoju prácu kód, v mojom prípade by to bolo niečo, čo PHP na základe
  3. Pracovník skript dokončí jeho beh
  4. Pripravený ísť zase na ďalšie príslušné výzvy

Moja bash skript vyzerá takto:

  #! / Bin / sh
 ak ps ax | grep-v grep | grep php> / dev / null
 potom
     echo "práca je v súčasnej dobe spracovania, exit"
 iného
     echo "práca nie je spustená, spustite teraz"
     php yourJobProcessingScript.php
 fi 

Poznámka: echo sú takmer úplne zbytočné, ale môže pomôcť ďalšia osoba, ktorá príde, aby sa pokúsila upraviť.

Tým končí nastaviť pracovníka virtuálneho stroja, rýchly, jednoduchý a ľahko kopírovať pre každý nový kus hardvéru, ktorý ich prijal. 'Prefíkanosť' distribučnej sústavy naozaj nie je v OS zviditeľniť, jeho všetko robiť s kódom vytvorených pracovných miest pre spracovanie, práce konfigurácie, a uistite sa, že práca spustí v prípade potreby (tj keď hostiteľ je nečinný ).

Nastavenie systému Windows pre inicializáciu pracovníkov

Prvou úlohou je vypracovať príkazu potrebné na spustenie virtuálneho stroja z okna príkazového riadka. Ak ste nainštalovali VirtualBox v predvolenom umiestnení a ste vymenoval svojho pracovníka GridMachine potom príkaz požaduje, aby zaťaženie vášho pracovníka je:

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

Avšak spustiť skript v 'bezhlavého' stavu musíme použiť:

  "C: \ Program Files \ nie. \ VirtualBox \ VBoxHeadless.exe"-startvm GridMachine - VRDP = off 

Tým sa spustiť virtuálny počítač bez grafického používateľského rozhrania a nechajte ju zachrániť štátny elegantne. Druhý argument sa vypne RDP tak to nie je v rozpore s oknami RDP, alebo vám správu o načúvaní na porte 3389. Názov virtuálneho stroja je malé a veľké písmená!

Ďalej budeme musieť nastaviť okna až k naštartovaniu nášho pracovníka VM, akonáhle stroj bol nečinný. Ak to chcete (na Windows XP), budete musieť ísť Štart -> Programy -> Príslušenstvo -> Systémové nástroje -> Naplánované úlohy ako je uvedené nižšie:

naplánovaných úloh

Ďalšie kliknite na 'Pridať naplánovanú úlohu' nasledované prechádzať pridať vlastný program. Navigovať do VBoxManage skrípt a kliknite na tlačidlo OK. Rozvrh váš úloha pre niektorú z možností (budeme zmeniť v minúte) a pokračujte. Po preskočení na ďalšiu obrazovku Windows sa vás opýta, kto chcete spustiť túto úlohu, tak by som navrhnúť buď 'správcu' alebo vytvorenie nového privilegovaný užívateľ. Pamätajte, nechceme zasahovať do štandardnej zamestnanci účet na stroji, na akomkoľvek mieste. Kliknite na tlačidlo Ďalej a skontrolujte zobraziť pokročilé možnosti pre túto úlohu.

Na konci behu textového poľa pridať naša 'startvm GridMachine' reťazec, a zabezpečí, že beží iba pri prihlásení je vľavo unticked. Navštívte harmonogram úloh a ďalšie zmeny rozvrhu rozbalovacieho na voľbu 'pri nečinnosti', vyberte dobu, po ktorú chcete, aby bol stroj nečinnosti pred prechodom na ďalšiu záložku.

Nakoniec zrušte začiarknutie voľby v ktorom sa uvádza zastaviť úloha, ak bol spustený X množstvo času, ale zaškrtnite možnosť zastaviť úloha, ak je stroj už nie je nečinný.

plán

To je to potom pre Windows Host nastavenie!

Zhrnutie

V tejto časti sme vytvoriť virtuálny stroj pôsobiť ako robotník, rovnako ako spôsob, ktorý nazývame a spúšťať skripty naša práca spracovanie (pre seba PHP skriptu). Odtiaľ sa pozrieme na to, ako nastaviť naše kópie okien naštartovať virtuálny počítač v režime bezhlavý, keď je počítač nečinný stane, a uložiť svoj stav, keď používateľ obnoví využitie stroja. Dúfajme, že v túto chvíľu vidíte, aké jednoduché je vytvoriť taký systém, a sú svrbenie získať nejaké pokusy ísť sami!

Nabudúce

V časti 4 sa budeme sa pozerať na používanie nástrojov, aby zabezpečila, že používate najnovšiu verziu kódu a dátových zdrojov tak, aby získané výsledky sú vždy up-to-date s najnovšími obchodných informácií a logiky.

Úrad výpočtových sietí pomocou virtuálnych prostredí - Časť 1

Tým, Steven Lloyd Watkin , piatok 04.12.2009 23:23

Úvod

Pracujem vo firme, kde sme sa spustiť veľa dávkové úlohy spracovanie milióny záznamov dát každý deň a ja som bol nedávno premýšľal o všetkých strojoch, ktoré sedia okolo každého a každý deň nerobí nič pre niekoľko hodín. Nebolo by dobré, keby sme mohli využiť týchto strojov pre posilnenie výpočtového výkonu našich systémov? V tomto súbore článkov Idem sa pozrieť na potenciálne výhody zamestnávanie úradu siete pomocou virtualizovaných prostrediach.

Ako PHP developer budem používať nástroje, ktoré používam každý deň a to, Linux, mySQL , PHP, VirtualBox a Subversion (SVN). Avšak dúfam, že tento sprievodca bude adaptovať do iných jazykov a technológií, rovnako dobre.

Riešenie, ktoré som poskytujú bude veľmi voľne založený na type spracovanie by sme mali dosiahnuť však to nemusí byť pravda, celý článok, ako budem meniť veci pre jednoduchosť, alebo produkovať viac zaujímavých scenárov použitia.

Tieto virtualizovaných prostrediach pobeží na Windows strojoch, pretože to je to, čo väčšina úradov behu. Spracovanie, kancelárske stroje sa nemalo zasahovať pracovníkmi pomocou týchto strojov, by mala vyžadovať žiadnu údržbu na stroji, a musí byť ľahko nasadiť na nové stroje, ktoré budú k dispozícii. Tiež by nové virtuálne stroje nevyžaduje žiadne ďalšie nastavenia, pretože to výrazne znižuje škálovateľnosť a jednoduché, pri ktorej môže distribučný systém rozšírený.

Prečo Nasadenie Office Computing Grid?

Po prvé si môžu myslieť, prečo nie práve použitie cloud computing zdroja, ako je Amazon EC2 platforma ? No dôvodov môže byť niekoľko, napríklad:

  • Nebudete zveriť niektoré údaje na životné prostredie cloud computing
  • Nemôžete dať niektoré údaje v prostredí cloud computingu pre právne dôvody (napr. údaje výjazde z krajiny), prípadne z právnych dôvodov, napr NHS záznamov.
  • Chcete, aby vaše spracovateľských jednotiek blízko a mať plnú kontrolu nad hardvérom príliš
  • Nemáte projekt finančné prostriedky na spustenie inštancií cloud
  • Váš úrad nemá pripojenie k internetu, a preto nie je možné jeho použitie cloud zdroje
  • Nemáte ako dážď, mraky naznačujú dážď, preto budete mať ďaleko

Som si istý, zoznam by mohol pokračovať, ale myslím, že by pre začiatok stačilo.

Výhody gridovej výpočtovej Office

Dobre, poďme urobiť nejaký matematiky (a fyziky v pravom štýle umožňuje vykonať niektoré rozsiahle predpokladov). Predstavte si, že máte veľký svalnatý spracovanie server bežiaci 100 pracovných miest za deň. Vo vašej kancelárii máte 50 strojov, ktoré sú nečinnosti 16 hodín denne, každý z týchto strojov je 10% ako silný ako svalnatý spracovanie sever. (Všetky výsledky tu sú zaokrúhlené na podceňovať zvýšenie výkonu).

Takže stroj * 10% energie * 2 / 3 = 0,067 času, tj o 1 pracovnej ploche spracovanie v nečinnosti by mohlo 1 proces, 6 plný úloh za deň.

Ak teraz meradlo to až za 15 nečinnosti stolných počítačov až po proces čo najviac pracovných miest za deň ako hlavný server pre spracovanie robí.

Takže v našej kancelárii predstierať 50 strojov by sme mohli zvýšiť náš výkon spracovania od 1 do 4 server plný spracovanie servery, alebo by sme mohli byť spracovanie 400 pracovných miest za deň namiesto 100.

Všimnite si, bez investície do nového hardvéru vaša firma práve zvýšila dávkové spracovanie kapacita 4 krát! Potenciálne sa chystáte zvýšiť spotrebu energie, ale z väčšiny kancelárskych prostrediach Bol som na stroje sú zvyčajne vľavo na cez noc rovnako, takže ste mohli vidieť ako zelenú iniciatívu.

Ďalšie výhody tiež znamená, že investície do nových (či aktualizované) spracovanie servery môžu byť odložené, ak vaše kancelárskych strojov, sú dostatočné a že, ako si vylepšiť výkon vášho kancelárskych strojov kancelárie sieť stala silnejší automaticky.

Technológia

Čo budete potrebovať? (Alebo viac správne to, čo som použitia):

  • Nečinnosti kancelárske stroje (v mojom prípade náhradnej starých okien notebook XP)
  • VirtualBox (alebo iný virtualizačné klientsky softvér)
  • Virtuálny stroj s PHP, mySQL running beží rúbať OS, volám týchto mojich Limp servery:)
  • Pracovných miest pre spustenie
  • Zamestnanie server (môže byť iný virtuálny stroj niekde)

Typická práce

Typy úloh, ktoré tento systém je navrhnutý tak, aby ich takto:

  • Systém dostane zoznam údaje, na ktorých musíme zápas a vrátiť výsledky
  • Zodpovedajúce zahŕňa kontrolu / vyhľadávanie niekoľko (pomerne statické) zdroja údajov
  • Výsledky zo zdrojov údajov môžu vyžadovať ďalšie validácie, zlučovanie, overovanie ďalších dátových zdrojov v reakcii na výsledky
  • Dáta sa vracia s zodpovedajúce záznamy, plne overený a spracovaný
  • Každý záznam v zamestnaní je nezávislá od zvyšku

Takže v podstate sa pozeráme na bežiaci úlohy, ktoré vyžadujú zmes vyhľadávanie v databázach a nejaké číslo drviť, pomerne typický scenár v podnikateľskom prostredí.

Mriežka riešenia sú nielen výhodné pre spracovanie práce tohto typu. V podstate môže byť každý proces, ktorý môže byť rozdelený do nezávislých jednotiek, ktoré budú prebiehať súbežne. Pozri tento wikipedia pre príklady a ďalšie informácie: grid computing , ale pár známych príkladov je Seti @ Home a BIONC . Existujú rámca pre prevádzku výpočtových sietí, a tieto sú dobre stojí hľadá do.

Čo budeme dosiahnuť?

Do konca týchto článkov Dúfam, že sa ukazuje, že rozmiestnenie úrad siete nemusí byť obrovsky nákladná a časovo náročná. Idem na prerokovanie:

  • Nastavenie práca kontrolného systému, práca konfigurácia
  • Vytvorenie vhodného spracovania virtuálny stroj
  • Ako nastaviť systém na počítač so systémom Windows
  • Zaistenie, že používate najnovšie kód a dáta
  • Nasadenie a benchmarking
  • Výhľad do budúcnosti

Budem budovy (ok som staval, potom napísal), príklad aplikáciu na testovanie koncepcií na lokálny počítač v systéme Windows XP a moje 'GridMachine' virtuálny stroj. Mojou úlohou kontroly server bude môj hlavný stroj, ktorý beží Fedora 11 .

To je v žiadnom prípade predviesť plne funkčný robustný systém, jeho znamenal viac demonštrácii a diskutovať o tom, že tieto veci môže byť dosiahnuté v primerane krátkom čase a za malú cenu. Neváhajte a pošlite mi akékoľvek pripomienky, opravy, či vylepšenie a ja budem robiť moje najlepšie, aby tento článok aktualizovaný na zápas.

Nabudúce

V časti 2 Začnem sa pozrieme na systém kontroly práce, a pozrite sa na to, ako by mala práca byť nakonfigurovaný tak, aby sa dosiahlo čo najväčšie množstvo spracovanie a zároveň zabezpečiť, že každá práca je spracovaná bez výnimky.

Úrad výpočtových sietí pomocou virtuálnych prostredí - Časť 2

Tým, Steven Lloyd Watkin , piatok 04.12.2009 23:23

Úvod

Pracujem vo firme, kde sme sa spustiť veľa dávkové úlohy spracovanie milióny záznamov dát každý deň a ja som bol nedávno premýšľal o všetkých strojoch, ktoré sedia okolo každého a každý deň nerobí nič pre niekoľko hodín. Nebolo by dobré, keby sme mohli využiť týchto strojov pre posilnenie výpočtového výkonu našich systémov? V tomto súbore článkov Idem sa pozrieť na potenciálne výhody zamestnávanie úradu siete pomocou virtualizovaných prostrediach.

V časti 1 som dal prehľad o systéme a technológií, budem používať, rovnako ako diskutoval niektoré z možných dôvodov, prečo by ste chceli vytvoriť kanceláriu mriežky.

Riadenie práce

Ak sa chystáte byť bežiaci úlohy potom budete potrebovať nejaký spôsob, ako riadiť. Vašou úlohou riadiaceho systému (na svoju prácu serveri) musí byť naozaj dobre premyslený ešte predtým, než pokúšať sa spustiť funkciu siete. Tak za prvé, aké sú úlohy pre systém kontroly práce:

  • Rozdávať prácu na žiadosť zamestnanca
  • Povedzte pracovníkov, aký typ úloh spustiť
  • Sledovať pracovných miest
  • Uistite sa, že pracovné miesta sú poháňané iba raz
  • Poskytnúť zamestnanie údaje na pracovníkov, alebo aspoň povedať, kde ho získať

Systém tiež musí byť rozšíriteľné, riešenie, ktoré funguje zatiaľ v jedinom prípade môže byť predĺžená spustiť niekoľko typov pracovných miest, ako obchodný vidia hodnotu v mriežke riešení. Môžu napríklad získať prácu priority, môže byť viac ako jedno zamestnanie typu existujú (tj niekoľko základní kód), prípadne môžete dokonca prevádzkovať niekoľko rôznych pracovníkov stroje, ktoré sú optimalizované pre každý typ zamestnania (aj keď to nie je odklon od 'všeobecných pracovník 'nápad). Vždy sa snažím myslieť na budúcnosť pri vývoji systémov, môže krátkodobo viesť k vízii dlhodobej frustrácii a zvýšený dobu vývoja.

Server práce

Budeme sa musieť niekde kontrolovať naše práce od, malo by to byť jediný systém vo svojej sieti, ktorá má pevnú Resource Locator, je, že IP adresu, názov hostiteľa, URL (pomocou interné DNS), atď Je to preto, pracovníci musia vedieť, kde hľadať prácu, pracovníci musia nájsť prácu kontrolného systému (nie práca kontrolného systému nájdete pracovníkov).

Zamestnanie server sám o sebe nemá naozaj zložitá úloha (v základnom systéme v každom prípade), je potrebné uložiť zoznam miest, ruku pracovných miest, dostane výsledky, a následne uložiť na neskoršie použitie. Ako sú tieto súčasti (napr. 'ruku pracovných miest') definovaný môže byť veľmi jednoduchý. Neskôr môžeme rozšíriť systém zahŕňa administračné rozhranie pridávať, upravovať, mazať, pozastaviť pracovných miest, ale to je nad rámec tohto cvičenia.

Nie je žiadny dôvod vôbec potom, že vaša práca server nemohol byť virtuálny stroj bežiaci vo Vašom hlavnom spracovanie server predpokladu, že nedôjde mozgov príliš veľa prostriedkov z nej. Zamestnanie server však nemá potrebu vysokej dostupnosti, pokiaľ to ide dole v piatok večer budete strácať celý víkend spracovanie, prípadne vás to stálo za pár týždňov v hodnote čas spracovania (v porovnaní s hlavným spracovania server sám) . Môžete chcieť, aby zvážila svojej práci na serveri zaťaženie vyvážené prostredie pre vysokú dostupnosť.

Základné nastavenie

Základné nastavenie pre náš server práce sa bude skladať z toho, čo som volať jeden z mojich serverov Limp (to je Li Nux, m ySql, P HP). Kód bežiaci na Thea zamestnancov bude skutočne fungovať, aké zamestnanie to môže bežať v interakcii s databázami práce s riadiacim systémom. Neskôr by sme mohli vytvoriť webové služby, a skutočne ruku pracovné miesta skôr než mať pracovníci robiť ťažkú ​​prácu sám, ale teraz budeme pokračovať v používaní princípe KISS (Keep It Simple, Stupid!).

Takže, umožňuje vytvoriť tri mySQL tabuľky sa zaoberať pracovných miest. Tie budú "pracovných miest", `jobRecords` a `` jobResults.

pracovných miest tabuľky Tu som pomocou SQL Buddy veľký malý alternatíva k phpMyAdmin len preto, že jeho ľahšiu inštaláciu na CentOS (pre ostatné pozri: 10 Veľké alternatívy k phpMyAdmin )

Táto tabuľka sa skladá z 5 jednoduchých polí,

  • id: Jedinečná identifikácia práce
  • Meno: Mohol by to byť klientom odkaz, alebo ľubovoľný počet iných identifikátorov
  • Stav: Musíte vedieť, kde je práca na napr.
    • 0: Nie je začal
    • 1: vyzdvihli sme
    • 2: Dokončené
  • started_by: Kto je začal robiť prácu? To nie je úplne nutné, ale je pekné mať. Ja by som navrhnúť sledovanie zamestnancov podľa ich IP adresy vo vašej sieti
  • started_at: Kedy sa pracovník štart prácu? Do sledovania pracovných miest, ktoré nie sú dokončená do množstva X čas vieme, že je potrebné vyzdvihnúť prácu znova a začať spracovanie iným pracovníkom. Pracovníci by mohli zastaviť spracovávanie / go offline pre ľubovoľný počet dôvodov, výpadku napájania, havárie, strata siete, atď

Je to jednoduché, ako by to mohlo rozšíriť tabuľku s niekoľkými ďalších oblastiach s cieľom umožniť sledovanie štatistík, konečný čas stĺpce vidieť, ako dlho trvalo zamestnanie, počítadlo, koľko pracovníkov zdvihol prácu (samozrejme to musí zvyčajne 1), pracovné priority, môže do zoznamu pokračovať ďalej a ďalej. V zložitejších pracovných scenárov, že by bolo možné určiť, koľko pamäte pracovník by potrebujú prístup k (a teda použiť len vhodných pracovníkov), alebo dokonca aký typ pracovníka, by bolo potrebné.

Umožňuje pridať niekoľko príkladov pracovných miest:

Napríklad práce

Nasledujúca tabuľka opäť je docela jednoduchý na pochopenie, to sú naše práce záznamov. Tie sú napojené na hlavné pracovné miesta tabuľky stĺpec `jobs_id". Tvoria z tejto tabuľky veľmi závisí od typu dát, ktoré musíte zadať do svojho zamestnanca, nechá urobiť veľmi jednoduchý príklad, kde máme štyri stĺpce:

  • id: ID záznamu
  • meno: meno osoby
  • adresa: osoby adresa
  • jobs_id: ID zamestnanie, že tento záznam je spojená

Tretia a posledná stôl sa skladá z výsledkov tabuľky, to má veľa rovnaký tvoria ako naše záznamy stôl, a s pridaním niektorých stĺpcov by mohlo byť súčasťou záznamov tabuľky:

  • job_record_id: Odkaz výsledok práce stola
  • Výsledok: Výsledkom dáta

... A to je všetko, čo potrebujete pre prácu kontrolou! (Aj keď na veľmi základnej úrovni) V mojom prípade ja som uviedol do inej tabuľky, kde sa nachádza moje osobné údaje na spracovanie, ale toto mohlo práve ako ľahko byť súbor, parametre pre spustenie simulácie kód, čo si len spomeniete.

Výber práce

Ako už bolo uvedené skôr, budú pracovníci robiť našu prácu vedenia pre nás teraz, takže musíme naozaj urobiť, je nájsť si prácu, ktorá potrebuje spracovanie a získať informácie. Ako by sme to urobiť? No vyzdvihnúť naše kritériá výberu zamestnania a hľadať prácu v SQL som nasledovné:

  1. Vezmite všetky úlohy, ktoré nie sú označené ako kompletné, ale z nášho pracovníka, a reset je (náhradné __ME__ s identifikátorom, bude najjednoduchšie je IP adresa):
      UPDATE `` SET `zamestnanie status" = 0, kde `štatút` = 1 `A` = started_by __ME__; 
  2. Pomocou našich kritérií výberu povolania, vyberte práce a povedať kontrolný systém, ktorý tento pracovník sa zaoberá sa:
      UPDATE `` SET `miest status = 1`, `started_by` = __ME__, `started_at` = NOW (), KDE `štatút` = 0 alebo
     (`Status` = 1 A `` started_at> DATE_SUB (NOW (), Interval X HOUR)) ORDER BY `id` ASC; 

    Tým, že chytí úlohy, ktoré neboli vrátené výsledky vo výške X sme zabezpečiť, že všetky úlohy sú spúšťané v prípade pracovníka zhadzovať alebo ísť AWOL.

  3. Ďalšie uchopiť zamestnanie podrobnosti nasleduje záznamov sami:
      SELECT * FROM `pracovných miest", ak `` = started_by __ME__ LIMIT 1;
     SELECT * FROM `` job_records Kde `id` = __JOBID__; 

Po dokončení práce vložíme náš výsledok záznamy a označiť prácu ako kompletné. Pamätajte si, ako pracovných miest môže pozastaviť / obnoviť kedykoľvek počítať s nejakou robustnosť v skripte. To by mohlo byť, že úloha odložia polke aktualizácie prácu kontrolného systému, takže kontrola počtu záznamov v zamestnaní a počet výsledkov uloží späť do systému kontroly práce by múdry ťah.

Okrem toho, aj keď to ukazuje, ako možno pracovné miesta byť vybrané a riadené z SQL-query rámec, ktorý by mal byť naozaj oddeľovať vaša práca kontrolu tak, že ak sa rozhodnete prejsť na používanie webových služieb, súborov založený systém, XML , alebo akékoľvek iné rad systémov to nebude mať vplyv na kód, nad ňou.

Konfigurácia práce

Ďalším aspektom je, aby zvážila veľkosti úlohy a konfigurácie. Tým, že hrá s konfiguráciou práci môžeme nájsť vynikajúcu rovnováhu medzi rýchlosťou, proces replikácie a spoľahlivosť. Vezmite pár OFA scenáre:

  1. Pracovných miest trvať 1 deň každý spustiť: To znamená, že vaši zamestnanci potrebujú 15 dní na spracovanie jednotlivých zamestnaní (pamätajte 10% energie pre 2/3rds času). To je jasne nie je múdre konfiguráciu, vaša práca je veľkosť príliš veľká! To by trvalo minimálne dvakrát čas, aby si prácu spracovaných mala pôvodná pracovník ísť AWOL (čas zdvihnúť to, že nie je vrátený výsledok plus prepracovanie času). V ideálnom by ste mať aspoň jeden celý pracovný ľahko schváliť do konca každého dlhej nečinnosti obdobia, tak budete mať prácu cez tikanie a v najhoršom prípade zamestnania trvalo dva dni proces by mal ísť prvý chýba.
  2. Pracovných miest trvať 1 minútu plynúť: To znamená, že vaši zamestnanci trvať asi 15 minút bežať každé pracovné miesto. Aj keď to spočiatku môže zdať ideálne, môžete získať ďalšiu prácu pre spracovanie v čase obeda, prestávok na kávu, stretnutia, atď tento scenár kladie nároky na iné oblasti vášho systému a zavádza svoje vlastné problémy. Napríklad, najprv si setup / doba spracovania je pomer ísť priamo dole, preto stráca účinnosť systému. Vaša sieť bude neustále streamovanie pracovných informácií medzi rôznymi pracovníkmi frustrujúce zamestnanci, ktorí sú dong ich každodennú prácu. Vy ste tiež chystá dať viac napätia na vašom serveri, spracovanie zákaziek, ako to má naservírovať hŕbu malých kúskov práce na pravidelnom základe. Napokon, v tejto situácii, ak vaša práca serveri ide dole sa chystáte vytvoriť obrovské zadné protokol o nedokončenú prácu vzhľadom na to, väčšiu zamestnanosť by mohlo ďalšieho spracovania blaženej nevedomosti, že práca bola server ťažkosti.

V skutočnosti tam bude nikto ideálnu zostavu pre vašu sieť nastavenie, veľa závisí na dostupné zdroje, druh zamestnania, pracovné požiadavky doba obrátky, možnosť práce v sieti, a tak ďalej. Avšak niektoré pokyny by mali mať:

  • Veľkosť pracovných miest tak, aby každý zamestnanec môže dostať cez aspoň 3-4 pracovných miest v období 15 hodín (pravdepodobne najdlhšia doby nečinnosti obdobie)
  • Hrajte s veľkosti úlohy, takže nastavenie času stáva docela zanedbateľné v porovnaní s dobu spracovania (s prihliadnutím na vyššie uvedenému bodu).
  • Ak práca nie je kompletný dvojnásobné množstvo času (možno menej) môžete očakávať, že na jeho dokončenie predpokladať, že jeho preč dezertoval a začať spracovávať to s iným pracovníkom. To znamená, že budete musieť počkať až na trojnásobok bežnej dĺžky práce pre to, aby kompletné (možno aj dlhšie, ak následné prácu zlyhá). Možno budete chcieť skrátiť túto lehotu, ale dávajte pozor, aby ho znížiť príliš veľa, ako si môže začať množiteľský spracovanie úloh na pravidelnom základe.
  • Pracovných miest by mali byť nezávislé na externé požiadavky, čo najviac. Pracovný server, napríklad, by mali byť kontaktovaný na začiatku a na konci každé pracovné miesto.
  • Nepoužívajte nasýtenia sieti, bude to mať dva negatívne dôsledky, bude vaša denná zamestnanca nájsť pomocou siete frustrujúce a problémy môžu byť skúsenosti s pripojením časového limitu problém, ktorý sa bude len zhoršovať, ako si mierka svojej siete.
  • Zabezpečenie pracovných miest môže bežať na vašich zamestnancov. Pokiaľ pracovných miest príliš náročné na pamäť alebo priestor na disku intenzívnej práce začne končím a jediné, čo si všimnete, je pokles počtu pracovných miest spracované žiadny skutočný dôvod, prečo.

Pošlite výsledky práce

Pri predkladaní výsledkov práce je dôležité skontrolovať, že výsledky neboli predložené iným pracovníkom, a to najmä v prípade, že existujúce pracovník bol spiace na nejakú dobu.

Keď výsledky sú predložené, aby počet výsledkov zápasov počet záznamov v práci.

Ako už bolo uvedené, a nemôže byť viac ako zdôrazniť, budovať odolnosť proti chybám v práci a výsledky vyhľadávania podania. Pracovníci môžu (a pravdepodobne bude) ísť do režimu spánku nanajvýš nevhodné časov, a to musí byť pre zaistený. Tiež opäť odstráni preč vaše výsledky podaní pomôžu uspokojiť budúce zmeny systému kontroly práce oveľa jednoduchšie riešenie.

Zhrnutie

V tomto section sme sa zamerali na to, čo kontroly práce server musí urobiť a ako sa dostať veľmi základný systém nastaviť. Diskutovali sme o tom, ako získať prácu z riadiaceho systému, a ako najlepšie nastaviť pracovné miesta, aby čo najviac našich vášho systému úradu siete. Až do konca, alebo dva odseky o predkladaní výsledkov späť na server kontroly práce bola prezentovaná.

  • Kontroly práce server spravuje pracovných miest a zabezpečuje, že všetky pracovné jednotky sú dokončené
  • Tým, že odstráni svoju prácu vybrať / výsledky podávania môžeme zmeniť technológiu ovládania serveru bez veľké problémy
  • Zostavte si svoj pracovné miesta, aby sa zabezpečilo, že sú prevádzkované rýchlo a efektívne, bez príliš veľký tlak na vašej sieťovej infraštruktúry, a nedochádza k zdvojovaniu úloh spracovanie na pravidelnom základe.
  • Uistite sa, že budete stavať tolerancie chýb a omylov checking do rutiny, môžu pracovníci pozastaviť a obnoviť a pri najnepriaznivejšom časov. Nezabudnite skontrolovať, či výsledky už boli predložené iným pracovníkom.

Nabudúce

V časti 3 , budeme vytvárať naše virtuálne spracovanie a nastaviť naše okná strojov, aby sa stal nečinnosti-úväzok.

Úrad výpočtových sietí pomocou virtuálnych prostredí - Časť 5

Tým, Steven Lloyd Watkin , piatok 04.12.2009 23:03

Úvod

Pracujem vo firme, kde sme sa spustiť veľa dávkové úlohy spracovanie milióny záznamov dát každý deň a ja som bol nedávno premýšľal o všetkých strojoch, ktoré sedia okolo každého a každý deň nerobí nič pre niekoľko hodín. Nebolo by dobré, keby sme mohli využiť týchto strojov pre posilnenie výpočtového výkonu našich systémov? V tomto súbore článkov Idem sa pozrieť na potenciálne výhody zamestnávanie úradu siete pomocou virtualizovaných prostrediach.

V časti 4 sa pozrel na používanie nástrojov, aby zabezpečila, že sme používajú najnovšiu verziu kódu a dátových zdrojov tak, aby získané výsledky sú vždy up-to-date s najnovšími obchodných informácií a logiky.

Pre-nasadenie

Pred nasadením svojej distribučnej sústavy, ak je tu ešte jedna vec, ktorú urobíte, a jednu vec, len je to benchmark váš súčasný systém! Bez ohľadu na to, čo poviete kolegami o tom, koľko práce naviac je váš systém bude robiť, ak ste položky by toto vaša záruky sú nič. Tak,

  • koľko záznamov môžete spracovať v súčasnej dobe? Za deň? Za hodinu?
  • Ako dlho to trvá zvyčajne otočiť prácu?
  • Koľko väčšiu kapacitu máte?

K dispozícii je tiež doplňujúce otázky:

  • Ak váš spracovanie server (alebo jeden z vašich spracovanie serverov) ide dole, ako to ovplyvní vaše schopnosti, budete mrzák?
  • Aké výhody vám nádej / očakávať, že si z distribučnej sústavy?
  • Sú vaše kancelárske stroje schopné prevádzkovať pracovné miesta?
  • Sú vaše (alebo si môžete prácu previesť) pre prácu v tomto štýle behu?

Posledná hlavný bod, je vziať si čas na žiadne veľké zmeny, ako je tento. Aktualizujte svoj operačný kód pre prácu s použitím novej metodiky, benchmark znova. Možno nastaviť spracovanie server spustiť virtuálny stroj, po všetkých tých spracovaní server bude len ďalším pracovníkom (len veľmi silnú, pomerne). Umožniť nový proces sa usadiť.

Nasadenie

Môj návrh by bol pop do kancelárie jeden víkend vykonávať všetky inštalácie a nastavenia. Urobte to tesne predtým, než dvojtýždňové dovolenku a nechať tak ostatné chudák sa vysporiadať s následkami ... možno tiež nie ...

Nasadenie systému, ako je tento musí byť pomalé. Hoci sa jedná o relatívne jednoduché nastavenie tohto systému bude mať vplyv na celú vašu kancelársku infraštruktúru (aj digitálne). Po prvé, dojazde do niekoľkých strojov naraz, monitorovať prevádzku v sieti, ako pracovník hostí hrať na deň-to-dennej báze. Možno budete musieť zmeniť svoje práci konfigurácie v reakcii na vaše nálezy.

Akonáhle je systém usadil sa niekoľko strojov (povedzme 10% všetkých kancelárskych strojov, tj 5) držať monitorovanie sieťovej prevádzky a hostiteľského počítača performance. Ďalšie benchmark znovu, mali by ste byť teraz spracovanie o 33% viac pracovných miest než vaša prvá merítok. Skontrolujte, či tomu tak je, alebo že ste aspoň v tomto Ballpark. Ak nie, skúmať, čo sa deje predtým, než prejde. Opakujte tento cyklus, kým spokojne mať všetky kancelárske stroje beží bez zabíjania individuálny výkon stroja alebo brúsenie sieti ku kľudu.

Po celú dobu držať benchmarking, a to aj potom, čo sú všetky nasadenia. Skontrolovať, ako nový kód aktualizácie ovplyvňujú rýchlosť systému, skontrolujte, či všetci pracovníci sú v hlásení a spracovanie pracovných miest. Pomaly (veľmi pomaly) prírastok vašou úlohou konfiguráciu pre dosiahnutie toho najlepšieho z vašich pracovníkov a siete.

Stop!

Čo keď chcete zastaviť svojich pracovníkov v behu na nejaký čas? Všetci sú tam beží, regenerácia, a snažia ich najlepšie pre spracovanie dát, ako je hlad hmyz. Odpoveď sa môže zdať zrejmé, ale treba dodať, len v prípade, že jeho prehliadajú. Stačí upraviť svoj spracovanie skriptu s exit (0) alebo die () alebo niektoré ďalšie údaj, zabiť svojho spracovania práce. Dôležitým dôvodom, prečo sa vždy snažíme aktualizovať na najnovšiu spracovanie skriptu pred utekaj!

Demonštrácia systému

Aby bolo možné písať tento súbor krátkych článkov som vytvoril veľmi malé siete na preukázanie technológií a metód. Čítal som veľa článkov, návodov, a používa rôzne nástroje pre nastavenie a sledovať, čo sa deje. V žiadnom prípade som šiel von a nasýtených celú kanceláriu s prevádzkou a ani som mal prístup k pravidelným PC zamestnanca, aby videli, ako bol ovplyvnený výkon hostiteľa.

Moja demonštrácia systém bol veľmi pokorný naozaj. Použil som bežné stolové nastaviť ako server kontroly práce. Na tomto som mal nainštalovaný MySQL server nainštalovaný nastaviť ako master replikácie, PHP , Â a SVN spojený cez apache (pre prístup cez pracovníka VM).

Potom som vytvoril CentOS pracovník stroj na VirtualBox na 6 rokov starých okien notebook XP. Aj nastavenie naplánovaných úloh, ako je uvedené po skopírovaní VM na stroj a nechajte ho ísť.

Virtuálny stroj bol zriadený s PHP, podvratnej činnosti, a mySQL. Overil som si vetvu s názvom 'pracovník' z mojich serverov zamestnanie kontrolu úložiska a uistili sa, že by mohla byť aktualizovaný pomocou 'svn update'. Ďalej som nastavenia MySQL ako otrok a overil, že dáta boli replikácie z MySQL na serveri kontroly práce sa na pracovníka VM. Po tom všetkom som setup bash skript a cron.

Moja spracovanie skriptu v podstate išlo v duchu tejto (veľmi jednoduché veci):

  • Prečítajte si v názve poľa
  • Počíta sa počet podobných mien v tabuľke zo zdroja údajov sa uskutočnilo v dňoch VM
  • Počítal počet mien ako vyššie, ale rozdelenie na názov medzerami (tj meno, stredné, priezvisko)
  • Opakoval tento proces 1.000 krát

Každá práca sa približne 20 minút bežať. V jednej chvíli som otvoril niekoľko kópií pracovníka VM na oknách notebooku a sledoval, ako pracovných miest odškrtnúť každý pracovníka IP adries. Na tomto mieste by som tiež potvrdil, že replikácia sa automaticky reštartuje.

Odchod z notebooku na voľnobeh za následok pracovník začatím spracovania úloh zo servera kontroly práce. Pri obnovení laptop využití došlo k meškanie asi 30 až 60 sekundy, to je slušné množstvo času a personálu by muselo byť vedomí, že ich stroj môže pozastaviť na krátku dobu pri návrate do stroja. Novších strojov nesmie mať pauzu tak dlho. V prospech vyššie spracovanie vykonávané v týchto strojov počas nečinnosti obdobia by viac, že ​​prevažujú zamestnanci museli čakať krátku dobu (povedzme 1 minúta) pri príchode na ich stroje ráno (som často dlhšie čakať, že to pre Windows Defender Aktualizácia sa konať) za predpokladu, že boli informovaní o tejto (užitočné čas chytiť rannú kávu!).

Celkovo mám pocit istoty, že som demonštroval technológie, ktoré by mohli byť použité na vytvorenie takéhoto systému. Ukázal som, že takýto systém funguje na (veľmi), v malom meradle a niektoré ďalšie experimentovanie môže zmenšiť až využívať zdroje z úradu strojov. Ak nemám dostať do bodu, ako to dosiahnuť bol by som veľmi zaujímalo, / vidieť, keď to urobí niekto iný.

Závery / hodnotenie

Ďalšie zjavné krokom by bolo skutočne dostať reálneho sveta príkladom a začať nasadenie systému, ako je to v prostredí kancelárie a uvidíme, čo sa stane. Kladenie podnikania, aby sa zaviazali to bez priekopníctvo spoločnosť preukázať technológiu a účinnosť môže byť trochu ťažké. Mriežky / Distribuované výpočty je veľmi populárny, je niekoľko kruhov a má niekoľko veľkých aplikácií (BIONC, SETI @ Home, Folding @ Home, atď). Nechcel som, však, nájsť menšieho rozsahu a jednoduchého systému, ako je to v mojom hľadaní, ktoré by mohli byť váľa v kancelárskom prostredí.

Vytvoril som v podstate bez systému, s použitím prevažne open source softvér a nástroje k dispozícii v takmer každej kancelárie. Technológie boli v podstate preukázať, a ukázať, aby fungovali a fungujú podľa očakávania. Dúfam, že som sa ukázať, že sa nebude moc práce a veľmi jednoduché nastavenie môžete nasadiť kanceláriu grid computing systém, ktorý je silný, lacný, Â a škálovateľné všetky v rovnakom čase.

Akonáhle je systém v prevádzke nie je takmer žiadny koniec vyššie úprav a vylepšení môžete urobiť. Napríklad štatistiky benchmarkingu možno ľahko pridať ukazovať hodnotu takéhoto systému každý deň. Nové stroje môžu byť pridané rýchlo a ľahko, ako a kedy dorazí s modernizácie existujúcej hardware posilnenie svojho výpočtového výkonu.

Dúfam, že ste si užil čítanie tejto sérii článkov a vám dal na zamyslenie na prevádzku kancelárie distribučnej sústavy. Toto riešenie tu nebude nevyhnutne fungovať vo všetkých situáciách, ale mali by byť schopné prispôsobiť vám umožní dostať svoje spracovanie dát vykonáva pomocou vlastného riešenia.

Neváhajte a pošlite mi akékoľvek pripomienky, opravy, či vylepšenie a ja budem robiť moje najlepšie, aby tento článok aktualizovaný na zápas.

Zend Framework: Základy - Recenzie

Tým, Steven Lloyd Watkin , sobota 28 novembra 2009 22:42

Môj zamestnávateľ nedávno zaplatil za skupinu vývojárov, aby nás Zend Framework: Základy Samozrejme, tu budem zhrnúť moje myšlienky a názory na ihrisku pre ostatné. Pre tých, ktorí chcú ušetriť čas, tu je moje zhrnutie:

Pre vývojárov, ktorí nemali čas pozrieť sa na Zend Frameworku tohto kurzu (Zend Framework: Základy) ponúka dobrý celkový obraz o zavedení rámca vás na kľúčové oblasti a poskytovať dostatok informácií, aby aj naďalej. Pre tých, ktorí strávili čas pri pohľade na rámec a išli sme za jeden alebo dva návody tento kurz neponúka toľko ďalej.

Pozadie

Bol som PHP autor na približne 5-6 rokov, a začal pracovať s Zend Frameworku na základe komponenty za posledných 6 mesiacov. Ja som vyvinul a / alebo bol developer na pár malých Zend Framework MVC sites. Budem úprimný, nemal som obrovské množstvo expozície iných rámcov z kódovania hľadiska, ale strávili niekoľko hodín skúmania a hodnotenia webových stránkach projektu them. rámec a komunity okolo Zend Framework je docela vzrušujúce a tam sa zdajú byť obrovské možnosti, kde jeho deje.

O predmetu

Kurz je dodané cez 9 dve hodiny WebEx sedenie (s 10-minútová prestávka uprostred). Čas strávený prechádza súbor diapozitívov poskytovaných Zend s diskusiou kedykoľvek. Môžete použiť mikrofón hovoriť s inštruktorom, ale aby som bol úprimný som nevidel nikoho použiť niečo viac než chat okna. Okrem toho je VMWare Ubuntu stroj za predpokladu, že má napríklad kód a projekty, ktoré skúšobnú verziu Zend Studio. Rokovania kurz vedúcu k účastníkom buď cez integrované riešenie VoIP, alebo môžete vytočiť pri použití jednej z mnohých na celom svete voľbou v číslach.

Počas kurzu sa skladá z materiálu stručný prehľad rámca a vzor MVC, než sa vydáte do aplikácie vzorky guestbook. Diskusia preukázala Bootstrapping, Zend_Application, Db tabuľky, databázy prístup, formuláre, filtrovanie, ACL, Overovanie, atď, atď V podstate pre všetky témy, ktoré by ste mali získať základné stránky sa beží po celú dobu dáva vám nástroje pre ísť a získať viac pokročilých v rámci (aj keď to predsa suma, 'Pozrite sa na webové stránky' veľa času).

Čas je daná kódom nejaké príklady, a rozvíjať 'návštevná kniha' a použitie jednoduchých 'wiki'. Osobne som cítil, že poskytovanie kód alebo každá aplikácia a potom nás žiada, aby sme rozvíjať to, čo bolo v podstate kópiu spolu so naozaj poskytnúť dobré učenie. Bol by som radšej vyvíjať aplikácie podobné, ale nie totožný. na príklad aplikácie s výhodou mať sprievodcu ktorý sa odkazuje. Inak stavebné aplikácie od nuly s demonštrátor by možného viedlo k viac otázok o tom, prečo a ako, a umožňuje tak lepšie pochopenie rámca, po tom všetkom sa môžete pozrieť do špecifík po skončení kurzu.

Posledná prednáška sa skladala z práce na wiki aplikácie s pomocou / pokyny inštruktora. Po absolvovaní kurzu spätnej väzby bol vzatý, to bolo zdôraznené niekoľkokrát cez beh, že Zend berie spätnú väzbu veľmi vážne, v skutočnosti zrejme naša verzia bola samozrejme úplne nové. Niektoré z ostatných vývojárov v spoločnosti bude brať samozrejme čoskoro, takže to bude zaujímavé zistiť, či sa to stalo.

Samozrejme štýl bol neformálne, povolená pre spätnú väzbu a spoluprácu medzi účastníkmi a inštruktor. Samozrejme vodca bol priateľský, prístupný (e-mailové adresy boli spoločné pre otázky), a zatiaľ čo jeho prezentácia od snímok bol trochu neistý zdalo plne kompetentní v rámci. On bol jednoznačne niekto, kto používa rámca na pravidelnom základe, skôr ako niekto, kto sa učí učiť Samozrejme, že som rád 'skutočný svet' skúsenosti v tomto ohľade.

Celkový pocit

V niektorých ohľadoch som našiel priebehu strata času, v iných to bolo veľmi užitočné. Dúfam, že budem mať svoje dôvody v rámci jasne, a možno poskytovať niektoré k zamysleniu alebo užitočnú spätnú väzbu (vedieť, mňa je to nepravdepodobné!).

Pre mňa bol tento kurz zameraný na príliš nízkej úrovni. Prešiel Rýchly sprievodca, prečítajte si Rob Allen je Zend Framework v akcii, a pracoval s rámcom trochu som sa naozaj dostať nič moc. Ja by som rád samozrejme vyzdvihnúť od konca Quickstart a rozvíjať ďalšie zručnosti.

To znamená, že kurz titulu sa jasne stanoviť, "Zend Framework: Základy", a v tomto aspekte samozrejme dosahuje to, čo sa na to. Ostatní členovia vývojového tímu, ktoré doteraz strávil čas hľadať do rámca skončil každú reláciu s otázkami nadšením a spýtal sa, ktorá to naozaj pekné vidieť.

Všetky nebol stratený, to bolo dobré tráviť čas potvrdzujúci základné informácie o rámcových a dostať sa opýtať na pár otázok v oblastiach, kde som si nebol 100%. To bolo tiež čas, ktorý som si sadnúť každý deň a premýšľať o kódovanie pomocou rámca a budúcich projektov, niečo, čo by nie byť schopný robiť inak (viete si predstaviť Vašu spoločnosť, aby súhlasil s :?)). V neposlednom rade tiež získať pekné certifikát od Zend povedať, že ste sa zúčastnili kurzu (aj keď e-mailom).

Zend Framework Certifikácia

To bola jedna otázka, ktorá stále prichádza na myseľ v priebehu, to by ma pripraviť na certifikáciu? Rýchle, ľahké je hlasné Nie. Kurz inštruktor bol úplne jasné, na ktoré sa ďalšie rady, ktoré pre certifikáciu, mali by ste naozaj používať rámca pre každodennej báze a cíti veľmi dobre a verím v jeho použitia a metodík.

Zhrnutie

Vzhľadom k tomu, čo som napísal vyššie, budem sa zhrnúť všetko, čo v dvoch jednoduchých odrážok:

  • Nový Zend Framework: Tento kurz robí presne to, čo by ste čakali, že vám pekný úvod do rámca a dobrú prípravu na základy, z ktorých môžete stavať. Samozrejme Zdá sa, že vzbudiť záujem a nadšenie pre rámec medzi vývojármi.
  • Používané Zend Framework: Aj keď bolo pekné podoprieť niektoré veľmi základné cítil som čas, úsilie a finančných prostriedkov, aby mohol počas dňa bolo lepšie niekde inde. Bude to pekné SEEA Zend vytvoriť novú vyššiu úroveň kurzu, aby vývojári na ďalšiu úroveň - aspoň na úroveň certifikácie a mimo okamžite. K tomu by som sa zaregistrovať.












Panorama Téma, ktoré Themocracy

3 návštevníkov online teraz
2 osoby, 1 roboty, 0 členov
Max návštevníkov dnes: 14 v 12:11 UTC
Tento mesiac: 26 na 07.05.2011 00:35 UTC
Tento rok: 130 v 28-03-2011 22:40 UTC
Všetky čas: 130 v 28-03-2011 22:40 UTC