Мислења обележани: DB

Канцеларија мрежа компјутери со користење на виртуелни средини - Дел 1

Со , петок 4 декември 2009 година 11:23

Вовед

Јас работам во компанија во која трчаме многу серија работни места обработка милиони на евиденција на податоци секој ден и јас си помислив неодамна за сите машини кои седат околу секој ден не се прави ништо за неколку часа. Зарем не би било добро ако би можеле да ги користат овие машини за да ја зајакне моќ на процесирање на нашите системи? Во овој сет на статиите, ќе одам да се погледне на потенцијалните придобивки од вработување на канцеларија мрежа користење виртуализирани средини.

Како PHP програмер јас ќе одам да се користи алатки кои јас го користам секој ден, имено, Linux, MySQL , PHP, VirtualBox и субверзија (SVN). Сепак се надевам дека овој водич ќе се прилагодат на други јазици и технологии само како добро.

Решението јас се обезбеди ќе биде многу лабаво врз основа на видот на преработка ние би треба да се постигне меѓутоа тоа не може да биде вистина преку целата статија како што јас ќе се променат работите за едноставност, или да се произведе повеќе интересни употреба сценарија.

Овие виртуализирани средини ќе се кандидира на Виндоуз машини, бидејќи тоа е она што поголемиот дел на канцеларии работи. Обработка дека канцелариски машини не треба да се меша со вработените користење на овие машини, треба да бараат никакво одржување на машина, и да биде лесно да се распоредуваат на нови машини како што тие ќе станат достапни. Исто така, нови виртуелни машини не треба да бара никакви дополнителни конфигурација како оваа голема мера го намалува приспособливост и леснотија со која мрежа систем може да биде продолжена.

Зошто распоредување на Канцеларијата компјутерска мрежа?

Прво може да се размислува, зошто да не само користење на cloud computing ресурси како што се EC2 платформа Амазон ? Па причини може да биде неколку, на пример:

  • Вие нема да им го доверат одредени податоци на cloud computing животната средина
  • Вие не може да се стави одредени податоци во облак компјутерска околина за правни причини (пр. податоци напуштање на земјата), потенцијално за правни причини, на пример, NHS записи.
  • Сакате да го задржите вашиот обработка на единици се затвори и да има целосна контрола над хардверот премногу
  • Вие не треба на проектот средства да се кандидира облак случаи
  • Вашата канцеларија нема врска со интернет и затоа нејзините не е можно да се користи облак ресурси
  • Не ви се допаѓа дождот, облаците укажуваат на дожд, затоа ќе се задржи и подалеку

Сигурен сум дека листата може да продолжи, но мислам дека е доволно за сега.

Предности на канцеларија компјутерска мрежа

Па, да се направи некои математика (и во вистинска физика стил ти овозможува да направи некои убедливо претпоставки). Замислете да имате голем мускулест обработка на серверот се извршува 100 работни места по ден. Во вашата канцеларија имаш 50 машини кои се неактивен 16 часа на ден, секој од овие машини е 10% како моќен како вашиот мускулест обработка прекине. (Сите резултати тука се заоблени да се потцени перформанси зголемување).

Значи, 1 машина * 10% моќ * 2/3 време = 0.067, односно 1 десктоп обработка во време на мирување може да обработи 6 целосна работни места по ден.

Ако сега скала на овој горе што е потребно 15 неактивен компјутери на процесот, како многу работни места по ден како главен за обработка на серверот не.

Па во нашата преправам канцеларија од 50 машини би можеле да се зголеми нашата моќ на процесирање од 1 сервер до 4 целосна обработка на сервери, или би можеле да се обработка на 400 работни места по ден наместо 100.

Известување, за да нема инвестиции во нов хардвер вашата компанија има само ја зголеми својата серија капацитет за обработка на 4 пати! Потенцијално си оди за да ги зголемите вашите моќ употреба, но од повеќето канцеларија средини Сум бил на машини обично се оставени на текот на ноќта и онака, па можеше да се види ова како зелена иницијатива.

