Kategória: Általános

PHP Design Patterns - Observer Pattern

A , kedd 29 december 2009 22:02

Én olvastam Head First Design Patterns a közelmúltban, és úgy döntött, hogy írjon néhány minta PHP példákat a saját javára. Az első, hogy úgy döntöttem, hogy a kód fel Observer Pattern . A hivatalos definíció az Observer minta:

A megfigyelő minta (egy részét az aszinkron közzé / subscribe minta ) egy szoftver tervezési mintát , amelyben egy tárgyat , melyet a téma, egy listát az eltartottak, az úgynevezett megfigyelők, és értesíti őket automatikusan bármilyen állapotváltozása, általában hívja egyik módszer . Ez főleg elosztott rendezvény megvalósításához kezelő rendszerek.

Ahogy rendszerek egyre lazán ügyelve arra, hogy ha egy esemény történik minden igénylő rendszerek ismerete ezek a frissítések a tájékoztatását. Például egy blogbejegyzés, és mentés után egy poszt akkor valószínűleg frissítenünk kell egy keresőmotor (pl. Lucene), frissítjük oldaltérkép, címkék, e-mail jegyzett felhasználók, stb megfigyelő minta lehetővé teszi a fejlesztők, így további hallgatók nem módosítja a megfigyelhető objektum . Az intravénás megfigyelők (azaz a kereső frissítést megfigyelő, egy oldaltérkép generátor, stb) egy tárgy (pl. blogbejegyzést szerkesztő rendszer) számára tudunk az, hogy teljes a szükséges frissítéseket változtatás nélkül.

Folytatódik olvasó "PHP Design Patterns - Observer Pattern" »

Office Grid segítségével virtuális környezetben - 3. rész

A , péntek december 4, 2009 23:37

Bevezetés

Dolgozom a vállalatnál, ahol sok fut kötegelt feladatok feldolgozására millió nyilvántartások adatok minden nap, és én már gondolok a közelmúltban arról, hogy az összes gép ülnek minden nap semmittevés órákon át. Nem lenne jó, ha tudnánk használni az olyan berendezést, mely növeli a feldolgozási teljesítmény a rendszerünk? Ebben a statútum fogom nézni a potenciális előnyei foglalkoztat egy irodai hálózat segítségével virtualizált környezetben.

A 2. részben megnéztük a munkahelyek egy szerver fog futni, és hogyan munkahelyeket úgy kell beállítani, annak érdekében, hogy a legnagyobb mennyiségű feldolgozás, biztosítva egyúttal, hogy minden feladat feldolgozása hiba nélkül.

Beállítása a munkavállaló - és petyhüdt szerver

A következő lépés a folyamat, hogy beállítsa a virtuális munkavállalók. Ehhez fogom használni telepítése CentOS VirtualBox segítségével. Meg fogom telepíteni MySQL és a PHP a szerveren, más néven sántítás (Li Nux, ySQL m, P HP) Kiszolgáló (Lehet, hogy tette ezt a nevet fel).

  • VirtualBox telepítése a Windows gépen (az alábbi link)
  • Töltse le és telepítse CentOS (jelenlegi verzió 5.3) belül létrehozott virtuális gép

Nincs értelme lesz nekem erre van talán 1000 's nagy tutorials odakinn (OK, itt van egy: létrehozása és Managing CentOS virtuális gép alatt VirtualBox ). Az Fontos megjegyezni azt hiszem, hogy én felhívtam a virtuális gép GridMachine.

Ami a választásom a virtualizáció és az operációs rendszer kliens megy nincs nagy kényszerítő ok, minden választás. A VirtualBox valamit, amit használni az otthoni gépen, és támogatja a három fő operációs rendszerrel. Úgy döntöttem, CentOS, mint a jó és stabil operációs tudom használni a saját webszervert. Én vagyok egy nagy híve a megfelelő eszközöket a munka (bár én alkalmazása "használja a leggyorsabb és legegyszerűbb neked" mentalitás itt), így ha az operációs rendszer X fut a kód gyorsabban és hatékonyabban használni, hogy helyette :)

