Luokka: Linux

Office Grid käyttäen virtuaaliympäristöjen - Osa 4

By Steven Lloyd Watkin perjantai 04 joulukuu 2009 23:59

Johdanto

Olen töissä yrityksessä, jossa otamme monet erä työpaikkoja käsittely miljoonia levyjä tietojen joka päivä ja olen ajatellut taannoin kaikki koneet, jotka istuvat joka päivä tekemättä mitään useita tunteja. Eikö olisi hyvä, jos voisimme käyttää näitä koneita vahvistamaan tehosta meidän kanssa? Tämän kokoelman artikkeleita olen menossa katsomaan mahdollisia hyötyjä työllistää toimiston verkkoon käyttämällä virtualisoinnin ympäristöissä.

Vuonna osa 3 loimme virtuaalinen käsittely kone ja perustaa Windows-koneissa tulee idle-aikaisia ​​työntekijöitä.

Running uusin koodi

Väistämättä kun luot työntekijöiden liiketoiminnan logiikka muuttuu, vikoja löytyy, nopeampi tehokkaamman koodin valmistetaan siten jätät työntekijät istuivat tietojen käsittelyn avulla vanha haiseva koodia . Miten sitten voimme varmistaa, että olemme aina uusinta ja suurin versio, jalostus skriptejä?

On olemassa muutamia hyvin helppoja yksinkertaisia ​​tapoja voisimme tehdä tämän temppu on kuitenkin vähentää tehosta ja verkkoliikenteen saavuttamisessa. Aloitetaan yksinkertaisimmasta ratkaisuja ja parantaa sitä hitaasti muutaman toistojen.

Ensimmäinen keino olisi yksinkertaisesti yhdistää työmme valvoa palvelimen kautta (Samba, FTP, tai vastaava) ja vedä alas uusimman version koodi. Ei kovin tehokasta, mutta se tekee työtä. Lets parantaa että hieman, miten luomista rsync käsikirjoituksen ja käyttää sitä aina vaan? Vaihtoehtoisesti Entä käyttöön uusimmat käsittely komentosarjan kumoukselliseen tarkkailun koodi ensin ja sitten vain päivittämässä koodia kukin ajaa ( svn update )?

Lopulta päätyä bash script (kutsutaan cron 10 minuutin välein), joka näyttää yhtä helppoa kuin tämä:

  #! / Bin / sh
 jos ps ax | grep-v grep | grep php > / dev / null
 sitten
     echo "Job on parhaillaan käsittelyssä, poistu"
 muuta
     echo "Job ei ole käynnissä, nyt alkaa"
     cd / polku / työ / kopio
     svn update
     php yourJobProcessingScript.php
 fi 

Nyt voimme olla varmoja, että jokainen ajaa olemme ehdottomasti uusinta koodia. Olemme varmistaa tätä Päivitämme koodareiden jokainen kerta suorittaa ajaa ja vähentää verkkoliikennettä vain siirtämällä tiedosto eroja meidän verkkoon.

Minun esittelyn setup, tein juuri niin kuin edellä. Subversion on asennettu työni käsittely palvelimella ja minulla yksinkertaisesti veti uusin koodi työntekijän haara käyttää "svn update". Lisäsin myös versionumeron tag minun jalostus kirjoitus, joka oli palautettu tietokantaan osana tulosten palauttamista. Näin saatoin todeta, että minun koodi oli päivitetään joka kerta olen kopioinut minun vartalon huomioon työntekijän haara eli olin ehdottomasti uusinta käsittely kirjoitus.

Käyttämällä uusinta tietoa

Jos työsi käsittely käyttää tietolähteitä sitten jossain vaiheessa ne tulee päivittää myös. Ellet soita tietolähteet erittäin harvoin perusteella aiot tulva verkon liikennettä heti kun työntekijöitä alkaa tuo kaiken pysähtynyt. Omasta ratkaisu päätin että haluaisin siirtää minun tietolähteiden ympäriinsä minun VM.

Pidä olet hevosia siellä! Entä jos tietolähteitä ovat valtavat? No tämä on todellakin kyse siitä, miten paljon tietoa puhumme? Se voi olla kustannustehokasta asentaa lisää suuremman kovalevyn jokaiseen koneeseen kuin ostaa lisää käsittelyn palvelimessa. Tämä on kysymys talousarviosta ja jopa liiketoiminnan päättää. Se ehkä, että tietolähteet ovat niin suuria, että vain mahdotonta pitää, että tiedon määrän oman työntekijän koneet. Tällöin mitä tekisit? No voisimme tarkastella soittamalla paikallinen tiedot palvelimelle, mutta tämä saattaa aiheuttaa ongelmia verkon kanssa. Tällöin verkkoon, kuten tämä voi olla epärealistista sisällyttää toimistoympäristöön. Se voi myös olla, että voit etsiä vaihtoehtoisia käynnissä strategioita, esimerkiksi vain soittamalla työntekijöiden välillä kaksikymmentä ja 6am joka ilta ja / tai tukahduttamassa tietolähde pyyntöjä.

Liikettä Sanotaan meidän tietolähteiden määrä on 100 Gt tietoja. No kyllä ​​se on melko vähän tietoja liikkua verkon päivitys. Miten voimme varmistaa, että meillä on uusin kopio tiedoista tässä tapauksessa? Rsync on mahdollista, mutta henkilökohtaisesti uskon ajamalla uusimman tietolähteen työsi jalostus-palvelimen ja määrittää tämän mestari replikaatiota (mukavan pitkä bin log) voi olla tapa edetä:

replikointi Asettamalla kukin oman työntekijöiden ylös kuin orja työn hallinta palvelimen päivitykset tietolähteet ovat valua alas mukavasti teidän työntekijät ilman valtavaa kasvua verkon toimintaa (eli jos teet valtava tietojen päivitys ja kaikki työntekijät potkua kerralla). Tämä on etuja rsync että et saa pitkän tauon ennen jokaista työtä, kuten tietokannan päivityksistä, mysql daemon teidän työntekijä tulee jatkuvasti päivittää tietojaan ja käsittely jatkuu.

Näin otan esittelyyn palvelimelle. Perustaa lisääntymään seurasin oppaan MySQL-sivuston ( perustaminen replikointi ) ja 20 minuutissa minulla oli inital työntekijä jäljitellä työnohjauksessa palvelimet tietokokonaisuus. Jokaista ylimääräistä työntekijää replikointi asetukset ja prosessi toimi aina kun VM oli kopioitu.

Yhteenveto

Tässä osassa artikkelin olemme selvittäneet, kuinka helppoa ja vaivatonta se on pitää koodimerkkien tasalla using rsync tai subverion (SVN) tehdä työtä ja vähentää verkkoliikennettä samalla time. Keskustelimme myös siitä, miten pitää tietolähteen tiedot ajan tasalla, jotta se voi valua alas jokaisen teidän työntekijöitä. Näin meillä, jossa varmistetaan, että me seurata liiketoiminnan logiikkaa ja tietoa toimistomme verkkoon. Siellä on tietenkin lukemattomia vaihtoehtoja näiden tehtävien hoitamisesta, mutta tässä kaksi yksinkertaista esimerkkejä siitä, miten helppoa ratkaisua saada.