Други предности, исто така, значи дека инвестирањето во нови (или групно) обработка на сервери може да биде одложен доколку вашата канцеларија машини се доволни и дека како да го подобрите на моќта на вашиот канцелариски машини вашата канцеларија мрежа станува помоќен автоматски.

Технологии

Што ви треба? (Или поточно она што не го користам):

  • Неактивен канцелариски машини (во мојот случај резервна старите прозорци XP лаптоп)
  • VirtualBox (или друг виртуелизација клиент софтвер)
  • А виртуелната машина со PHP, MySQL running водење на пресечена оперативен систем, јас го повикувам овие Мои Limp сервери :)
  • Работни места за да се кандидира
  • Работа сервер (може да биде друг виртуелната машина некаде)

Типични места на

Видовите на работни места, кои овој систем е дизајниран да работи е како што следува:

  • Системот добива список на податоци врз основа на која ние треба да одговара и да се вратат резултати
  • Појавување вклучува проверка / бараат неколку (прилично статични) извори на податоци
  • Резултати од извори на податоци може да бара понатаму валидација, спојување, проверка на дополнителни извори на податоци како одговор кон резултатите
  • Податоци се враќа со појавување на евиденција, целосно потврдени и се обработуваат
  • Секој рекорд во рамките на една работа е независен од остатокот

Значи, во основа бараме во трчање работни места кои бараат мешавина на база на податоци пребарувања и некои број Британија, прилично типичен сценарио во деловното опкружување.

Мрежа решенија, не се само поволна за обработка на работни места од овој тип. Во суштина, секој процес кој може да се подели на независни единици може да се работи во паралела. Погледнете го овој Википедија за примери и повеќе информации: мрежа компјутери , но неколку познати примери се SETI @ Home и BIONC . Постојат рамки за водење компјутери мрежи, и овие се добро вреди да се гледа во.

Што ќе се постигне?

До крајот на овие статии Се надевам дека за да покаже дека имплементирање канцеларија мрежа не мора да биде енормно скапи или одзема време. Одам да разговараат за:

  • Поставување на работа на системот за контрола, работа конфигурација
  • Создавање на соодветна обработка на виртуелната машина
  • Како да се инсталира системот на една машина прозорци
  • Обезбедувајќи си со користење на најнова код и податоци
  • Распоредување и бенчмаркинг
  • Гледајќи напред

Јас ќе бидам зграда (Добро, изградена, а потоа го напиша ова) пример апликација за тестирање на концептите на локална машина со користење на Windows XP и моето "GridMachine" виртуелна машина. Мојата работа за контрола на серверот ќе биде мојата главна машина која работи Fedora 11 .

Ова е во никој случај не треба да покажат целосно работат робустен систем, неговата значеше повеќе од демонстрација и да дискутираме кој покажува дека овие работи може да се постигне во разумно краток временски период и во малку трошоци. Ве молиме слободно да ме праќајте било какви коментари, корекции или подобрувања и јас ќе дадам се од себе за да се задржи овој член ажурирани да се совпаѓаат.

Следниот пат

Во дел 2 ќе почне со разгледување на работата на системот за контрола, и гледам во тоа како работни места треба да биде конфигуриран со цел да се постигне најголемата количина на обработка додека се обезбеди дека секоја работа се обработуваат без да успее.

Канцеларија мрежа компјутери со користење на виртуелни средини - Дел 2

Со , петок 4 декември 2009 година 11:23

Вовед

Јас работам во компанија во која трчаме многу серија работни места обработка милиони на евиденција на податоци секој ден и јас си помислив неодамна за сите машини кои седат околу секој ден не се прави ништо за неколку часа. Зарем не би било добро ако би можеле да ги користат овие машини за да ја зајакне моќ на процесирање на нашите системи? Во овој сет на статиите, ќе одам да се погледне на потенцијалните придобивки од вработување на канцеларија мрежа користење виртуализирани средини.