Fontos, hogy ellenőrizze, hogy a VM használ DHCP, különben minden egyes új virtuális gépet kellene beállítani külön-külön, ami valami, amit nem használ DHCP want.By nem kell beállítani a hálózati beállításokat külön-külön dolgozó gépek, DHCP átad IPs ki az Ön számára. Ezért tudja másolni a virtuális gépen az Office nem kell aggódni a kiosztásról egyet (ez javítja a skálázhatóság és csökkenti a munkavállaló adminisztráció).

A folyamat akkor tűztek ki célul az lenne, hogy szerezzen be új fizikai gép, VirtualBox install, majd nagyjából bevetni a virtuális kép nem sok mást. Lehet, hogy bölcs, hogy beállít az összes munkavállaló egy másik alhálózaton, így legalább látni, hogy hány gép fut. Azt is el kell állítania a gép egy hosszú távú bérleti vagy lízing korlátlan DHCP.

Hogyan lehet futtatni Jobs a munkavállaló

Ez egy érdekes terület, és számos megalapozott módszereket feldolgozó munkákat a munkavállaló. Itt én csak megvitatják a két legnyilvánvalóbb:

  • Állandóan futó script: A script, legyen az egy shell script, vagy egy PHP script lefut, ha a munkavállaló és fut részeként végtelen ciklusba. Én ezt a módszert diszkontált egyik összeomlik a forgatókönyv és esetleg a munkavállaló megszűnik nélkül fut valamilyen beavatkozásra.
  • Cron alapú parancsfájl végrehajtása: minden X percben a cron démon indul a hívás, hogy a script, hogy mennek a dolgok. Néhány ellenőrzés nélkül vezethet, hogy sok-sok példányban a munkavállaló script fut.

Az én döntésem volt, hogy a cron, amely indul egy shell script minden 10 minutes. Saját shell script a következő feladatokat:

  1. Kap egy futó programok listáját, és ezt szűrnünk 'php'. Ha nem találja, majd folytassa.
  2. Hívja fel a munkát kódot, az én esetemben ez valami php alapú
  3. Munkás szkript befejezi a run
  4. Ready to go again a következő megfelelő hívás

Saját bash script így néz ki a következőket:

  #! / Bin / sh
 ha ps ax | grep-v grep | grep php> / dev / null
 majd
     echo "Job jelenleg feldolgozás, exit"
 más
     echo "feladat nem fut, indítsa el most"
     php yourJobProcessingScript.php
 fi 

Megjegyzés: a visszhang-k szinte teljesen értelmetlen, de segíthet a következő személyt, aki jön, hogy megpróbálja szerkeszteni őket.

Megállapítja, hogy a felállított a munkavállaló virtuális gép, gyors, egyszerű és könnyen másolható, hogy minden új darab hardvert érkezik. Az "okosság" a távvezeték-rendszer valójában nem a megjelenített operációs rendszer, annak minden köze a kód munkahelyet teremtett a folyamat, a munka konfigurációt, és ügyelve arra, hogy a feladat fut, ha megfelelő (vagyis, ha a fogadó tétlen ).

Beállítása Windows inicializálása Munkáspárt

Az első feladat, hogy kidolgozza a parancs futtatásához szükséges virtuális gépet a Windows parancssorban. Ha már telepítette a VirtualBox az alapértelmezett helyre, és már dolgozó GridMachine nevezte el a parancs szükséges töltse fel munkavállaló:

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

Azonban futtatni a scriptet egy "fej nélküli" állapotban meg kell használni:

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

Ez el fogja indítani a virtuális gépet anélkül, hogy a GUI-t és hagyjuk, hogy mentse az állami kecsesen. A második érv kikapcsol RDP, így nem ütközik a Windows RDP, vagy kapsz egy üzenetet figyel a 3389-es port. A virtuális gép neve nagybetű érzékeny!