Seuraava aika

Viimeisessä osassa tässä sarjassa, osuvasti nimetty osa 5 , kerromme mielellämme käyttöön tätä järjestelmää. Minä yhteenvedon siitä, mitä on opittu ja mitä olen onnistunut luomaan.

Office Grid käyttäen virtuaaliympäristöjen - Osa 3

By Steven Lloyd Watkin perjantai 04 joulukuu 2009 23:37

Johdanto

Olen töissä yrityksessä, jossa otamme monet erä työpaikkoja käsittely miljoonia levyjä tietojen joka päivä ja olen ajatellut taannoin kaikki koneet, jotka istuvat joka päivä tekemättä mitään useita tunteja. Eikö olisi hyvä, jos voisimme käyttää näitä koneita vahvistamaan tehosta meidän kanssa? Tämän kokoelman artikkeleita olen menossa katsomaan mahdollisia hyötyjä työllistää toimiston verkkoon käyttämällä virtualisoinnin ympäristöissä.

Vuonna osa 2 tutustuimme työpaikkaa palvelin käyttää, ja miten työpaikkoja tulisi olla määritetty, jotta saavutetaan suurin määrä jalostus samalla varmistetaan, että jokainen työpaikka on käsitelty ilman epäonnistua.

Setting up your työntekijä - tai Limp palvelin

Seuraava askel on luoda virtuaalinen työntekijöitä. Tätä aion käyttää asennuksen CentOS käyttäen VirtualBox. Aion asentaa MySQL ja PHP palvelimen, joka tunnetaan myös nimellä ontua (Li Nux, m ySQL, P HP) Servera (ehkä olen tehnyt, että nimi ylös).

  • Asenna VirtualBox Windows koneen (seuraa linkkiä)
  • Lataa ja asenna CentOS (nykyinen versio 5.3) sisällä virtuaalikoneen

Ei ole mitään järkeä minua menossa tähän on luultavasti 1000: n suuri tutorials siellä (ok, tässä yksi: luominen ja Managing CentOS virtuaalikoneen alla virtualbox ). Tärkeää huomata Oletan, että minä kutsuin virtuaalikoneen GridMachine.

Sikäli kuin minun valintoja virtualisoinnin asiakkaan ja käyttöjärjestelmän sinne ei ole iso pakottavaa syytä jokaisen valinnan. VirtualBox on jotain käytän kotini kone ja tukee kolme suurta käyttöjärjestelmissä. Päätin CentOS sen hyvä vakaa käyttöjärjestelmä ja voin käyttää sitä oman web-palvelin. Olen lujasti oikeat työkalut työtä (vaikka olen sovelletaan "käyttö on nopein ja helpoin" mentaliteetti täällä), joten jos käyttöjärjestelmä X kulkee koodia nopeammin ja tehokkaammin käyttää sitä:)

Tärkeää on varmistaa, että VM käyttää DHCP, muuten jokaisen uuden virtuaalikoneen olisi määrittää erikseen mikä on me emme want.By DHCP meidän ei tarvitse määrittää verkkoasetukset erikseen työntekijän koneet, DHCP käsi ulos IP sinulle. Siksi voit kopioida virtuaalikoneen toimistossa murehtimatta jossa jokainen ylös (tämä parantaa skaalautuvuutta ja vähentää työntekijöiden hallinto).

Prosessi, jota olisi pyrittävä olisi hankkia uusi fyysinen kone, asentaa VirtualBox, ja sitten aika paljon käyttöön virtuaalisen kuva ei paljon muuta. Voisi olla viisasta setup kaikki työntekijöiden eri aliverkossa, jotta voit ainakin nähdä kuinka monta koneet ovat käynnissä. Sinun täytyy myös perustaa oman koneita pitkäaikaisen vuokrasopimuksen tai rajoittamattoman vuokrasopimus DHCP.

Kuinka ajaa Työpaikat työntekijä

Tämä on mielenkiintoinen ala, ja on useita päteviä menetelmiä käsittelystä työpaikkoja työntekijä. Täällä minä vain keskustella kahden ilmeisin:

  • Alati komentosarjakoodin: käsikirjoitus, on se shell script, tai PHP-skripti suoritetaan, kun työntekijän ja toimii osana päättymättömään silmukkaan. Olen diskontattu tämä menetelmä on yksi crash käsikirjoituksen ja mahdollisesti teidän työntekijät eivät enää ajaa ilman jonkinlaista väliintuloa.
  • Cron perustuu suorituksen: joka X minuutti cron daemon käynnistymässä puhelun script saada asioita eteenpäin. Ilman joitakin tarkkailun tämä voisi johtaa monia monia kopioita työntekijän script käynnissä.

Oma päätös oli mennä cron, joka on käynnistymässä shell script joka 10 minutes. Oma komentotulkkiskripti suorittaa seuraavat tehtävät:

  1. Hanki prosessi luettelosta ja grep tätä "php". Jos ei löydy niin edelleen.
  2. Soita työsi koodi, minun tapauksessani se olisi jotain PHP perustuu
  3. Työntekijä script täydentää run
  4. Valmis lähtemään jälleen ensi ehdotuspyynnön

Oma bash script näyttää jotain seuraavista:

  #! / Bin / sh
 jos ps ax | grep-v grep | grep php> / dev / null
 sitten
     echo "Job on parhaillaan käsittelyssä, poistu"
 muuta
     echo "Job ei ole käynnissä, nyt alkaa"
     php yourJobProcessingScript.php
 fi 

Huom: ECHO: n on lähes täysin turhaa, mutta voi auttaa seuraava henkilö tulee yhdessä pyrkiä ja muokata niitä.

Julistan perustaa työntekijän virtuaalikoneen, nopea, yksinkertainen ja helppo kopioida jokaiseen uuteen laite, joka on vastaanotettu. "Nokkeluutta" ja verkkoon todellakaan ole visualisoitu OS, sen kaikki tehdä koodi luotu prosessi työpaikkoja, työpaikka kokoonpano, ja varmistaa, että tehtävä suoritetaan tarvittaessa (ts. kun isäntä on käyttämättömänä ).

Asettaminen Windows alustaa Työntekijät

Ensimmäisenä tehtävänä on selvittää komennon suorittamiseen tarvitaan virtuaalikoneen Ikkunoista komentoriviltä. Jos olet asentanut VirtualBox on oletussijaintiin ja olet nimennyt oman työntekijän GridMachine sitten komento lataamiseen tarvittavat up your työntekijä on:

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

Kuitenkin ajaa scripti "päätön" valtio meidän on käytettävä:

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

Tämä käynnistää virtuaalikoneessa ilman GUI ja anna se säästää tilaa kauniisti. Toinen väite sammuu RDP joten se ei ole ristiriidassa ikkunoita RDP, tai antaa sinulle viestin kuuntelee porttia 3389. Virtuaalikone nimi kirjainkokoa!