Во Дел 1 дадов преглед на системот и технологии ќе биде со користење, како и како што беше дискутирано некои од потенцијалните причини зошто вие би сакале да се создаде канцеларија мрежа.

Работа контрола

Ако си оди за да се работи работни места, тогаш се случува да треба некој начин да управуваат со нив. Вашата работа на системот за контрола (на вашата работа сервер) треба да биде навистина добро обмислен пред дури и се обидува да се кандидира канцеларија мрежа. Значи прво, она што се задачите за работа на системот за контрола:

  • Рака работни места по барање од работниците
  • Кажете работници каков тип на работни места за да се кандидира
  • Песна работни места
  • Осигурајте се дека работите се работи само еднаш
  • Обезбеди работа податоци за работниците, или барем да им каже каде да го добие

Системот, исто така треба да биде растеглива, решение кое работи сега за сега во еден случај може да се продолжи да се кандидира неколку видови на работни места, како на бизнис го гледа во вредност од мрежа решение. На пример, работни места може да се здобијат со приоритети, повеќе од еден тип на работата може да постои (т.е. неколку кодот бази), на крајот дури и може да работи на неколку различни работник машини кои се оптимизирани за секој тип на работа (иако тоа не се движат подалеку од "генерички работник "идеја). Секогаш се трудам да се размислува за иднината, кога развој системи, краток рок визија може да доведе до долгорочно фрустрација и зголемување на развој време.

Работа Server

Ние ќе треба некаде да се контролира нашата работа од, ова треба да биде единствениот систем во вашата мрежа која има фиксна локатор, да биде дека IP адреса, името на домаќинот, рачно (со користење на внатрешниот DNS), итн Тоа е затоа што работниците треба да знаат каде да бараат работа, работниците треба да се најде работа системот за контрола на (не на работа на системот за контрола се најде на работници).

На работа серверот сам по себе не навистина имаат комплицирана задача (во основен систем во секој случај), таа треба да се сместат листа на работни места, од рака, работни места, да се примаат резултати, а потоа и ги чува за подоцна пронаоѓање. Како овие делови (како "од рака работни места") се дефинирани може да биде многу основни. Подоцна може да се прошири системот да го вклучите администрација интерфејс за да додадете, уредувате, бришете, да го суспендира работни места, но ова е надвор оваа вежба.

Нема причина она тогаш дека вашата работа серверот не може да биде виртуелната машина работи во рамките на вашиот главната обработка на серверот доколку не се исцеди премногу ресурси од него. На работа на серверот сепак е потребна висока достапност, ако тоа оди надолу на вечер петок си оди за да се изгуби целиот викенд на обработка, потенцијално да ве чини неколку недели во вредност од времето за обработка (во споредба со вашата главна обработка на серверот сам) . Можеби ќе сакате да се разгледа ставајќи вашата работа сервер на товар избалансиран животната средина за висока достапност.

Основното поставување

Основните подесување за нашата работа серверот ќе се состои од она што јас го повикувам еден од моите Limp сервери (што е Li nux, м ySql, P HP). На код се извршува на Thea работници, всушност, ќе работат од она што работни места тоа може да работи преку интеракција со со работа системот за контрола на бази на податоци. Подоцна би можеле да се создаде веб сервис, а всушност од рака работни места наместо на работниците прават напорна работа самите себе, но сега за сега ние ќе продолжиме со користење на KISS принцип (Нека биде едноставно, глупав!).

Значи, да се создаде три MySQL табели да се справи со работни места. Тие ќе бидат `работни места`, `jobRecords`, и `jobResults`.

работни места маса Еве јас користам SQL Бади голем малку алтернатива на phpMyAdmin само поради тоа што нејзините полесно да се инсталира на CentOS (за другите да видат: 10 Велики алтернативи на phpMyAdmin )