Ezután szükségünk lesz, hogy hozzanak létre ablakok elindítására a munkavállaló, ha a VM gép nyugalmi állapotban van. Ehhez (Windows XP), akkor be kell menni a Start -> Minden program -> Kellékek -> Rendszereszközök -> Ütemezett feladatok az alábbiak:

Ütemezett feladatok

Ezután kattintson a "Ütemezett feladat hozzáadása" majd keresse meg hozzá egy egyéni program. Keresse meg a VBoxManage script, majd kattintson az OK gombra. Ütemezése a feladat bármilyen kiegészítő (fogjuk megváltoztatni ezt egy perc), és folytassuk. Miután kihagyva a következő képernyőn a Windows megkérdezi, hogy kivel szeretné futtatni ezt a feladatot, azt javaslom vagy a "Rendszergazda" vagy létrehoz egy új jogosultságokkal rendelkező felhasználóként. Ne feledje, nem akarunk beavatkozni a standard személyzeti fiók a gép bármely ponton. Kattintsunk a Tovább gombra, és ellenőrizze További keresési lehetőségek erre a feladatra.

A végén a futam szövegdobozba hozzátesszük, hogy "startvm GridMachine" string és arról, hogy futás csak bejelentkezett marad unticked. Látogasson el a következő feladat ütemezése és az ütemterv módosítása legördülő azt a lehetőséget, "üresjáratban", válassza ki azt az időt szeretne lenni a gép tétlen, mielőtt a következő lapon.

Végül untick a lehetőséget, amely kimondja, leállítja a feladatot, ha már fut az X ideig, de ne jelölje be a lehetőséget, hogy állítsa le a feladatot, ha a gép már nem tétlen.

menetrend

Ennyi az egész, akkor a windows telepítő fogadó!

Összegzés

Ebben a részben az általunk létrehozott egy virtuális gépet, hogy működik a munkavállaló, valamint az a mód, ahogyan mi nevezzük, és végre mi feladatunk feldolgozó szkriptet (magamnak egy PHP script). Innen nézzük meg, hogyan kell beállítani a másolatot a Windows elindul a virtuális gép a fej nélküli módban, amikor a számítógép felszabadul, és mentse az állapotba, amikor a felhasználó újra a gép használatát. Remélhetőleg ezen a ponton látsz, milyen egyszerű ez, hogy hozzanak létre egy ilyen rendszert, és a viszketés, hogy néhány kísérletet megy magad!

Legközelebb

A 4. rész fogjuk vizsgálni az eszközök használatával, annak érdekében, hogy te a legfrissebb verziót a kód és az adatok forrásait, így kapott eredmény mindig up-to-date a legújabb üzleti információk és a logika.

Nevek Egyesült Királyság Directory és a Facebook alkalmazás

A , Április 10. Péntek 2009 9:33 am

Az egyik vicces dolog, amit vettek részt, miközben dolgozik Tracesmart a könyvtár nevét . Alapvetően mi volt az a hatalmas információs adatbázis, és előhúzott egy nagy halom statisztikák különböző neveken.

A folyamat lényege egy nagy SEO erőfeszítést annak érdekében, hogy több forgalmat a helyszínen, de azt is előírja, néhány érdekes információk és statisztikák nevét.

Íme egy példa a nevemet Lloyd Watkin , vagy azt hiszem, pontosabban Steven Watkin . Vegyünk egy perc alatt keresd ki a neved a Tracesmart helyszínen, talán érdekes lehet ;)

Már nevet is kapott statisztikai adatok a könyvtár nevét oldal, amely elmondja, hogy milyen nevet is keresett, és hogy milyen régen. Az viszont érdekes, hogy híres emberek nevét repülnek fel a statisztika, amikor megjelennek a hírekben. Egy friss példa erre, hogy a Liam Neeson felesége, aki meghalt egy sí baleset nemrég, bár természetesen az emberek nem egészen pontos a helyesírás (ezért a rengeteg találat ezt a nevet) - Liam Nilson .