Seuraavaksi meidän täytyy asettaa ikkunat jopa potkia pois meidän työntekijä VM kun kone on käyttämättömänä. Voit tehdä tämän (Windows XP) sinun täytyy mennä Käynnistä -> Kaikki ohjelmat -> Accessories -> System Tools -> ajoitettuja alla:

ajastetut tehtävät

Seuraavaksi klikkaa "Lisää ajoitettu tehtävä", jonka jälkeen selata lisätä mukautettua ohjelmaa. Navigoi VBoxManage käsikirjoitus ja klikkaa ok. Ajoita tehtävä jokin seuraavista vaihtoehdoista (me vaihdamme tämän hetken) ja jatka. Kun heitto seuraavan näytön Windows kysyy kuka haluat suorittaa tämän tehtävän, I'd ehdottaa joko "Administrator" tai luo uusi etuoikeutettu käyttäjä. Muista emme halua puuttua standardin henkilöstöstä koneella missään vaiheessa. Valitse Seuraava ja tarkista Näytä lisäasetukset tähän tehtävään.

Loppuun ajaa oppikirja lisätä meidän "startvm GridMachine 'merkkijono ja varmistettava, että suoritetaan vain silloin, kun kirjautuneena on jäljellä unticked. Käy aikataulun tehtävän vieressä ja muuttaa aikataulua pudota vaihtoehto ", kun tyhjäkäynnillä", valitse aikaa haluat kone on käyttämättömänä ennen kuin siirrytään seuraavaan välilehteen.

Lopuksi huolimaton vaihtoehto, jossa todetaan lopettaa tehtävä, jos se on käynnissä X aikaa, mutta rasti vaihtoehdon pysäyttää tehtävään, jos kone ei enää tyhjäkäynnillä.

aikataulu

Siinäpä se sitten Windows Host setup!

Yhteenveto

Tässä osassa on perustanut virtuaalikoneen toimia työntekijänä, sekä tapa, jolla voimme soittaa ja toteuttamaan työn käsittely skriptit (itselleni PHP-skripti). Sieltä näemme, miten voitaisiin laatia myös Windowsin kopiota käynnistää Virtual Machine päätön tilassa, kun tietokone on käyttämättömänä, ja tallentaa sen tilan, kun käyttäjä palaa käyttö koneen. Toivottavasti tässä vaiheessa näet kuinka helppoa on perustettava tällainen järjestelmä ja kutina saada joitakin kokeiluja menossa itse!

Seuraava aika

Vuonna Osa 4 me tarkastelemme käyttäen välineitä, joilla varmistetaan, että käytät uusinta versiota koodin ja tietolähteet niin, että saadut tulokset ovat aina ajan tasalla yrityksen tiedot ja logiikka.

Office Grid käyttäen virtuaaliympäristöjen - Osa 1

By Steven Lloyd Watkin perjantai 04 joulukuu 2009 23:23

Johdanto

Olen töissä yrityksessä, jossa otamme monet erä työpaikkoja käsittely miljoonia levyjä tietojen joka päivä ja olen ajatellut taannoin kaikki koneet, jotka istuvat joka päivä tekemättä mitään useita tunteja. Eikö olisi hyvä, jos voisimme käyttää näitä koneita vahvistamaan tehosta meidän kanssa? Tämän kokoelman artikkeleita olen menossa katsomaan mahdollisia hyötyjä työllistää toimiston verkkoon käyttämällä virtualisoinnin ympäristöissä.

Koska PHP kehittäjä aion käyttää työkaluja, käytän joka päivä eli Linux, MySQL , PHP, VirtualBox ja Subversion (SVN). Kuitenkin toivon, että tämä opas mukauttaa muita kieliä ja tekniikoita yhtä hyvin.

Ratkaisu annan on erittäin perustuu löyhästi jalostuksen luonne olimme tarve saavuttaa mutta tämä voi olla totta koko artikkeli niin minä muuttaa asioita yksinkertaisuus, tai tuottamaan enemmän mielenkiintoisia käytön skenaarioita.

Nämä virtualisoinnin ympäristöt tulevat toimimaan Windows-koneissa, koska tämä on mitä suurin toimistojen aikavälillä. Käsittelyä että konttorikoneiden ei pitäisi puuttua toimihenkilöiden näitä koneita, olisi vaadi huoltoa kone, ja helposti käyttöönotettavia uusia koneita kun ne tulevat saataville. Myös uusia virtuaalikoneita tulee vaadi lisäasetuksia, koska tämä vähentää huomattavasti skaalautuvuutta ja helppous, jolla verkkoon voidaan laajentaa.

Miksi ottaa käyttöön Office Computing Grid?

Ensinnäkin voit ajatella, miksi ei vain käyttää cloud computing resurssien, kuten Amazon EC2 foorumi ? No syitä voi olla useita, esimerkiksi:

  • Et antaa tiettyjä tietoja cloud computing ympäristö
  • Et voi laittaa tiettyjä data cloud computing-ympäristöä oikeudellisista syistä (esim. tiedot lähtevät maasta), mahdollisesti oikeudellisista syistä, esimerkiksi NHS kirjaa.
  • Haluat pitää käsittely yksikköjä lähellä ja on täysi määräysvalta laitteisto liian
  • Sinulla ei ole hankkeen varoista ajaa pilvi tapauksissa
  • Toimiston ei ole internetyhteyttä, ja siksi se ei ole mahdollista käyttää pilvi resurssi
  • Et kuin sade, pilvet viittaavat sadetta, joten sinun pitää erossa

Olen varma, listaa voisi jatkaa, mutta mielestäni riittää nyt.

Edut Office Computing Grid

No, antaa tehdä joitakin matematiikka (ja tosi fysiikan tyyliin laitetaan noin rajuja oletuksia). Kuvittele, että olet iso lihaksikas käsittely Server 100 työpaikkaa päivässä. Oman toimiston, olet 50-koneet, jotka eivät tee mitään 16 tuntia päivässä, ja jokainen näistä koneista on 10% tehokkaampi kuin teidän lihaksikas käsittely katkaista. (Kaikki tulokset täällä on pyöristetty aliarvioida paranna suorituskykyä).

Niin, 1 kone * 10% teho * 2 / 3 kertaa = 0,067 eli 1 työpöydän käsittely tyhjäkäyntiin voisi käsitellä 6 koko työpaikkaa päivässä.

Jos nyt mittakaavassa tämä jopa kestää 15 tyhjäkäynnillä työpöytiä prosessi niin monta tehtävää päivässä pääasiakirjana käsittely palvelin ei.

Joten meidän teeskennellä toimistossa 50 koneiden voisimme kasvattaa laskentatehoa alkaen 1 palvelin jopa 4 Full Processing palvelimia, tai voisimme olla jalostuksen 400 työpaikkaa päivässä sijasta 100.

Huomaa, ilman investointeja uuden laitteiston yritys on juuri lisännyt erän jalostuskapasiteettia 4 kertaa! Mahdollisesti aiot lisätä tehontarve mutta toimiston tiloihin Olen ollut koneet ovat yleensä jää yöksi muutenkin, niin voitte nähdä tämä vihreä aloite.