Оваа табела се состои од 5 едноставни полиња,

  • ID: Уникатно идентификуваат работа
  • Име: Може да биде клиентот референца, или било кој број на други идентификатори
  • Статус: Вие треба да знаете каде што работа е во, на пример,
    • 0: Не е стартуван
    • 1: зедов
    • 2: Завршено
  • started_by: Кој започна да прави на работа? Ова не е целосно потребна, но е убаво да се имаат. Би му сугерираат следење на работниците со нивната IP адреса на вашата мрежа
  • started_at: Кога работникот започне на работа? Со следење на работни места кои не се заврши во рок од Х сума на времето што знаеме ние треба да ги собереш на работа уште еднаш и да почне обработка од страна на друг работник. Работници би можеле да запри со обработката / go присутен за било кој број на причини, прекин на електричната енергија, несреќата, мрежна загуба, итн

Тоа е лесно како оваа табела може да се прошири со неколку дополнителни полиња за да се овозможи статистика СЛЕДЕЊЕ, финиш време колона да видите колку долго на работа зеде, контра за да видите колку работници зедов работата (очигледно ова треба да се стремат кон 1), работа приоритет, листата може да продолжи и натаму. Во посложени работа сценарија тоа ќе биде можно да се определи колку меморија на работникот ќе им треба пристап до (а со тоа само го користите соодветни работници), или дури и каков тип на работник ќе биде потребен.

Ај додадете неколку пример работни места:

пример работни места

Во следната табела повторно е доста едноставна да се разбере, овие се наша работа записи. Тие се поврзани со основни работни места, маса од страна колона `jobs_id`. Сочинуваат на оваа табела многу зависи од податоците кои ви се потребни за снабдување на вашите работници, да се направи еден многу едноставен пример, каде што имаме четири колони:

  • : ID на рекорд
  • Име: Име на лицето
  • адреса: адреса на лицето
  • jobs_id: На работа ID што овој рекорд е поврзано со

Третата и последна маса се состои од еден резултати маса, таа има многу исти сочинуваат како што е нашата евиденција маса, и со додавање на некои колумни би можело да биде дел од евиденцијата табела:

  • job_record_id: линк резултатот на работа маса
  • резултат: Резултат податоци

... И тоа е се што ви треба за работа контрола! (Иако во многу основно ниво) Во мојот случај јас сум укажа на друга маса каде што моите податоци на процесот бил лоциран, но тоа може само така лесно е датотека, параметри да се кандидира симулација код, можете името на таа.

Изборот на работа

Како што е наведено претходно, работниците ќе се потрудиме работа за управување со за нас сега за сега, така што сите ние треба навистина да направите е да најдете работа што треба обработка и да добијат информации. Како ние би го направил тоа? И изберете нашата работа критериуми за селекција и да бараат работни места, во SQL го направив следново:

  1. Да ги преземат сите работни места кои не се означени како завршен, но од нашиот работник и ресетирање на нив (замени __ ME__ со идентификатор, најлесен ќе биде IP адреса):
      Ажурирање `работни места` СЕТ `статусот` = 0 КАДЕ `статусот` = 1 И `started_by` = __ ME__; 
  2. Користење на нашата работа критериуми за селекција, изберете работа и да се каже систем за контрола дека овој работник е се занимаваат со неа:
      Ажурирање `работни места` СЕТ `статусот` = 1, `started_by` = __ ME__, `started_at` = СЕГА () КАДЕ `статусот` = 0 или
     (`Статусот` = 1 И `started_at`> DATE_SUB (сега (), интервал Х час)) Подреди по `id` ASC; 

    Од грабање работни места кои не се вратија резултати во Х сума на времето ние се осигура дека сите работни места се одвива во случај на работник паѓа или ќе awol.

  3. Следна го дофати работни места детали проследено со евиденцијата себе:
      Select * from `работни места` КАДЕ `started_by` = __ ME__ ГРАНИЧНИТЕ 1;
     Select * from `job_records` КАДЕ `id` = __ JOBID__; 