Facebook alkalmazás

Miután a könyvtár nevét hozták létre állítunk létrehozásáról a Facebook alkalmazás , amit duely neve " My Name ". A Facebook alkalmazás kiterjesztése a könyvtár nevét és mintegy további statisztikák. Annak érdekében, hogy adja hozzá a nevét a könyvtárban Facebook látogasson el:

http://apps.facebook.com/my-name/

Flickr és a Yahoo!: Elfelejtette bejelentkezési adatokat

A , csütörtökön 2. április 2009 19:31

Néhány hónappal ezelőtt változott meg a Flickr jelszót, hogy egy barátja lehetett feltölteni néhány képet hozzá. Pár hónappal később találok Elfelejtettem a jelszót és próbálja megjegyezni az én titkos részletek a Yahoo! éppen egy rémálom. Ettem Yahoo! e-mail cím már több éve nem voltam biztos benne hogy mikor és hol (éltem), mikor iratkozott fel - oh csak azért, hogy ezt világosabbá Flickr a Yahoo! bejelentkezési rendszert használ :)

A Yahoo! nem voltak segíteni sem akarták pontos részleteit, és el fogja utasítani, ami nem egyezik meg. Plusz én nem engedték, hogy egy listát a lehetséges egyezés részletek kellett lennie közvetlenül minden részletében ellenkező esetben el kell utasítani. Megértem a biztonság, de ez már-már a fájdalom a csacsi, különösen azért, mert tudtam letölteni a felhasználói nevemet, hogy a megszokott e-mail címet minden gond nélkül (miért nem küld egy reset van!?!?!). Mindennek tetejébe ez a részleteket akarták küldeni a hivatalok kaliforniai postán vagy faxon, bú!

Lépj vissza a Flickr, aki kedves küldjön egy e-mailt az én e-mail címet regisztrált kérdezik tőlem, hogy én le Yahoo! figyelembe véve az én Flickr. Hurrá tudtam akkor iratkozzon fel az új fiókjába, és tegye vissza Yahoo! Flickr én ezt az új fiók bejelentkezési.

Várakozás után legalább egy hétig minden alkalommal válaszolni Yahoo! Flickr van ez minden rendezve 2-3 órán belül!

Szép munka Flickr, szerencsére te kint vigyázott a vásárlók :)

Most mindenki az unalom itt még egy linket az én Flickr fiók

Inspirálva ... és guilted!

A , szerda 11 március 2009 20:51

Már a közelmúltban létrehozott egy blogot az egyik srác a munka - Matthew Hopkins - és látta, hogy az első néhány hozzászólás is jutott eszembe, hogy talán kéne hozzá egy pár hozzászólás, mint a már egy jó ideje, és sok minden történt mint 2008-ban. Egy másik a srácok a munkát nem maga a blog, hogy a jó öreg Stephen Griffiths , így vessen egy pillantást is ott.

Így fogok vánszorog, és adjunk hozzá néhány retrospektív hozzászólás arról, hogy mit tartott 2008 számomra, és hogyan teheti a 2009 :)

2008 WTF??!

A , csütörtök január 1, 2009 12:00 am

2008 volt az óév furcsa, van itt néhány dolog, amit nagyon élveztem róla, Â, és van néhány dolog, mostanra feledésbe ment tovább, és a ....

Búvárkodás