Muita etuja myös sitä, että investoinnit uuteen (tai päivitetty) käsittely palvelimet voidaan lykätä, jos toimistolaitteet ovat riittävät ja että voit parantaa valta teidän toimistolaitteet toimistosi verkkoon voimistuu automaattisesti.

Technologies

Mitä tarvitset? (Tai oikeammin mitä käytin):

  • Idle toimistolaitteet (minun tapauksessani vara vanha Windows XP laptop)
  • VirtualBox (tai toinen virtualisoinnin asiakasohjelmisto)
  • Virtuaalikoneen PHP, mySQL running käynnissä leikata OS, Soitan nämä minun Limp palvelimet:)
  • Työpaikat ajaa
  • Job palvelin (voi olla toinen virtuaalikone jonnekin)

Tyypillisiä työpaikkoja

Tyyppisiä työpaikkoja että tämä järjestelmä on suunniteltu toimimaan seuraavasti:

  • Järjestelmän saa luettelon tiedot, joihin meidän täytyy sovittaa ja palauttaa tulokset
  • Vastaavat tarkastetaan ja haku useita (lähes muuttumattomana) tietolähteet
  • Tulokset tietolähteissä voidaan vaatia lisävalidointia, yhdistäminen, tarkastaminen muita tietolähteitä vastauksena tuloksia
  • Tiedot palautetaan yhteensopivat kirjaa, täysin tarkistettu ja käsitelty
  • Jokainen levy sisällä työ on riippumaton muusta

Joten periaatteessa me tarkastelemme ajossa olevat työt, jotka edellyttävät sekoitus tietokantaan hakuja ja jotkut numero murskaukseen, melko tyypillinen skenaario liiketoimintaympäristössä.

Grid ratkaisut eivät ole vain etua jalostukseen työpaikkojen syntymisen. Periaatteessa mikä tahansa prosessi, joka voidaan jakaa itsenäisiä yksiköitä voidaan käyttää rinnakkain. Katso tämä wikipedia esimerkkejä ja lisätietoja: Grid , mutta pari tunnetuimpia esimerkkejä ovat Seti @ Home ja BIONC . On puitteita käynnissä tietotekniikan verkkoja, ja nämä ovat hyvin arvoinen.

Mitä voimme saavuttaa?

Loppuun mennessä näiden artiklojen toivon mukaan käyttöönottokustannukset toimiston verkkoon ei tarvitse olla valtavan kallista tai aikaavievää. Aion keskustella:

  • Asettaminen työn ohjausjärjestelmä, työn kokoonpano
  • Luominen asianmukainen käsittely virtuaalikone
  • How to setup järjestelmä Windows koneella
  • Varmistaminen käytät uusinta koodi ja tiedot
  • Asennus-ja benchmarking
  • Katse eteenpäin

I'll olla rakennus (ok rakensin sitten kirjoitin tämän) Esimerkiksi sovelluksen testata käsitteitä paikalliselle koneelle Windows XP ja minun "GridMachine" virtual machine. Työni valvonta palvelin on minun tärkein kone, joka toimii Fedora 11 .

Tämä ei ole mitenkään tarkoitus osoittaa täysin toimiva vankka järjestelmä, sen tarkoitus enemmän esittelyä ja keskustelua siitä, että nämä asiat voidaan toteuttaa kohtuullisen lyhyessä ajassa ja vähin kustannuksin. Voit vapaasti lähettää minulle kommentteja, korjauksia ja parannuksia ja teen parhaani pitää tämän artikkelin päivitetään vastaamaan.

Seuraava aika

Vuonna osa 2 Aloitan tarkastelemalla työn valvonta ja pohditaan, miten työpaikkoja tulisi olla määritetty, jotta saavutetaan suurin määrä jalostus samalla varmistetaan, että jokainen työpaikka on käsitelty ilman epäonnistua.

Office Grid käyttäen virtuaaliympäristöjen - Osa 2

By Steven Lloyd Watkin perjantai 04 joulukuu 2009 23:23

Johdanto

Olen töissä yrityksessä, jossa otamme monet erä työpaikkoja käsittely miljoonia levyjä tietojen joka päivä ja olen ajatellut taannoin kaikki koneet, jotka istuvat joka päivä tekemättä mitään useita tunteja. Eikö olisi hyvä, jos voisimme käyttää näitä koneita vahvistamaan tehosta meidän kanssa? Tämän kokoelman artikkeleita olen menossa katsomaan mahdollisia hyötyjä työllistää toimiston verkkoon käyttämällä virtualisoinnin ympäristöissä.

Vuonna Osa 1 annoin yleiskuvan järjestelmästä ja teknologiat aion käyttää sekä käsitellään joitakin mahdollisia syitä miksi haluaisi luoda toimiston verkkoon.

Job Control

Jos aiot olla käynnissä työpaikkoja sitten olet menossa on jonkin verran hallita niitä. Työsi valvontajärjestelmä (oman työpaikan palvelimelta) on todella hyvin mietitty ennen kuin edes yrittää juosta toimiston verkkoon. Joten ensinnäkin, mitä tehtäviä töitä valvontajärjestelmä:

  • Jaa työpaikkoja pyynnöstä työntekijöiden
  • Kerro työntekijöiden Millaisia ​​työpaikkoja kulua
  • Seuraa työpaikkaa
  • Varmista, että työpaikat ovat vain ajaa kerran
  • Tarjoa työtietoja työntekijöille, tai ainakin kertoa heille mistä sitä saa

Lisäksi järjestelmä on laajennettava ratkaisu, joka toimii nyt yhdessä tapauksessa voidaan pidentää suorittaa useita erilaisia ​​työpaikkoja kuin yritys näkee arvokkaaksi verkkoon ratkaisu. Esimerkiksi työpaikkoja voi saada painopisteitä, enemmän kuin yksi työpaikka tyyppi voi olla (useita koodi emästen), lopulta ehkä jopa käyttää useita erilaisia ​​työntekijän koneita, jotka on optimoitu kunkin työn (vaikka se ei siirry pois "yleinen työntekijä "idea). Pyri aina ajatella tulevaisuutta kehitettäessä järjestelmiä, lyhyen aikavälin visio voi johtaa pitkällä aikavälillä turhautumista ja lisääntynyt kehityksen aikaa.

Job Server

Olemme menossa tarvitse jonnekin ohjata työpaikkoja, se olisi vain järjestelmän oman verkon, joka on kiinteä Resource Locator on, että IP-osoite, palvelimen nimi, osoite (käyttämällä sisäisiä DNS), jne. Tämä johtuu Työntekijöiden on tiedettävä, mistä etsiä työtä, työntekijöitä täytyy löytää työpaikka valvontajärjestelmä (ei työtä valvontajärjestelmän löytää työntekijöitä).