По завршувањето на работа се внесува нашите резултат евиденција и одбележување на работа како завршена. Запомни како работни места може да суспендирање / продолжување во секое време им овозможи за некои стабилноста во Вашата скрипта. Тоа може да биде дека задачата суспендира половина пат низ ажурирање на работа на системот за контрола, па проверка на бројот на записи во една работа, а бројот на резултати спаси назад на работа на системот за контрола ќе биде мудар потег.

Покрај тоа, додека Ова покажува колку работни места може да бидат избрани и успеа од SQL-пребарување рамка што навистина треба да се црпење на вашата работа контрола, така што, ако одлучат да се префрлат на користење на веб сервис, датотека базиран систем, XML , или било која друга број на системи за тоа нема да влијае на кодот над неа.

Работа Конфигурација

Следниот аспект е да се разгледа работа големина и конфигурација. Како играат со работа вашата конфигурација може да штрајк одличен баланс помеѓу брзина, процесот репликацијата, и сигурност. Да потрае неколку ОРД сценарија:

  1. Работни места се земе 1 ден секој да се кандидира: Ова значи дека вашиот работниците треба 15 дена да се процесира секое работно место (се сеќавате на 10% од моќта за 2/3rds на време). Ова не е јасно мудар конфигурација, вашата работа големина е премногу голема! Тоа ќе бидат потребни најмалку двојно време за да се добие работа обработени првичните работник треба да оди awol (време да собереш дека тоа не ја вратил резултат плус преработка време). Во еден идеален ќе треба најмалку една целосна работа лесно ослободен од крајот на секој долг неактивен период, на тој начин да се задржи на работни места темпирана над и во најлош случај работа ќе потрае два дена за да процесот на прво треба да одат водат за исчезнати.
  2. Работни места се 1 минута да се кандидира: Ова значи дека вашето работници трае околу 15 минути за да ја стартувате секоја работа. Додека ова уште на почетокот може да изгледа идеално, да се добие дополнителна работа за обработка за време на ручек време, паузите за кафе, состаноци, итн ова сценарио става притисок врз други области на вашиот систем и ги воведува свои проблеми. На пример, прво вашиот подесување / време за обработка на сооднос се случува да одам право надолу, па затоа губи ефикасноста на системот. Вашата мрежа ќе биде постојано стриминг работа информации на различни работници фрустрирачки за вработените кои се донг нивниот ден на ден работа. Ти си исто така ќе се стави повеќе вирус на вашата работа обработка на серверот, како што има да ни ги подметне многу, многу мали парчиња на работа, на редовна основа. И на крај, во оваа ситуација ако вашата работа серверот оди надолу си оди за да се создаде огромен назад најавите на нецелосен работа додека поголеми работни места може да продолжи на обработка на блажено свесни дека работата серверот беше тешкотии.

Во реалноста нема да има една идеална конфигурација за мрежа поставувањето, многу зависи од расположливите ресурси, видови на работа, работа пресврт време барања, мрежа способност, и така натаму. Сепак, некои насоки ќе бидат:

  • Големина на работни места, така што секој работник може да се добие низ најмалку 3-4 работни места во рок од 15 часа (најдолго најверојатно неактивен временски период)
  • Играј со работа големина, така што подесување време станува прилично незначаен во споредба со времето за обработка (имајќи го во предвид погоре точка).
  • Ако има некоја работа не заврши во дупло време (можеби помалку) што се очекува тоа да се заврши се претпостави дека неговата качил awol и да почне обработка со друг работник. Ова значи дека можеби ќе треба да чекаат до три пати повеќе од нормална должина на работа за тоа да се заврши (можеби повеќе, ако после работа не). Можеби ќе сакате да се намали тоа време, но бидете внимателни да не го намали премногу како што може да започне повторување обработка на задачи на редовна основа.
  • Работни места треба да бидат независни од надвор барања колку што е можно. На работа на серверот, на пример, само треба да се контактира на почетокот и на крајот на секое работно место.
  • Не го задоволите вашиот мрежа, тоа ќе има два негативни ефекти, вашата дневна персонал ќе се најде со помош на мрежата фрустрирачки и проблеми може да биде искуство со врски тајмингот од еден проблем кој само ќе се влоши како ќе го зголемите вашиот мрежа.
  • Обезбеди работни места може да работи на вашиот работници. Ако работни места стане премногу меморија интензивна или простор на дискот интензивна работа ќе започне прекинувам и единственото нешто што ќе забележите е една капка во бројот на работни места, обработени со никаква конкретна причина зошто.