Én nem sokat, ahogy a búvárkodás Azt hiszem, sikerült kb 10 merülés egész évben. Az egyik ilyen volt a merülés könnyűbúvár mikulások esemény Vobster Quay volt sikeresebb, mint legmerészebb álmaimban. A végén már felvetett több mint £ 1000 a RNLI , van lefedettség a BBC és az ITV, és már mintegy 80 búvárok a vízben. Vobster volt a tenger a búvárkodás mikulások a nap! Nagyon remélem, én csinálom mroe búvár 2009-ben (még sok más!), Hogy újra bele fog érinteni sok képzést kap kényelmes újra. Hiányzik a napon kezd a hajón, a nap ragyogott le, megragadta egy homár, csomagoló Upa Â, és irány haza egy pár sört.

Futás

Végén 2008 januárjában részt vettem egy autóbalesetben, miközben hátulról sújtott le, Semmi komoly, vagy úgy gondoltam. Több hónapon át a nyakam fájdalma van egyre rosszabb megállás nekem fut. A végén felvettem a kapcsolatot egy baleset követelések cég, aki kezdtek velem kezelését egy csontkovács, Cardiff, amely Én mindig részt (2009 március - a követelés még nem rendezett sem). A futás egy másik olyan dolog, szeretnék visszatérni, tettem kezdeni Miles között azonban betegségek, sérülések, és ő végül a Cambridge-mozgó csak kikerült néhány alkalommal. Tényleg szükségem van egy jó rúgni a tróger, hogy már megy megint, bár én 1 vigaszom, hogy én már a kerékpározás, és ezért vissza dolgozni hónapok csinál nekem jó.

Áthelyezett

2008 júliusában költöztem egy Megan lakás, vagyunk eligazodni a festés és mázolás, és egyre azt keresem nagyon Nicea - bár mi vagyunk a fajta húzva sarokkal, mi a festmény .... még. A lakás Adamsdown Cardiffban (Soha nem úgy tűnik, hogy messze mozog), és ez nekünk csak jó illesztés.

Munka

A munka volt az egész hely, 2008-ban kezdtem sodródott egy kicsit, mielőtt munkába egy bérbeadó ügynöksége a menedzser. Ez segített nincs vége az ingatlan bérbeadása és ügynöki szoftvert , hogy én alakult ki. A tervem az ingatlan bérbeadás és iroda program célja, hogy engedje el, mint egy olcsó termék, amikor több ideje tisztázni fel. Abból, amit én mondtam a konkurens termékek a piacon könnyebb használni, és sok végez vagy több azonos funkciók egy jobb megoldás :)

Április 2008 folyamán jön az én 22. születésnapom mind Megan és anyám elkezdett rámenős nekem, hogy "kap a karrier", amely egy kemény ötlet, hogy nyelni tényleg erre volt szükségem. Futás saját cégem volt, szórakoztató, de nem biztosítja a stabilitást, és megszerezte a szükséges alamizsna az iroda bérbeadás nem okozott hosszú távú karrier cél. Mindig egy esetben várja meg, amíg nem kapom szoftver elkészült, és én is értékesíthet, de az idő mindig ellenem.

Mi ezt követő több interjút néhány nagy cégek néhány nagy területen, nagyon ígéretes a mozgó egy új területre, az újrakezdést tűnt nagy. A legjobb állásajánlat volt egy nagy hosting szolgáltató a Worcester területén, és úgy tűnt ideális. És mi történt? Hát én már kifejlesztett egy online megoldást SMS-ben a karácsonyi vissza, hogy már nem üldögél sokat tesz a befektetők találtuk. Kiváló gondoltam, és átmentünk. Minden nem végződött jól, és miután több hónapig tartott ígéretek és a növekvő stressz csináltam egy állványt, és kiment. Munka a heti 60 órát, hazajön, és ezzel újabb 3-4 óra plusz munka egész hétvégén, és minden stressz volt az egyik legjobb döntése, amit valaha is készült. (Itt szeretném megköszönni Megan, a szüleim és a barátaim, hogy mellém állt, én egy stressz-fejű fasz időnként, és sajnálom)