Työ-palvelin itsessään ei todellakaan ole monimutkainen tehtävä (vuonna perusjärjestelmän muutenkin), se tarvitsee tallentaa luettelon työpaikkoja, ojentaa työpaikkoja, saada tuloksia, ja myöhemmin niitä voidaan varastoida myöhempää. Miten nämä osat (kuten "ojentaa työpaikkoja") on määritelty voi olla hyvin yksinkertainen. Myöhemmin voimme laajentaa järjestelmä koskemaan hallintaliittymä lisätä, muokata, poistaa, keskeyttää töitä, mutta tämä on kuin tämä harjoitus.

Ei ole mitään syytä niin että työsi palvelimelle ei voitu virtuaalikoneen käynnissä omassa tärkein käsittelystä palvelimen, kunhan se ei valua liikaa resursseja siihen. Työ-palvelin kuitenkaan ei tarvita korkeaa käytettävyyttä, jos se menee alas perjantai-iltana aiot menettää koko viikonlopun käsittely, mahdollisesti maksaa sinulle pari viikkoa arvosta käsittelyn ajan (verrattuna sinun tärkeimmät käsittely palvelin yksin) . Haluat ehkä harkitsemaan työsi palvelimen kuormitus tasapainoisen ympäristön korkean käytettävyyden.

Basic Setup

Perusasetukset työmme palvelin koostuu mitä Soitan eräs Limp palvelimia (eli Li Nux, m ySql, P HP). Koodi käynnissä Thea työntekijät todella selvittää, mitä työpaikkoja se voi hoitaa vuorovaikutuksessa työpaikkojen valvontajärjestelmä tietokantoihin. Myöhemmin voisimme luoda verkkopalvelun ja todella jakaa työpaikkoja sen sijaan työntekijät tekemään kovaa työtä itse, mutta nyt me jatkaa KISS periaate (Keep It Simple, Stupid!).

Joten, avulla muodostaa kolme MySQL taulukoita käsitellä työpaikkoja. Nämä ovat "työpaikkoja", "jobRecords`, ja `jobResults".

työpaikkoja taulukko Tässä olen käyttäen SQL Buddy hyvin vähän vaihtoehtoja phpMyAdmin vain koska sen helpompi asentaa CentOS (ja muut näkevät: 10 Great vaihtoehtoja phpMyAdmin )

Tämä taulukko sisältää 5 yksinkertaisia ​​kenttiä,

  • id: tunnistaa työ
  • nimi: Voisiko olla asiakkaan viite, tai useita muita tunnisteita
  • Tila: Sinun täytyy tietää, missä työ on, esim.
    • 0: Ei aloitettu
    • 1: Piristyi
    • 2: Päättyneet
  • started_by: Kuka alkoivat tehdä työtä? Tämä ei ole täysin tarvita, mutta on mukava olla. I'd ehdottaa seuranta työntekijöiden IP-osoitteen verkko
  • started_at: Milloin työntekijä aloittaa työn? Seuraamalla työpaikkoja, jotka eivät ole päätökseen X määrä aikaa tiedämme, että meidän poimia työn uudelleen ja aloittaa käsiteltäväksi toisen työntekijän. Työntekijät voisivat lopettaa jalostus / offline mahdollisesti useita syitä, sähkökatko, crash, verkko menetys, jne.

It on easy how this table could be extended Muutamalla kentät mahdollistavat statistics tracking, joka lopetusaika sarake nähdä kuinka kauan kirjoittaminen vei, joka vasta to see how many workers picked up the työ (obviously this tarvitsee tend to 1), työn etusijalle, lista voi jatkua loputtomiin. Monimutkaisissa työpaikka skenaarioita olisi mahdollista määrittää, kuinka paljon muistia työntekijällä olisi pääsy (ja siis vain sopivien työntekijöiden) tai jopa millainen työntekijä olisi tarpeen.

Lets lisätä muutama esimerkki työpaikkoja:

Esimerkiksi työpaikkojen

Seuraavassa taulukossa on taas melko helppo ymmärtää, nämä ovat meidän tehtävämme kirjaa. Ne liittyvät pääasiassa työpaikkojen taulukon sarakkeessa "jobs_id". Muodostavat tämän taulukon riippuu paljon tietoja, että sinun täytyy toimittaa teidän työntekijöiden avulla tehdä hyvin yksinkertainen esimerkki, jossa meillä on neljä saraketta:

  • id: tunnus ennätys
  • nimi: Henkilön nimi
  • osoite: henkilön osoite
  • jobs_id: työn tunnusta, että tämä levy on linkitetty

Kolmas ja viimeinen taulukko sisältää tulokset taulukossa, se on paljon samaa muodostavat kuin tietomme pöytä, ja lisäksi joidenkin sarakkeiden voisi olla osa kirjaa taulukon:

  • job_record_id: Linkki tuloksen tehtävätaulukko
  • tulos: tulostiedot

... Ja että kaikki mitä tarvitset työnohjausta! (Vaikkakin hyvin perustasolla) Minun tapauksessani olen todennut toiseen pöytään, jossa minun tietojen prosessi oli paikalla, mutta tämä voisi yhtä hyvin jo tiedoston parametrit suorittaa simulaation, you name it.

Valitseminen työpaikka