Поднесување на резултатите од работа

При поднесување на резултатите од работа, важно е да се провери дека резултатите не се поднесени од страна на друг работник, особено ако тековната работник е хибернација за некое време.

Кога резултатите се доставени се осигура дека бројот на резултати се совпаѓа со бројот на записи во рамките на работа.

Како што е наведено претходно, а не може да биде над нагласи, се изгради толеранција на грешка во работа на пронаоѓање и поднесување резултати. На работниците може да (и, најверојатно, ќе) одат во суспендира владата на повеќето неповолно пати и тоа треба да се грижеа за. Исто така уште еднаш црпење далеку вашите резултати поднесување ќе помогне грижиме за идните промени на вашата работа на системот за контрола многу полесно да се справи со.

Резиме

Во овој section имаме погледна во она што работа контрола серверот треба да се направи и како да се добие многу основни воспостави систем. Разговаравме како да добијам работа од контролниот систем и тоа како најдобро да го конфигурирате работни места за да се добие најмногу нашите од вашата канцеларија мрежа систем. До крај, став или две за доставување на резултатите назад на работа за контрола на серверот беше презентирана.

  • А за работа за контрола на серверот управува работни места и гарантира дека сите работни единици се завршени
  • Од црпење на вашата работа изберете / резултати поднесување можеме да го промениме технологијата на контрола на серверот без многу проблеми
  • Конфигурирајте ја вашата работни места за да се осигура дека тие се кандидира брзо и ефикасно, без ставање премногу притисок врз вашата мрежна инфраструктура, и без повторување обработка на задачи на редовна основа.
  • Се осигура дека ќе се изгради грешка толеранција и грешка checking во вашите секојдневни навики, работниците може да го суспендира и да продолжи и на повеќето неповолно пати. Не заборавајте да проверите дали резултати веќе се поднесени од страна на друг работник.

Следниот пат

Во Дел 3 ќе се создаде нашиот виртуелен машина за обработка и да се воспостави нашите прозорци машини за да стане мрзлив работно време.

Zend Framework: Основи - Прегледајте

Со , сабота 28 Ноември 2009 22:42

Мој работодавачот неодамна плати по една група од нас на програмерите да преземат Zend Framework: Основи разбира, тука јас ќе ги сумирам моите мисли и мислења за курс за другите. За оние кои бараат да заштедите време, тука е мојот заклучок:

За програмери кои не сум имал време да се погледне на Zend Framework овој курс (Zend Framework: Основи) нуди добра целокупната слика на рамка за воведување на вас клучните области и даваат доволно информации со цел да се продолжи. За оние кои имаат поминато време гледајќи во рамка и го следеа една или две вежби на овој курс не нуди многу пошироко.

Позадина

Сум бил PHP инвеститорот за околу 5-6 години, и почна да работи со Рамковниот Zend на некоја компонента основа во текот на последните 6 месеци. Сум развиени и / или е инвеститорот на неколку мали Zend Framework MVC sites. Ќе бидам искрен, не сум имал огромна сума на изложеност на други рамки од кодирање точка на гледање, но имаат поминато неколку часови проучувајќи проектот веб-сајтови и оценување на them. рамка и заедницата околу Zend Framework тоа е доста возбудлив и изгледа како да има огромни можности во својот каде оди.