Négy héttel később landolt magamnak állást nevű cég Tracesmart Cardiff Bay, mint egy PHP fejlesztő. Ha sikeres tesztek és az interjúk kezdtem egy egész halom lelkesedést (el tudja képzelni a dolgok, már egy kicsit alacsony valamikor). Tracesmart végre az emberek keresnek, az emberek felkutatására, választói névjegyzékbe adataik kezelésével járó nagy mennyiségű adat. Voltam ott most kb 5 hónapig (mivel én tényleg ezt írásban 2009 március), és szeretem minden percét. Én magam minden nap nyomja, van egy nagy munkakörnyezet (az asztalomon nyílik az öbölre!), Jó kollégák! Már jó néhány részt projektekben (egyéb álláshely követni), és nagyon büszke vagyok a munka, amit csinálok ott.

2009 ....

Annak ellenére, kezdve 2009-ben Németországban szenvedett a Novo vírus 2009 nagyszerű eddig. Megan és én spent Szilveszter időt Németországban, és Amszterdamban. Amszterdam gyönyörű, és az Anne Frank-házban volt egy igazi nagy hatással rám, valahol fogjuk Határozottan visszatérünk. A munka megy igazán jól. Nyakam egyre jobb és jobb így, hogy pár hét múlva fogok kimenni azokat az első néhány szörnyű fut újra. Az egyetlen dolog, amire igazán szükségünk van egy jó pár merülés (vagy egy nyaralás merülés), hogy vissza a hinta a dolgok!

Egyedi php.ini a Plesk

A , szerda 13 augusztus 2008 15:53

Van egy dedikált szerver a ukFast Â, amelyen futunk számos területen , hogy létezik a virtuális szerverek alatt futó Plesk . Különben is, a legtöbb az én domain akarom eltitkolni figyelmeztetéseket és a biztonsági hibákat folyamatosan a log fájlokat, de néhány területen az én (mint például a fejlődő vagyok én) meg akarom mutatni, minden kis piszkos figyelmeztető és hiba, hogy jelenik meg.

Ha tudom szerkeszteni a PHP . INI "> php.ini-ben az befolyásolja minden egyes domain név szerver, nem túl jó ötlet, különösen, ha több a területeket teljes élő verzió Úgy hogy lehet megkerülni ezt el kell helyezni nevű fájlt vhosts.conf a conf könyvtárban, például a /var/www/vhosts/<my_domain>/conf/vhost.conf .

Miután felvette a kiegészítő kód, ismét például én is,

 php_value error_reporting E_ALL php_value display_errors On 

majd futtassa az alábbi parancsot (ez átállítja az összes domain annak csak gyorsabb lazier gépelés, mint a domain név ,

 # /usr/local/psa/admin/bin/websrvmng -a 

Ha érzel magadban egy kicsit ügyes akkor mindig írja ki a teljes verziót, ami,

 # /usr/local/psa/admin/sbin/websrvmng -u --vhost-name=<my_domain> 

Miután ezt a parancsot, ha megnézi a httpd.include fájlt, látni fogja, hogy a httpd.include lesz az include sort a vhost.conf, valahogy így:

 Include /srv/www/vhosts/domain.com/conf/vhost.conf 

Bolometer Theory

A , csütörtök 21 június 2007 13:18

Elegem tonna e-maileket (is körülbelül 5: $) firtató bevezetés "bolometer elmélet" oldalon voltam, hogy akár a helyszínen. Tehát itt ez éppen, mint azelőtt, de néhány, a linkeket más bit részeinek a régi helyén eltávolított :)

Bevezetés a bolometer elmélet













Panoráma Theme Themocracy

5 online látogató jelenleg
3 vendég, 2 botoktól, 0 tag
Max. látogatók ma: 23 at 07:18 am UTC
Ebben a hónapban: 26 at 2012/04/04 10:27 UTC
Ebben az évben: 69 at 09:56 am UTC 27-02-2012
Minden idő: 130 28-03-2011 at 10:40 UTC