Kuten aiemmin todettiin, työntekijöiden teemme työn hallintaan meille nyt, niin kaikki meidän todellakin on löytää työpaikka, joka tarvitsee käsittely ja saada tietoa. Miten voisimme tehdä tämän? No valita työtämme valintaperusteet ja etsivät töitä, SQL tein seuraavat:

  1. Ota kaikki työpaikat, joita ei ole merkitty täydellisiä, mutta meidän työntekijä ja palauttaa ne (korvaa __ME__ kanssa tunniste, helpoin olisi IP-osoite):
      UPDATE "työpaikkoja" SET "status" = 0, jos se "tila" = 1 ja "started_by" = __ME__; 
  2. Käyttämällä meidän tehtävämme valintaperusteet, valitse työ ja kerro ohjausjärjestelmä, tämä työntekijä on tekemisissä sen kanssa:
      UPDATE "työpaikkoja" SET "status" = 1, "started_by" = __ME__, "started_at" = NOW () WHERE `tilalla" = 0 tai
     ("Status" = 1 ja "started_at"> DATE_SUB (NYT (), intervalli X TUNNIT)) ORDER BY `id` ASC; 

    Tarttumalla työpaikkoja, joita ei palauteta tuloksia X ajassa voimme varmistaa, että kaikki työpaikat ovat käytössä, jos työntekijä kaatuu tai menee AWOL.

  3. Seuraava napata työpaikkojen yksityiskohdista jälkeen kirjaa itselleen:
      SELECT * FROM `työpaikkoja" kun "started_by" = __ME__ RAJA 1;
     SELECT * FROM `job_records" kun "id" = __JOBID__; 

Päätyttyä työpaikka lisäämme tuloksemme kirjaa ja merkitä työn valmiiksi. Muista kuin työpaikkoja voi keskeyttää / jatkaa milloin tahansa sallia tietynlainen kestävyydestä script. Voi olla, että tehtävä keskeyttää puolivälissä päivittää työn valvontajärjestelmä, joten tarkkailun Tietueiden määrän työtä ja tulosten määrä tallentaa ne takaisin työn valvontajärjestelmä olisi viisasta.

Lisäksi vaikka tämä osoittaa, miten työpaikkoja voidaan valita ja hallita SQL-kyselyn runko sinun pitäisi oikeastaan ​​olla abstracting oman työn hallintaa niin, että jos päätät siirtyä käyttämään verkkopalvelu, tiedoston perustuva järjestelmä, XML -tai muita useita järjestelmiä se ei vaikuta koodin yläpuolelle.

Job Configuration

Seuraavan huomioon otettava näkökohta on työn koon ja kokoonpanon. Pelaamalla työpaikkojen kokoonpano voimme löytää hyvä tasapaino nopeuden, prosessi replikointi ja luotettavuus. Ota pari OFA skenaarioita:

  1. Työt ottaa 1 päivä jokainen ajaa: Tämä tarkoittaa, että työntekijöiden on 15 päivää aikaa käsitellä kunkin työn (muista 10% tehon 2/3rds aikaa). Tämä ei selvästikään ole viisas kokoonpano työsi koko on aivan liian iso! Se veisi ainakin kaksinkertainen aika saada työtä jalostettu olisi ensimmäinen työntekijä mennä AWOL (aika poimia että se ei ole palannut tulos plus uudelleenkäsittely aikaa). Ihanteellisessa sinun on vähintään yksi täysi työ helposti tyhjenee jokaisen pitkän joutokäyntijakso, että miten pidät työpaikkaa tikittää yli ja pahimmassa tapauksessa työ kestäisi kaksi päivää prosessi olisi ensimmäinen kateissa.
  2. Työt kestää 1 minuutti kulua: Tämä tarkoittaa, että työntekijät kestää noin 15 minuuttia kulua kunkin työn. Vaikka tämä voi aluksi tuntua ihanteellinen, saat lisätyötä käsittely lounaalla, kahvi, kokoukset jne. Tässä tilanteessa asettaa paineita muilla järjestelmän ja tuo omat ongelmansa. Ensinnäkin esimerkiksi setup / käsittelyaika suhde on menossa alas, siis menettää järjestelmän tehokkuutta. Verkon tulee olla jatkuvasti streaming työpaikka tietoja eri työntekijöiden turhauttavaa henkilöstölle dong heidän päivittäisessä toiminnassaan. Olet myös menossa laittaa enemmän paineita työsi käsittely palvelimella, koska se on jaella paljon, paljon pieniä teoksia säännöllisesti. Lopuksi, tässä tilanteessa, jos työsi palvelin menee alas aiot luoda valtava takaisin loki keskeneräisiä työn suuremmassa työpaikkoja voisi jatkuvan käsittelyn autuaan tietämätön siitä, että työ-palvelin oli vaikeuksia.

Todellisuudessa siellä on kukaan ihanteellinen kokoonpano oman verkon asetukset, paljon riippuu käytettävissä olevista resursseista, eri työpaikkojen, työn läpimenoaika vaatimukset verkkotoiminnot, ja niin edelleen. Kuitenkin jotkut ohjeet olisivat:

  • Koko työpaikkoja, jotta jokainen työntekijä voi saada läpi ainakin 3-4 työpaikkaa aikana 15 tuntia (pisin todennäköisesti tyhjäkäynnillä aika)
  • Pelaa työn koko siten, että asennus lyhenee melko vähäinen verrattuna käsittelyaika (ottaen huomioon edellä kohta).
  • Jos työ ei ole täydellinen kaksinkertainen määrä aikaa (ehkä vähemmän) voit odottaa sitä täydellistä se olettaa, että sen mennyt AWOL ja aloittaa sen käsittelyn toisen työntekijän. Tämä tarkoittaa sitä, saatat joutua odottamaan jopa kolme kertaa tavanomaiselta työtä sen loppuun (mahdollisesti pidempään, jos myöhemmin työ epäonnistuu). Voit halutessasi vähentää tällä kertaa, mutta varo alentaa sitä liikaa, sillä saatat alkaa päällekkäisiä jalostus tehtäviä säännöllisesti.
  • Työt pitäisi olla riippumaton ulkopuolella vaatimuksia mahdollisimman paljon. Työ-palvelin, esimerkiksi vain ottaa yhteyttä alussa ja lopussa jokaisen työtä.
  • Älä kyllästää verkko, se on kaksi kielteistä vaikutusta, sinun päivällä henkilökunta löytää verkon käytön turhauttavaa ja ongelmat voivat olla kokenut yhteydet aikakatkaisua ongelma vain pahenee, kun skaalata verkkoon.
  • Varmista työpaikkoja voi ajaa työntekijöiden saatavilla. Jos työpaikkoja on liian paljon muistia tai levytilaa työpaikkavaltaisin alkaa keskeytetään ja vain huomaat on pisara työpaikkojen määrä käsitellä ilman todellista syytä, miksi.

Lähettäminen Tulokset Job

Jättäessään tulokset työ on tärkeää tarkistaa, että tulokset eivät ole olleet lähettäneet toista työntekijää, varsinkin jos nykyinen työntekijä on ollut lepotilassa jonkin aikaa.

Kun tulokset ovat esittäneet, että tulosten määrä vastaa tietueiden sisällä työtä.

Kuten aiemmin todettiin, ja voi olla yli korostaa, rakentaa vikasietoisuus osaksi työpaikkojen hakua ja tuloksia jättämisestä. Työntekijät voivat (ja todennäköisesti) siirtyy lepotilaan kaikkein hankalaa kertaa ja tämä on otettava huomioon. Myös jälleen kerran abstracting pois tulosten mukaan auttavat hempää muutoksia työsi valvontajärjestelmän paljon helpompi käsitellä.

Yhteenveto

Tässä sectiona olemme selvittäneet, mitä työnohjaus palvelin pitää tehdä ja miten saada hyvin yksinkertainen järjestelmä perustetaan. Olemme keskustelleet siitä, miten hakea työtä käyttöjärjestelmästä ja miten parhaiten määrittää työpaikkoja saada eniten meidän oman toimiston verkkoon. Voit lopettaa, kohta tai kaksi esittäessään tulokset takaisin töiden hallintaan palvelimelle esiteltiin.

  • Työn hallintaa palvelimen kautta työpaikkoja ja varmistaa, että kaikki työyksiköt ovat valmiiksi
  • Tekijä abstracting työsi valita / tulosten mukaan voimme muuttaa teknologian valvontaa palvelimen ilman suurempia ongelmia
  • Määritä työpaikkoja varmistamaan, että ne suoritetaan nopeasti ja tehokkaasti ilman ottaa liian paljon paineita verkon infrastruktuuriin, ja ilman päällekkäistä käsittelyä tehtäviä säännöllisesti.
  • Varmista, että olet rakentaa vikasietoisuutta ja virhe checking omalle rutiinit, työntekijät voivat keskeyttää ja jatkaa ja hankalimmassa kertaa. Muista tarkistaa, jos tuloksia on jo toimitettu toinen työntekijä.

Seuraava aika

Vuonna osa 3 luomme virtuaalinen käsittely kone ja perustamme oman Windows-koneissa tulee idle-aikaisia ​​työntekijöitä.

Office Grid käyttäen virtuaaliympäristöjen - Osa 5

By Steven Lloyd Watkin perjantai 04 joulukuu 2009 23:03

Johdanto

Olen töissä yrityksessä, jossa otamme monet erä työpaikkoja käsittely miljoonia levyjä tietojen joka päivä ja olen ajatellut taannoin kaikki koneet, jotka istuvat joka päivä tekemättä mitään useita tunteja. Eikö olisi hyvä, jos voisimme käyttää näitä koneita vahvistamaan tehosta meidän kanssa? Tämän kokoelman artikkeleita olen menossa katsomaan mahdollisia hyötyjä työllistää toimiston verkkoon käyttämällä virtualisoinnin ympäristöissä.

Vuonna Osa 4 tutustuimme työkaluja että olemme uusinta versiota koodin ja tietolähteet niin, että saadut tulokset ovat aina ajan tasalla yrityksen tiedot ja logiikka.

Pre-Asennus

Ennen kuin otat oman verkkoon, jos on olemassa yksi asia sinun ja yksi asia vain se benchmark nykyiseen järjestelmään! Ei ole väliä mitä kerrot kollegat, kuinka paljon ylimääräistä työtä järjestelmä tulee tehdä, jos et ole numeroita takaisin tämän up your takeita mitään. Joten,

  • kuinka monta kirjaa voit käsitellä tällä hetkellä? Päivässä? Tunnissa?
  • Kuinka kauan se yleensä kestää kääntää työtä?
  • Kuinka paljon enemmän kapasiteettia sinulla on?

Mukana on myös muita kysymyksiä:

  • Jos käsittely palvelin (tai joku käsittely palvelimet) laskee, kuinka tämä vaikuttaa kykysi, tulet rujo?
  • Mitä etuja toivotte / odottaa saavansa siitä verkkoon?
  • Onko toimistolaitteet pystyy käyttämään työpaikkoja?
  • Onko (tai voit työpaikkaa muuntaa) työtä tällä tyylillä käynnissä?

Viimeinen tärkeä asia on, että otat aikaa merkittäviä muutoksia näin. Päivitä koodimerkkien työskennellä käyttäen uutta menetelmää, benchmark uudelleen. Mahdollisesti perustaa oman jalostuksen palvelin käyttää virtuaalikoneen, kun kaikki käsittely-palvelin tulee olemaan vain työntekijä (vain erittäin voimakas yksi suhteellisen). Anna uusi prosessi ratkaista.

Asennus

Oma ehdotus olisi piipahtaa toimistoon yhden viikonlopun suorittaa kaikki asennukset ja asetukset. Tee tämä juuri ennen kahden viikon loma ja lähteä niin muiden köyhien mies hoitamaan seurauksia ... ehkä ei ...

Deployment tällainen järjestelmä on hidas. Vaikka se onkin suhteellisen helppo perustaa tämän järjestelmän vaikuttaa koko toimiston infrastruktuuri (myös digitaalista yksi). Ensinnäkin, roll ulos pari koneita kerrallaan, seurata verkkoliikennettä, miten työntekijä isännät suorittaa päivittäinen perusteella. Saatat joutua muuttamaan työn kokoonpano vastauksena tulokset.

Kun järjestelmä on asettunut muutaman koneet (Sanotaan 10% kaikista toimistolaitteet, eli 5) pitää seurantaa verkkoliikennettä ja pääkoneen performance. Seuraava benchmark uudelleen, sinun pitäisi nyt olla jalostuksen 33% enemmän työpaikkoja kuin ensimmäinen vertailukohtia. Tarkista tämä on niin, tai että olet ainakin tässä ballpark. Jos ei, tutkia, mitä tapahtuu ennen siirtymistä. Toista tämä sykli kunnes onneksi kaikki konttorikoneiden käynnissä ilman tappamista yksittäisen koneen suorituskykyä tai jauhaminen verkko on pysähtynyt.

Kaikkina aikoina pitää esikuva, vaikka kaikki asennuksia tehdään. Katso kuinka uusi koodi päivitykset vaikuttavat nopeudesta, tarkista kaikki työntekijät ovat raportointi ja käsittely työpaikkoja. Hitaasti (erittäin hitaasti) lisäys työsi kokoonpanon saada paras irti työntekijöitä ja verkko.

Stop!

Mitä jos haluat lopettaa työntekijöiden käytössä jossain vaiheessa? Ne ovat kaikki siellä käynnissä palauttamiseksi, ja yrittävät parhaansa mukaan käsitellä tietoja nälkäisinä hyönteisiä. Vastaus saattaa tuntua itsestään selvältä, mutta sen syytä lisätä vain, jos sen huomiotta. Yksinkertaisesti muokata käsittely script exit (0) or die () tai jonkin muun lausuman tappaa jalostuksen työ. Tärkeä syy pyrimme aina päivittää uusimpaan jalostuksen käsikirjoitus ennen ajaa!

Esittelyjärjestelmäsovellusten

Jotta kirjoittaa tämä sarja lyhyitä artikkeleita olen luonut hyvin pieni ruudukko osoittaa tekniikoita ja menetelmiä. Luin paljon artikkeleita, opetusohjelmia, ja käyttää erilaisia ​​työkaluja asennus ja seurata mitä tapahtuu. Ei suinkaan olen mennyt ulos ja tyydyttyneistä koko toimisto liikenteen ja enkä ole saanut tutustua säännöllisesti toimihenkilöille PC kuinka isäntä kehitykseen vaikuttivat.

Mielenilmaukseni järjestelmä oli hyvin nöyrä todellakin. Käytin säännöllisesti työpöydän perustettu työnohjausta palvelimelle. Tämän olin asentanut MySQL -palvelin asennetaan perustettu mestari lisääntymään, PHP , Â ja SVN kytkeytyvät toisiinsa Apache (yhteys kautta työntekijä VM).

Sitten luonut CentOS työntekijän koneen VirtualBox on 6 vuotta vanha Windows XP laptop. Olen setup aikataulun mukaiset tehtävät kopioinnin jälkeen VM koneeseen ja anna sen mennä.

Virtuaalikoneessa perustettiin PHP, Subversion ja MySQL. Olen kassalla haara nimeltä "työntekijän" minun töiden hallintaan palvelimet arkisto ja varmisti sen voisi päivittää käyttämällä "svn update". Seuraavaksi setup MySQL orja ja tarkistaa, että tiedot oli jäljittelevän MySQL on työnohjaus palvelin työntekijälle VM. Kaiken tämän jälkeen olen setup bash script ja ajastettu tehtävä.

Oma jalostus kirjoitus pohjimmiltaan meni tapaan tämä (hyvin yksinkertaisia ​​asioita):

  • Lue Nimi-kenttään
  • Lasketaan useita vastaavia nimiä taulukon tietolähteen pidettiin VM
  • Lasketut nimien kuin edellä, mutta jakoa nimeä tilat (esim. etunimi, keskellä, sukunimi)
  • Toistuva tässä prosessissa 1000 kertaa

Jokainen työ kesti noin 20 minuuttia juosta. Jossain vaiheessa olen avannut useita kopioita työntekijän VM Windows-kannettavan ja katseli työpaikkoja on tarkastettava pois kunkin työntekijän IP-osoitteet. Tässä vaiheessa olen myös vahvistanut, että replikoinnin automaattisesti uudelleen.

Poistuminen kannettava tyhjäkäynnille johti työntekijä alkaa käsitellä työpaikkoja työnohjausta palvelimelle. Kun jatkat kannettavan käyttö oli myöhässä noin 30-60 sekuntia, tämä on melkoisesti aikaa ja henkilökuntaa olisi tehtävä selväksi, että heidän koneensa voi pysähtyä hetkeksi palatessaan kone. Uudemmissa koneissa saattaa olla tauko näin kauan. Hyöty määrän käsittely suoritetaan näiden koneiden aikana käyttämättömänä aikana olisi enemmän kuin suuremmat toimihenkilöille, joiden odottaa lyhyen ajan (eli 1 minuutti) on ne saapuvat koneet aamu (olen usein odottamaan kauemmin että tämä Windows Defender päivitys tapahtuu), jos ne olivat tietoisia tästä (hyödyllinen aika tarttua aamukahvia!).

Kaiken kaikkiaan olen varma, että olen osoittanut teknologioita, joita voitaisiin käyttää luomaan tällaisen järjestelmän. Olen osoittanut, että tällainen järjestelmä ei toimi (erittäin) pieniä ja hieman enemmän kokeiluja voidaan skaalata jopa hyödyntää resursseja toimiston koneita. Jos en pääse vähällä tehdä tämän olisin erittäin kiinnostunut tietämään / nähdä, kun joku muu tekee.

Päätelmät / Arviointi

Seuraavan selvä askel olisi todella saada reaalimaailman esimerkki ja alkavat ottaa käyttöön järjestelmä, kuten tämän sisällä toimistoympäristössä ja katso mitä tapahtuu. Kysymysten yritys sitoutumaan tähän ilman polkua paahtava yritys todistaa teknologia ja tehokkuus voi olla hieman hankalaa. Grid / Hajautettu laskenta on hyvin suosittu on joissakin piireissä, ja on joitakin suuria ohjelmia (BIONC, SETI @ Home, Folding @ Home, etc). En kuitenkaan löydä pienemmässä mittakaavassa ja yksinkertainen järjestelmä tällaisena hauissa voitaisiin kaulitaan sisällä toimistoympäristössä.

Olen luonut periaatteessa vapaa järjestelmä käyttää enimmäkseen avoimen lähdekoodin ohjelmistoja ja työkaluja lähes kaikkiin toimistoihin. Tekniikat olivat pohjimmiltaan osoitettu ja osoittaa suorittaa ja toimii odotetusti. Toivottavasti on osoitettava, että ei ole paljon työtä ja hyvin yksinkertainen asennus voit asentaa Office grid-järjestelmä, joka on tehokas, halpa, Â ja skaalautuva kaikki samaan aikaan.

Kun järjestelmä on käynnissä ei ole juuri mitään loppua määrä räätälöinnin ja parannuksia voit tehdä. Esimerkiksi tilastot / benchmarking voidaan helposti lisätä osoittaa arvoinen tällaisen järjestelmän joka päivä. Uudet koneet voidaan lisätä nopeasti ja helposti, kun ne saapuvat päivitykset nykyisten laitteiden vahvistamalla oman prosessorin tehosta.

Toivottavasti olet nauttinut lukea tämä artikkelisarja ja sen antanut sinulle ajattelemisen käynnissä toimiston verkkoon. Ratkaisu esitetään tässä ei välttämättä toimi kaikissa tilanteissa, mutta olisi voitava mukauttaa, jotta voit saada tietojenkäsittely tapahtuu käyttämällä omaa ratkaisua.

Voit vapaasti lähettää minulle kommentteja, korjauksia ja parannuksia ja teen parhaani pitää tämän artikkelin päivitetään vastaamaan.

[Ilmoitus] lapsen pid XXXX opastin Segmentointi vika (11)

By Steven Lloyd Watkin , sunnuntai 11 lokakuu 2009 18:09

Jos olet hiljattain päivittänyt PHP tai Apache et ehkä tulossa vastaan ​​kysymyksen verkkopalvelimesi palauttaa tyhjiä sivuja, ja heittää virheilmoitukset omaan loki ei ole aavistustakaan miksi, tässä on yksi mahdollinen tapa korjata sen ...

Minulla on ollut tämä ongelma pari kertaa viime päivityksen jälkeen Apache tai PHP virtuaalikone. Ensimmäistä kertaa huomasin virheen en yksinkertaisesti palasi varmuuskopio minun VM, mutta toisella kerralla tajusin olisin tutkimaan asiaa.

Ensimmäistä kertaa huomasin kyseessä jotkut sivut olivat toimineet tyhjiä tiedostoja taas toiset toimi aivan hyvin. Kun jotkut tutkimuksessa totesin että apache kirjoitti ulos / var / log / http / error_log kanssa seuraavan viestin repeatidly:

[Ilmoitus] lapsen pid XXXX opastin Segmentointi vika (11)

Ei ole jakaa mennä verkossa, ja suurin osa sivujen siitä polkua pois mitään. Se sanoi, en supistuu kysymys PHP kaatuu kun yrittää turhan dynaamiset kirjastot.

Tarkasteltaessa minun php.ini (/ etc / php.ini) En kommentoi pois kaikki dynaamiset kirjastot ladataan suunnittelun kommentoimalla niitä takaisin tarvittaessa. Kaksi Minun piti ottaa pois, jos pdo.so ja mysql . niin.

Kun nämä poistettiin kaikki sivustoni olivat palveli hyvin, aivan kuten ennen PHP / Apache päivitys.

Langaton Acer 5002 WLMi Linux (Fedora 11)

By Steven Lloyd Watkin , lauantai 11 heinäkuu 2009 21:48

Koska olen viettänyt vielä muutaman tunnin tänään ilman internetyhteyttä ajattelin parempi saada tämä kirjoitettu niin, että ensi kerralla olen sekaisin minun laptop asti tiedot on helppo korjata.

Periaatteessa saada langattoman kuljettajat työskentelevät Acer 5002 WLMi sinun käyttää B43-fwcutter. Ohjeet löytyvät täältä: Linux Langaton B43 .

Helppoa, kun tieto sijaitsee.













Panorama Teema Themocracy

4 vierailijaa nyt
2 vierasta, 2 vastaan, 0 jäsentä
Max kävijöitä tänään: 14 klo 12:11 UTC
Tässä kuussa: 26 at 05.7.2011 00:35 UTC
Tänä vuonna: 130 at 28-03-2011 22:40 UTC
Kaikki aika: 130 at 28-03-2011 22:40 UTC