За курсот

Курсот е дадено над 9 два часа WebEx сесии (со 10-минутна пауза во средината). На време е поминато случува преку збир на слајдови обезбедени од страна на Zend со дискусија во секое време. Можете да ги користите микрофон да разговара со инструктор, но да бидам искрен јас не видов некој користи ништо повеќе од прозорецот за разговор. Во прилог на VMware Ubuntu машина е предвидено дека има пример кодот и проекти постави пробна верзија на Zend Studio. Текот лидер разговори за присутните или преку интегриран VoIP решение, или можете да бирате во користење на еден од многу светски бирате во броеви.

Во текот на материјал се состои од краток преглед на Рамковниот и MVC шема пред да се упати во примерок Книга за гости апликација. Во дискусијата покажа bootstrapping, Zend_Application, ДБ маси, пристап до базата, форми, филтрирање, ACL, проверување, итн, итн суштина ги опфаќа сите теми што би бараат да се добие основните сајт на работи цело време ви дава алатки за да се оди и да се понапредни во рамка (иако ова не износ на 'Видете ја веб-сајтот на поголемиот дел од времето).

Време е даден на кодот некои примери, и да се развие на "Книга за гости и апликација едноставна" вики ". Лично почувствував дека обезбедување на код или секој стан, а потоа бара од нас да се развие она што во суштина беше копија заедно воопшто не се обезбеди добар учење. Јас би преферирал да развијат апликација слични, но не и идентични. на пример апликација со корист да се има водич да се повикуваш. Алтернативно градење на апликации од нула со демонстратор на веројатно ќе доведе до повеќе прашања за тоа зошто и како, давајќи им на подобро разбирање на рамката, по сите вие може да се погледне до специфики по курс.

Последните предавање се состоеше од работа на вики апликација со помош / упатства од инструктор. По текот повратни информации беше земено, беше истакнато неколку пати во текот на курсот што Zend се повратни информации многу сериозно, всушност, очигледно нашата верзија на курсот беше сосема ново. Некои од други програмери во компанијата ќе бидат полагање на курсот наскоро, па ќе биде интересно да се види дали ова се случило.

Текот стил беше неформална, дозволено за повратни информации и соработка помеѓу присутните и инструктор. Текот лидер беше пријателски, пристапен (е-мејл адреси се дели за прашања), и додека неговата презентација од слајдови беше малку несигурен изгледаше целосно надлежните во рамка. Тој беше јасно некој кој користи рамките на редовна основа, а не некој кој се учи да се учат на се разбира, ми се допадна искуството на "реалниот свет" во тој поглед.

Целокупното чувство

На некој начин што го најдов на курсот е губење на време, а во други тоа беше многу поедноставно. Се надевам дека ќе добијам моите причини низ јасно, а можеби и се обезбедат некои храна за размислување или корисни повратни информации (знаејќи мене ова е малку веројатно!).

За мене на овој курс беше насочен кон премногу ниско ниво. Ја помина низ quickstart водич, да се прочита Роб Ален Zend Framework во акција, и работел со рамка малку јас навистина не добие ништо премногу. Јас би се допадна на курсот да ги собереш од крајот на quickstart и развијат дополнителни вештини.

Тоа, рече, се разбира титулата не јасно држава "Zend Framework: Основи", а во тој аспект на курсот постигнува она што го поставува за да се направи. Другите членови на тимот за развој кои не се помина време гледајќи во рамките заврши секоја сесија со ентузијазам и поставуваните прашања кој беше навистина убаво да се види.

Сите не се изгуби, тоа е добро да поминат извесно време се потврдува основните детали од рамката и да се поставам неколку прашања во области каде што јас не бев 100%. Тоа беше исто така, време што го добив да седне секој ден и да размислуваат за кодирање со користење на рамка и идни проекти, нешто што јас не би на бил во можност да се направи поинаку (можете да го замислите вашиот компанија се согласи на тоа? :)). Последно, но не и најмалку важно, исто така, ќе добиете убава сертификат од Zend да се каже дека ги посетуваат часовите (иако преку е-маил).

Zend Framework сертификација

Ова беше едно прашање кое постојано доаѓаат на ум во текот на курсот, дека ќе ме подготви за сертификација? На брз, лесен е решителна бр. Текот инструктор беше сосема јасно на кој со дополнителни совети кои за сертификација навистина треба да биде со користење на рамка за еден ден на ден основа и се чувствуваат многу удобно и уверени во неговото користење и методологии.

Резиме

Со оглед на сè што сум напишал погоре, јас ќе сумирам се што е во две лесни bullet поени:

  • Нови на Zend Framework: Овој курс е точно она што би очекувале, тоа ви дава убав вовед во рамка и добра основа на основите од кои може да се изгради. Курсот се чини да генерира интерес и ентузијазам за рамка меѓу програмери.
  • Користи на Zend Framework: Додека тоа беше убаво да се поткрепи некои од многу основите почувствував време, напор, и средства да ги преземат разбира може на е подобро поминал на друго место. Тоа ќе биде убаво да се see Zend се создаде нов повисоко ниво се разбира да се земе на програмерите да на следното ниво -. Најмалку на стандардот на сертификација и пошироко За што јас би се регистрирате веднаш.

Логирајте се за да ДБ користење на Zend Framework

Со , вторник 14 април 2009 година 21:06

Успеав да се добие сајт и трчање со Zend Framework , сè е убаво да влезете светулка / FirePHP па следниот чекор беше да се логирате на база на податоци. Исто така, сакав да се најавите и некои дополнителни информации со користење на рамка како што се кориснички агент, датум и време, GET и POST променливи. Значи да се прошири во упатството малку тука е она што го направив:

// Set up logging to DB
$db = Zend_Registry ::get('dbAdapters');
$db = $db['general'];

$ ColumnMapping = array ('приоритет' => 'приоритет ",
"Порака" => "порака",
'Datetime' => 'Откажи',
"User_agent '=>' user_agent ',
"Get_vars '=>' get_vars ',
"Post_vars '=>' post_vars ',
"Сајт '=>' сајтот
);

$ WriterDb = new Zend_Log_Writer_Db ($ db, 'error_logging', $ columnMapping);
$ Дрвосечач = new Zend_Log ($ writerDb);

$ Дрвосечач-> setEventItem ('datetime', датум ('Ymd H: i: s'));
$ Дрвосечач-> setEventItem ('user_agent', $ _SERVER ['HTTP_USER_AGENT']);
$ Дрвосечач-> setEventItem ('get_vars, print_r ($ _GET, тоа е вистина));
$ Дрвосечач-> setEventItem ('post_vars, print_r ($ _POST, тоа е вистина));
$ Дрвосечач-> setEventItem ("сајт, сајт);

$ Дрвосечач-> инфо ("Предупредувачка порака");

Каде низата клучеви во $ columnMapping се мојата колумна имиња. "Приоритет" и "порака" да биде разбрана од Zend_Log_Writers но дополнителни полиња се додадени да ми даде некои дополнителни информации.

Очигледно ова се претпоставува дека се работи влезете користење на еден од други писатели прв :)













Панорама Тема страна Themocracy

2 visitors online now
1 guests, 1 bots, 0 members
Max visitors today: 11 at 09:24 am UTC
Овој месец: 18 години во 2012/07/05 04:35 UTC
Оваа година: 69 на 27-02-2012 09:56 часот UTC
All time: 130 at 28-03-2011 10:40 pm UTC