Категория: Вычислительная

Apache с прокси-аутентификация

По Стивен Ллойд Уоткин , в воскресенье 27 марта 2011 12:57 вечера

Это сообщение быстро покажет вам, как настроить прокси с базовой аутентификации с помощью Apache .

В моем случае я хотел бы иметь передачи клиенту торрент немного доступны через Интернет, чтобы я мог проверить на состояние и adminster торрентов (такие как последние Fedora-релиз) по мере необходимости. Передача сама запустит свой ​​веб-клиента на порт 9091 по умолчанию. Вместо того, чтобы беспокоиться открытия дополнительных портов на мой брандмауэр и добавление nessecary правила переадресации порта я решил, что я только что прокси звонков до передачи через Apache использованием mod_proxy .

Продолжить чтение "Apache с прокси-аутентификация" »

Zend Framework: Render Если существует

По Стивен Ллойд Уоткин , в воскресенье 12 декабря 2010 4:19 вечера

Резюме

Это быстрая почта, чтобы обсудить довольно простой помощник вида я создана для оказания Zend Framework стиль просмотра файла, только если она существует. Вообще просьбой оказать код файла, который не существует выдаст исключение. Поэтому я создал оболочку для Zend_View:: Render () метод, который определяется, существует ли файл, и если так делает, иначе просто возвращает пустую строку.
Продолжить чтение 'Zend Framework: Render Если существует "»

Zend Certified Engineer (ZCE) 5,3

По Стивен Ллойд Уоткин , четверг 30 сентября 2010 9:00 вечера

С официальным релизом от Zend Certified Engineer (ZCE) программы для 5,3 Я думал, что я даю свое быстрое впечатление, что я думал о экзамен.

Немного предыстории о себе: я впервые познакомился с PHP около 7 лет назад и работал профессионально в PHP с 2006 года. Сейчас я работаю для захватывающих запуска называется Brightpearl основана в Бристоле, Великобритания , производить интегрированные CRM, бухгалтерские и электронной коммерции программного обеспечения. Я не ранее полученных любым из предыдущих квалификаций ZCE. Я в настоящее время развиваются в серии 5.2.x и действительно не воспользовался ни одним из конкретных особенностей 5,3 (Я жду Zend Framework 2 и доктрина 2) в своих проектах развития.
Продолжить чтение 'Zend Certified Engineer (ZCE) 5,3 "»

Zend Framework на модуль настройки макета - Follow Up

По Стивен Ллойд Уоткин , во вторник 16 февраля 2010 8:48 вечера

Как следовать до моего предыдущего поста на каждый модуль основан настройки макета для Zend Framework , я обновил код требует меньше конфигурации, чем раньше (не то, что он требует более, что несколько строк в конфигурации приложения!).
Продолжить чтение 'Zend Framework на модуль настройки оформления - Follow Up "»

Управление Grid Computing использованием виртуальных сред - Часть 4

По Стивен Ллойд Уоткин , в пятницу 4 декабря 2009 11:59 вечера

Введение

Я работаю в компании, где мы запускаем работу пакетной обработки миллионов записей данных каждый день, и я думал недавно обо всех машинах, которые сидят каждый день ничего не делать в течение нескольких часов. Не было бы хорошо, если мы могли бы использовать эти машины для укрепления вычислительной мощности наших систем? В этот набор статей я буду смотреть на потенциальные выгоды от использования офиса сетки использованием виртуализованных средах.

В части 3 мы создали виртуальную машину обработки и настроить Windows машины, чтобы стать времени простоя работников.

Запуск последней версии кода

Неизбежно после создания рабочих бизнес-логики будет меняться, ошибки будут найдены, быстрее более эффективный код будет производиться в результате чего ваши рабочие сидели обработки данных с использованием старого вонючего кода . Как же мы гарантируем, что мы всегда используем новейшая и самая лучшая версия нашего обработки скриптов?

Есть несколько очень простых способов легко мы могли бы сделать это, трюк, однако, заключается в сокращении вычислительной мощности и сетевой трафик в достижении этой цели. Давайте начнем с самого простого решения и улучшить ее медленно пара итераций.

Первый метод будет просто связаться с нашим сервером управления заданиями (через Samba, FTP, или подобный) и потяните вниз последней версии кода. Не очень эффективен, но он будет делать эту работу. Позволяет улучшить, что несколько, как о создании Rsync скрипт и использование, что каждый раз вместо этого? Кроме то, что о вводе наших последних обработки сценария в подрывной проверить код изначально, а затем просто обновление нашего кода при каждом запуске ( SVN обновление )?

В конце мы могли бы в конечном итоге с Баш скрипт (названный хрон каждые 10 минут), который выглядит так просто, как это:

  #! / BIN / Ш.
 PS если топор | Grep-V GREP | GREP PHP > / Dev / нуль
 то
     Эхо "Работа в настоящее время обработки, с выходом"
 еще
     Эхо "Работа не работает, начните прямо сейчас"
     CD / путь / к / рабочей / копии
     SVN обновление
     PHP yourJobProcessingScript.php
 Fi 

Теперь мы можем быть уверены, что с каждого запуска мы определенно установлена ​​последняя кода. Мы обеспечение этого путем обновления нашей базы кода каждый раз, когда мы выполняем запуска и снижения сетевого трафика только передача файлов различия между нашей сети.

В моей демонстрации установки, я сделал именно так, как выше. Subversion была установлена ​​на моем сервере обработки работа, и я просто вытащил последний код из филиала "рабочий", используя "SVN Update". Я также добавил теги номер версии на мой обработки скрипта, который был возвращен в базе данных как часть возвращать результаты. Таким образом, я видел, что мой код обновляется каждый раз, когда я скопировал мое туловище в т. работник филиала, что я определенно установлена ​​последняя обработка сценария.

Используя последние данные

Если ваша работа обработки делает использование данных источников, то в какой-то момент эти будут обновлены. Если вы называете источников данных на основе очень редко вы собираетесь наводнения сети с трафиком, как только ваши работники начнут исполняться чего все в тупик. Для моего решения я решил, что я бы хотел перевести мои источники данных вокруг с моей виртуальных машин.

Держите вы кони там! Что делать, если мои источники данных огромные? Ну это действительно пример того, как много данных идет речь? Это может быть более экономически эффективным, чтобы установить дополнительный жесткий диск большего в каждой машине, чем на покупку дополнительного сервера обработки. Это вопрос о бюджете, и до бизнеса, чтобы решить. Это может быть, что ваши источники данных настолько велик, что его просто невозможным держать, что объем данных в вашей машины работника. В таком случае, что бы вы сделали? Ну, мы могли смотреть на вызове локальный сервер данных, но это может вызвать проблемы с сетью. В этом случае сетка системы, так как это может стать нереальным включить в вашем офисе. Он также может быть то, что вы можете посмотреть в альтернативных стратегий работает, например, только позвонив работников между 8 вечера и 6 утра каждую ночь, и / или регулирования источника запрашивает данные.

Переходя позволяет сказать, что наши источники данных составляет 100 ГБ данных. Ну да это совсем немного данных для перемещения по сети на обновление. Как бы мы гарантируем, что мы последнюю копию данных в этом случае? Rsync возможность, но лично я думаю, запустив ваш последний источник данных на сервере системы обработки заказа и настройки этой операции как мастер репликации (с приятным долгим журнала бен) может быть путь:

репликации При установке каждого из ваших работников в качестве рабов для работы обновления серверного элемента управления к источникам данных будет сочиться вниз красиво, чтобы ваши работники без огромного увеличения сетевой активности (то есть, если вы выполняете огромную обновления данных, и все ваши рабочие удар в сразу). Это имеет преимущества по сравнению с Rsync в том, что вы не получите долгая пауза перед каждой работе; как обновления базы данных, MySQL демона на вашем рабочем будет постоянно обновлять свои данные, а обработка продолжается.

Это, как мне настроить сервер демонстрации. Чтобы настроить репликацию я последовал руководство по MySQL сайта ( Настройка репликации ) и в течение 20 минут у меня была Начальное работника тиражирование управления работой серверов данных. За каждый дополнительный рабочий настройки репликации и процесс работал каждый раз, когда В. М. был скопирован.

Резюме

В этом разделе статьи мы рассмотрели, как легко и безболезненно это сохранить ваш код обработки до настоящего времени using Rsync или subverion (SVN), чтобы сделать работу и уменьшить сетевой трафик в то же time. Мы также обсудили, как сохранить ваши данные в источнике информации до современных, позволяя его просачивания для каждого из ваших работников. Таким образом, мы области обеспечения того, чтобы мы не отставать от бизнес-логики и информации в нашей системе сетки офиса. Там, очевидно, будет бесчисленные альтернативы выполнения этих задач, но здесь были два простых примера, чтобы показать, как легко решение прибыть.

Следующий раз

В заключительной части этой серии, метко назвал Часть 5 , мы будем обсуждать развертывание этой системы. Я буду суммировать то, что было изучено и что мне удалось создать.

Управление Grid Computing использованием виртуальных сред - Часть 3

По Стивен Ллойд Уоткин , в пятницу 4 декабря 2009 11:37 вечера

Введение

Я работаю в компании, где мы запускаем работу пакетной обработки миллионов записей данных каждый день, и я думал недавно обо всех машинах, которые сидят каждый день ничего не делать в течение нескольких часов. Не было бы хорошо, если мы могли бы использовать эти машины для укрепления вычислительной мощности наших систем? В этот набор статей я буду смотреть на потенциальные выгоды от использования офиса сетки использованием виртуализованных средах.

В части 2 мы рассмотрели работу сервер будет работать, как и рабочие места должны быть настроены для достижения наибольшее количество обработки в то время, чтобы каждая работа обрабатывается в обязательном порядке.

Настройка рабочего - или LIMP сервера

Следующим шагом в процессе является создание виртуальной работников. Для этого я собираюсь использовать установки CentOS использованием VirtualBox. Я собираюсь установить MySQL и PHP на сервере, также известный как LIMP (Li NUX, м ySQL, P HP) Сервера (я, возможно, сделали это имя вверх).

  • Установить VirtualBox на ваши окна машины (по ссылке)
  • Загрузка и установка CentOS (текущая версия 5,3) в рамках созданной виртуальной машины

Там нет смысла мне будет это там, наверное, 1000 'с большой учебники там (ну ладно, вот один: Создание и Managing CentOS виртуальной машине под VirtualBox ). Важно отметить, я думаю, что я назвал мою виртуальную GridMachine машины.

Что касается моего выбора виртуализации клиентов и операционной системы, туда не такое уж большое веских причин для каждого варианта. VirtualBox является то, что я использую на моем домашнем компьютере и при поддержке трех основных операционных систем. Я выбрал CentOS как его хороший стабильный OS и я использую его на свой веб-сервер. Я очень верю в правильные инструменты для работы (хотя я подаю заявление "Использовать быстрый и простой для вас" менталитет здесь), поэтому, если операционная система X работает ваш код быстрее и более эффективно использовать его:)

Важно убедиться, что ваш VM используется DHCP, в противном случае для каждой новой виртуальной машины должны быть настроены отдельно, то, что мы не want.By использованием DHCP мы не должны настроить сетевые настройки индивидуально для рабочего машин, DHCP будет стороны из IP-адресов для вас. Поэтому вы можете скопировать вашу виртуальную машину около офиса, не беспокоясь об установке каждого вверх (это улучшает масштабируемость и снижает работник администрации).

Процесс, который вы должны стремиться к достижению бы получить новые физические машины, установки VirtualBox, и то в значительной степени развернуть виртуальные изображения без многое другое. Это может быть мудрым, чтобы настроить все ваши работники в другой подсети, чтобы можно было по крайней мере узнать, сколько машин работает. Вам также необходимо настроить машины на долгосрочную аренду или неограниченное аренды DHCP.

Как для выполнения заданий на работника

Это интересное направление и Есть несколько научно обоснованных методов для обработки заданий на работника. Здесь я просто обсудить два наиболее очевидных:

  • Постоянно работает сценария: сценарий, будь то скрипт, или скрипт выполняется один раз на работника и работает как часть бесконечного цикла. Я этот метод дисконтированных как один крах сценария и, возможно, ваши работники перестанут работать без какого-то вмешательства.
  • Cron основан выполнения сценария: каждые х минут демон cron стартует звонок на ваш сценарий наладить дело. Без какой-либо проверки это может привести к многим многие копии рабочий скрипт работает.

Мое решение было пойти с хрон который стартует скрипт каждые 10 minutes. мой скрипт выполняет следующие задачи:

  1. Получить список процессов и GREP это для "PHP". Если не найден, то продолжить.
  2. Call работу кода, в моем случае это будет что-то PHP основанных
  3. Работник скрипт завершает свой бег
  4. Готовы идти снова на следующий соответствующий вызов

Мой Баш скрипт выглядит примерно следующим:

  #! / BIN / Ш.
 PS если топор | Grep-V GREP |> GREP PHP / Dev / нуль
 то
     Эхо "Работа в настоящее время обработки, с выходом"
 еще
     Эхо "Работа не работает, начните прямо сейчас"
     PHP yourJobProcessingScript.php
 Fi 

Примечание: эхо почти полностью бессмысленно, но может помочь следующий человек, который приходит вместе, чтобы попытаться изменить их.

На этом настройка работника виртуальной машины, быстро, просто и легко копировать в каждой новой части оборудования, которое получил. 'Ум' сетки система действительно не в визуализируется ОС, ее все делать с код, созданный в процессе работы, работы конфигурации, и в том, чтобы задание выполняется в случае необходимости (например, когда хозяин находится в режиме ожидания ).

Настройка Windows для инициализации рабочих

Первой задачей является разработка команды, необходимые для запуска виртуальной машины из командной строки Windows. Если у Вас установлена ​​VirtualBox в папку по умолчанию, и вы назвали ваш работник GridMachine то команда требует, чтобы загрузить ваш работник:

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

Однако, чтобы запустить сценарий в "обезглавленный" государство нам нужно использовать:

  "C: \ Program Files \ Sun \ VirtualBox \ VBoxHeadless.exe"-startvm GridMachine - VRDP = OFF 

Это приведет к запуску виртуальной машины без графического интерфейса и позволяет ему сохранить состояние изящно. Второй аргумент выключается RDP поэтому он не конфликтует с Windows RDP, или дать вам сообщение о прослушивает порт 3389. Имя виртуальной машины с учетом регистра!

Далее, мы должны установить Windows до стартует наш рабочий В. М. раз машина была простой. Для этого (на Windows XP) вам необходимо перейти Пуск -> Все программы -> Стандартные -> Служебные -> Назначенные задания ", как показано ниже:

запланированных задач

Потом нажмите на "Добавить задание ', а затем перейдите к добавлять пользовательские программы. Перейдите на сценарий VBoxManage и нажмите кнопку ОК. Расписание ваша задача для любого из вариантов (мы изменим это в минуту) и продолжить. После пропуска следующего окна окно попросит вас, кто вы хотите, чтобы выполнить эту задачу, я предлагаю либо "Администратор" или создания новых привилегированных пользователей. Помните, что мы не хотим вмешиваться в стандартной учетной сотрудников на машине в любой момент. Нажмите кнопку Далее и установите флажок Показывать дополнительные опции для этой задачи.

К концу выполнения TextBox добавить 'startvm GridMachine' строка нашего и обеспечения того, чтобы работать только тогда, когда вошли в систему остается данную опцию. Посетите Расписание задания следующего и изменить график опуститься до опцию 'в режиме ожидания, выберите количество времени, вы хотели машина, бездействовать, перед тем как перейти к следующей закладке.

Наконец снимите опцию в котором говорится, остановить задачу, если она работает уже X количество времени, но галочку, чтобы отказаться от задачи, если машина не простаивает.

график

Вот и все, то для установки принимающей окна!

Резюме

В этой части мы создали виртуальную машину в качестве работника, а также способ, в котором мы называем и выполнить наши сценарии обработки заданий (для себя сценарий PHP). Здесь мы рассмотрим, как настроить наши копии Windows для запуска виртуальной машины в режиме обезглавленный, когда компьютер бездействует, и сохранить свое состояние, когда пользователь возобновляет использование машины. Надеюсь, в этот момент вы видите, как это просто для создания такой системы и чешутся, чтобы получить некоторые эксперименты собираетесь сами!

Следующий раз

В части 4 мы будем смотреть на использовании инструментов для обеспечения того, чтобы вы работаете в последней версии кода и данных источников, с тем, что полученные результаты всегда в ногу со актуальный с последними бизнес-информации и логике.

Управление Grid Computing использованием виртуальных сред - Часть 1

По Стивен Ллойд Уоткин , в пятницу 4 декабря 2009 11:23 вечера

Введение

Я работаю в компании, где мы запускаем работу пакетной обработки миллионов записей данных каждый день, и я думал недавно обо всех машинах, которые сидят каждый день ничего не делать в течение нескольких часов. Не было бы хорошо, если мы могли бы использовать эти машины для укрепления вычислительной мощности наших систем? В этот набор статей я буду смотреть на потенциальные выгоды от использования офиса сетки использованием виртуализованных средах.

Как PHP разработчик я собираюсь использовать инструменты, которые я использую каждый день, а именно, Linux, MySQL , PHP, VirtualBox и Subversion (SVN). Однако я надеюсь, что это руководство будет адаптироваться к другим языкам и технологиям так же хорошо.

Решение, которое я обеспечивают будет очень слабо в зависимости от типа обработки, мы должны были бы достичь однако это не может быть правдой через всю статью, как я изменю вещи для простоты, или для получения более интересных сценариев использования.

Эти виртуализованных средах будет работать на Windows-машин, так как это то, что большинство отделений перспективе. Обработки, что служба машины не должны мешать сотрудникам использовать эти машины, должны не требуют технического обслуживания в машину, и быть легко устанавливается на новых машинах, как они станут доступны. Кроме того, новые виртуальные машины не требуют дополнительной настройки, поскольку это значительно снижает масштабируемость и простота, при котором сетка система может быть расширена.

Почему Развертывание Grid Управление вычислительным?

Во-первых вы можете подумать, почему бы не использовать вычислительные ресурсы облака, таких как платформы EC2 Амазонки ? Ну причин может быть несколько, например:

  • Вы не будете поручить некоторым данным в среде облачных вычислений
  • Вы не можете поместить определенные данные в среде облачных вычислений по юридическим причинам (например, данные из страны), потенциально по юридическим причинам, например, NHS записей.
  • Вы хотите сохранить свои процессоры близки и иметь полный контроль над аппаратным слишком
  • У вас нет средств проекта для запуска облака случаях
  • Ваш офис не имеет подключение к Интернету, и поэтому ее нельзя использовать облако ресурсов
  • Вам не нравится дождь, облака предложить дождь, поэтому вы держите подальше

Я уверен, что список можно продолжить, но я думаю, что это достаточно.

Преимущества Grid Computing Office

Ну, позволяет сделать некоторые математики (а в истинном стиле физики позволяет сделать некоторые радикальные предположения). Представьте, у вас есть большой мясистый сервер обработки работает 100 рабочих мест в день. В офисе у вас есть 50 машин, которые простаивают по 16 часов в день, каждая из этих машин составляет 10%, как мощный как ваш крепкий обработки сервер. (Все результаты здесь округляются до недооценивать увеличения производительности).

Так, 1 машина * 10% мощности * 2 / 3 времени = 0,067 т. е. 1 рабочий стол обработки в простой процесс может 6 полный рабочий день.

Если вы сейчас масштабы этого до него занимает 15 простоя настольных компьютеров для обработки как много рабочих мест в день в качестве основного сервера обработки делает.

Так в нашем офисе претендует 50 машин мы могли увеличить наши вычислительные мощности от 1 сервер до 4 полных серверов обработки, или мы могли бы быть обработки 400 рабочих мест в день вместо 100.

Обратите внимание, для каких-либо инвестиций в новое оборудование Ваша компания только что увеличила свой ​​пакет перерабатывающих мощностей в 4 раза! Потенциально вы собираетесь увеличить потребление энергии, но от большинства офисе я был в машинах, как правило, остается на ночь в любом случае, чтобы вы могли видеть это как зеленый инициативы.

Другие преимущества также означает, что инвестиции в новый (или обновленный) обработки серверов может быть отложено, если ваши машины офиса являются достаточными, и что вам улучшить мощность вашей машины офиса вашего офиса сетки становится более мощным автоматически.

Технологии

Что вам нужно? (Или, вернее, что же я использую):

  • Idle офисной техники (в моем случае ноутбук запасных старой Windows XP)
  • VirtualBox (или другого программного обеспечения виртуализации клиентов)
  • Виртуальная машина с PHP, MySQL running работает сократить OS, я звоню эти мои LIMP серверов:)
  • Вакансии для запуска
  • Работа сервера (может быть другой виртуальной машине где-то)

Типичные Вакансии

Типы рабочих мест, что эта система предназначена для работы заключается в следующем:

  • Система получает список данных, на которых мы должны соизмерять и возвращать результаты
  • Включает проверку соответствия / поиск нескольких (довольно статический) источников данных
  • Результаты из источников данных могут потребовать дальнейшей проверки, сливаясь, проверка дополнительных источников данных в ответ на результаты
  • Данные возвращается с соответствующими записями, полностью проверены и обработаны
  • Каждая запись в работу не зависит от остальных

Поэтому в основном мы смотрим на запущенных заданий, которые требуют смесь поиска в базе данных и некоторого числа хруст, довольно типичный сценарий в бизнес-среде.

Grid решения не только выгодно для обработки заданий этого типа. В принципе, любой процесс, который может быть разделена на независимые единицы могут работать параллельно. Смотрите эту Википедии примеры и более подробную информацию: Grid Computing , но пара известных примеров SETI @ Home и BIONC . Есть рамки для выполнения вычислительных сетей, и это также заслуживает изучения.

Что мы достигли?

К концу этих статей я надеюсь показать, что развертывание Office сетки не нужно быть очень дорогим или времени. Я собираюсь обсудить следующие вопросы:

  • Настройка системы управления заданиями, конфигурации задания
  • Создание соответствующей обработки виртуальной машины
  • Как настроить систему на машину Windows
  • Обеспечение вы используете последнюю версию кода и данных
  • Развертывания и тестирования
  • Заглядывая в будущее

Я буду здания (ОК я построил, то написал это) пример приложения для тестирования концепций на локальном компьютере с Windows XP и виртуальная машина моя "GridMachine. Моя работа серверный элемент управления будет моя главная машина, которая работает Fedora 11 .

Это никоим образом не продемонстрировать полностью рабочий надежные системы, ее означало больше демонстрации и обсуждения показывают, что эти вещи могут быть достигнуты в разумно короткие сроки и при небольших затратах. Пожалуйста, не стесняйтесь, присылайте мне любые комментарии, исправления или улучшения, и я сделаю все возможное, чтобы эта статья обновлена ​​до матча.

Следующий раз

В части 2 я начну, глядя на системы управления работой, и изучить, как рабочие места должны быть настроены для достижения наибольшее количество обработки в то время, чтобы каждая работа обрабатывается в обязательном порядке.

Управление Grid Computing использованием виртуальных сред - Часть 2

По Стивен Ллойд Уоткин , в пятницу 4 декабря 2009 11:23 вечера

Введение

Я работаю в компании, где мы запускаем работу пакетной обработки миллионов записей данных каждый день, и я думал недавно обо всех машинах, которые сидят каждый день ничего не делать в течение нескольких часов. Не было бы хорошо, если мы могли бы использовать эти машины для укрепления вычислительной мощности наших систем? В этот набор статей я буду смотреть на потенциальные выгоды от использования офиса сетки использованием виртуализованных средах.

В части 1 я дал обзор системы и технологии, я буду использовать, а также обсуждались некоторые из потенциальных причин, почему вы хотели бы создать офис сетки.

Управление заданиями

Если вы собираетесь быть запущен рабочих мест, то вы будете нуждаться в какой-то способ управлять ими. Ваша задача системы управления (на вашу работу сервера) должен быть очень хорошо продуманы, прежде чем даже пытаться запустить офис сетки. Так во-первых, какие задачи для системы управления заданиями:

  • Раздайте рабочих мест по просьбе работников
  • Скажите, какой тип работников рабочих мест для запуска
  • Трек рабочих мест
  • Убедитесь, что задания выполняются только один раз
  • Обеспечить работу данных для работников, или по крайней мере рассказать им, где можно получить ее

Система также должна быть расширяемой, решение, которое работает сейчас в одном случае может быть увеличена до запуска нескольких видов работ, как бизнес видит стоит в сетке решение. Например, рабочие места могут получить приоритеты, больше чем один тип задания могут существовать (то есть несколько баз код), в конечном итоге вы даже можете запустить несколько различных машин работника, которые оптимизированы для каждого типа задания (хотя это никак отойти от "общего работника "идея). Всегда стараюсь думать о будущем при разработке системы, краткий перспективе может привести к долгосрочным разочарования и увеличение времени развития.

Работа сервера

Мы собираемся нужно где-то контролировать нашу работу с, это должно быть единственной системой в сетку, которая имеет фиксированные локатор ресурса, в том, что адрес IP, имя хоста, адрес (с использованием внутреннего DNS) и т.д. Это происходит потому, работники должны знать, где искать работу, работникам необходимо найти работу системы управления (не система управления заданиями найти работников).

Работу самого сервера в действительности не имеют сложную задачу (в основной или иначе система), он должен хранить список заданий, раздавать рабочие места, получать результаты, а затем сохранять их для последующего использования. Как эти части (например, "руку Джобса) определены может быть очень простой. Позднее мы можем расширить системы включают административный интерфейс для добавления, редактирования, удаления, приостановить работу, но это выходит за эту работу.

Существует никаких оснований, то, что ваша работа сервера не может быть виртуальная машина работает в вашей основной сервер обработки условии, что она не сливает воду слишком много ресурсов из него. Работу сервера однако нуждается в высокой доступности, если она идет вниз в пятницу вечером вы будете терять все выходные обработки, потенциально стоить вам пару недель стоит времени обработки (по сравнению с вашей основной сервер обработки в одиночку) . Вы можете рассмотреть вопрос о создании работу сервера с балансировкой нагрузки среды для обеспечения высокой доступности.

Основная настройка

Основные установки для нашей работы сервера будет состоять из того, что я звоню одному из моих серверов LIMP (то есть Li NUX, м ySql, Р л.с.). Код, выполняемый на Thea работников действительно будет работать, какие работы он может работать, взаимодействуя с работой баз данных системы управления. Позже мы могли бы создать веб-сервис и фактически раздает рабочие места вместо того, работники делать тяжелую работу сами, но сейчас мы будем продолжать использовать принцип KISS (Keep It Simple, Stupid!).

Таким образом, позволяет создать три MySQL таблиц для решения рабочих мест. Это будут рабочие места ``, `jobRecords`, и `jobResults`.

рабочих мест таблицы Здесь я использую SQL Buddy большой небольшой альтернатива PhpMyAdmin только потому, что ее легче установить на CentOS (для других см.: 10 лучших альтернатив PhpMyAdmin )

Эта таблица состоит из 5 простых полей,

  • ID: Уникально определить работу
  • Название: Может быть клиентом ссылку, или любое количество других идентификаторов
  • Статус: Вы должны знать, где работа на, например,
    • 0: Не выполнено
    • 1: Взял
    • 2: Завершен
  • started_by: Кто начал делать эту работу? Это не совсем требуется, но приятно иметь. Я предлагаю отслеживания рабочих по их IP-адреса в сети
  • started_at: Когда работник начать работу? По отслеживания рабочих мест, которые еще не завершены в течение X количество раз, когда мы знаем, что необходимо подобрать работу еще раз и начать обработку другой работник. Рабочие могли остановить обработку / перехода в автономный режим для любого числа причин, сбой питания, сбой, потеря сети и т.д.

Легко, как эта таблица может быть расширена за счет нескольких дополнительных полей, чтобы для отслеживания статистики, колонки закончить вовремя, чтобы увидеть, как долго работу взяли, счетчик чтобы узнать, сколько рабочих взял работу (очевидно, это необходимо, как правило, 1), приоритет задания, список можно продолжать и продолжать. В более сложных сценариев работы можно было бы указать, сколько памяти работник будет необходим доступ к (и, следовательно, использовать только подходящие рабочие), или даже какой тип работника не требуется.

Давайте добавим несколько рабочих мест, например:

Например рабочих мест

В следующей таблице снова довольно прост для понимания, это наши записи работу. Они связаны с основной таблицы рабочих мест колонки `jobs_id`. Сделать из этой таблицы очень многое зависит от данных, которые необходимо предоставить, чтобы ваши работники, позволяет сделать очень простой пример, когда у нас есть четыре столбца:

  • ID: идентификатор записи
  • Название: имя лица
  • адрес: адрес лица
  • jobs_id: идентификатор задания, что эта запись связана с

Третий и финальный стол состоит из таблицы результатов, он так же составляют, как наши записи таблицы, а с добавлением некоторых столбцов может быть частью таблицы записей:

  • job_record_id: Ссылка результат работы таблицы
  • Результат: результат данных

... И это все, что нужно для управления заданиями! (Хотя на самом базовом уровне) В моем случае я указал на другой стол, где мои данные, чтобы процесс был расположен, но это может так же легко было файла, параметры для запуска моделирования кода, то имя его.

Выбор работы

Как указывалось ранее, рабочие будут делать свою работу управления для нас сейчас, так что все, что нужно, чтобы действительно сделать, это найти работу, которая должна обработки и получения информации. Как бы мы это сделать? Ну забрать наши критерии выбора работы и искать работу, в SQL я сделал следующие:

  1. Возьмите любую работу, которые не помечены как полное, но от нашего работника и сбросить их (заменить __ME__ с идентификатором, простой бы IP-адрес):
      UPDATE `работу` SET `статус` = 0, где `статус` = 1 и `started_by` = __ME__; 
  2. Используя наши критерии выбора работы, выбрать работу и сказать системе управления, что этот работник имеет дело с ним:
      UPDATE `работу` SET `статус` = 1, "started_by` = __ME__, `started_at` = NOW () WHERE `статус` = 0 или
     (`Статус` = 1 и `started_at`> DATE_SUB (NOW (), интервале х ЧАС)) ORDER BY `ID` ASC; 

    По захвата рабочих мест, которые не вернулись результаты в X количество времени мы гарантируем, что все работы выполняются в случае сбоя или работник будет самоволку.

  3. Следующая захватить рабочих мест подробности следуют сами записи:
      SELECT * FROM `работу` WHERE `started_by` = __ME__ LIMIT 1;
     SELECT * FROM `job_records` WHERE `ID` = __JOBID__; 

После завершения работы мы вставляем наш результат записи и Марк работу в качестве полной. Помните, как работа может приостановить / возобновить в любое время обеспечить определенную устойчивость в сценарии. Вполне вероятно, что задача приостанавливает на половине пути обновления системы управления заданиями, поэтому проверка количества записей в работу и число результатов сохранены в системе управления работой будет мудрым шагом.

Кроме того, в то время как это показано, как рабочие места могут быть выбраны и управляется с SQL-запроса кадр, который вы должны действительно быть абстрагирования вашей работе управления, так что если вы решили перейти к использованию веб-сервисов, файл на основе системы, XML , или любой другой количество систем не повлияет на код выше.

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

Следующий аспект для рассмотрения является размер рабочих мест и конфигурации. Играя с работы конфигурации мы можем ударить превосходный баланс между скоростью, процесс репликации, и надежность. Возьмите пару оператора А сценариев:

  1. Вакансии принимать по 1 день каждый для запуска: Это означает, что работникам необходимо 15 дней для обработки каждого задания (помните 10% мощности для 2/3rds времени). Это, очевидно, не мудрым конфигурации, ваша работа размер слишком большой! Было бы принять по крайней мере вдвое больше времени, чтобы получить работу должны обрабатываться начальной работника пойти самоволку (время, чтобы забрать, что он не вернулся результате переработки плюс время). В идеале нужно иметь хотя бы один полный рабочий легко очищаются от конца каждого периода длительного простоя, таким образом вы сохранить рабочие места тиканье более, а в худшем случае работа займет два дня, чтобы процесс должен сначала пойти пропавшими без вести.
  2. Вакансии принимать от 1 минуты до запуска: Это означает, что ваши работники займет около 15 минут для выполнения каждого задания. Хотя это может поначалу показаться идеальной, вы получаете дополнительную обработку работы во время обеда, кофе-брейки, совещаний и т.д. этот сценарий ставит нагрузку на другие области системы и вводит свои собственные проблемы. Например, в первую очередь Настройте / время обработки соотношение будет идти прямо, поэтому потери эффективности системы. Ваша сеть будет постоянно потоковой работы с информацией различных рабочих расстраивает сотрудников, которые дон своей повседневной работе. Вы также собирается уделять больше нагрузку на сервер обработки заданий, как он должен блюдо из много-много маленьких кусочков работы на регулярной основе. Наконец, в этой ситуации, если ваша работа сервер недоступен вы собираетесь создать огромный назад журнал незавершенных работ в то время как больше рабочих мест может продолжения обработки в блаженном неведении, что работа сервера, испытывающим трудности.

В действительности не будет одного идеального конфигурация для установки сетки, многое зависит от имеющихся ресурсов, типа работы, работы время обработки требований, возможность работы в сети, и так далее. Однако некоторые руководящие принципы будут:

  • Размер работу так, чтобы каждый работник может получить по крайней мере через 3-4 рабочих мест в течение 15 часов (длинная вероятность простоя период времени)
  • Играть с работой размер так, что время установки становится довольно незначительным по сравнению с обработкой время (имея в виду выше точки).
  • Если работа не завершается в два раза больше времени (может быть меньше) вы ожидаете, что для завершения его считать, что его ушли самоволку и начать его обработку с другим работником. Это означает, что вы, возможно, придется ждать до трех раз нормальная длина работу для завершения (возможно, и дольше, если последующая работа не удается). Вы можете сократить это время, но будьте осторожны, чтобы не уменьшить его слишком много, как вы можете начать дублирования задач обработки на регулярной основе.
  • Вакансии должны быть независимы от внешних требований как можно больше. Работу сервера, например, должны быть только связались в начале и конце каждого задания.
  • Не насытить вашей сети, это будет иметь два отрицательных эффектов, ваш дневной персонал найти использованием сети разочарование и проблемы могут возникнуть с подключением по тайм-ауту, что проблема будет только ухудшаться, как вы масштабирования сетки.
  • Обеспечить рабочие места могут работать на ваших работников. Если работы слишком большой объем памяти или дискового пространства интенсивной работы начнутся прерывания и только, что вы заметите это капля в число рабочих мест обработаны без реальных причин.

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

При подаче результаты работы важно, чтобы проверить, что результаты не были представлены на другого работника, особенно если текущий рабочий был заморожен в течение некоторого времени.

Когда результаты были обеспечить, чтобы количество результатов матчей количество записей в работу.

Как указывалось ранее, и не может быть более подчеркнул, строить отказоустойчивости в поиска работы и результаты представления. Работники могут (и скорее всего) переходят в режим ожидания в самый неподходящий раз, и это должно быть удовлетворяются за. Также еще раз абстрагирования от ваших результатов представления поможет удовлетворить будущие изменения в системе управления заданиями гораздо легче иметь дело с.

Резюме

В этом section мы смотрели на то, что сервер управления заданиями нужно сделать и как получить очень простой установкой системы. Мы обсудили, как получить работу с системой управления и как лучше настроить работу, чтобы получить большинство наших вашей системы сетки офиса. Чтобы закончить, параграф или два по отправке результаты обратно на сервер управления заданиями была представлена.

  • Сервер управления работой управляет рабочих мест и гарантирует, что все работы будут завершены единиц
  • По абстрагирования вашей работы выберите / результаты представления мы можем изменить технологию управления сервером без особых проблемы
  • Настройка рабочих мест для обеспечения того, чтобы они работают быстро и эффективно, не подвергая слишком много давления на сетевую инфраструктуру, и без дублирования задач обработки на регулярной основе.
  • Убедитесь, что вы строите отказоустойчивости и ошибки checking в вашей процедуры, работники могут приостановить и возобновить и самый неудобный раз. Не забудьте проверить, если результаты уже были представлены другим работником.

Следующий раз

В части 3 мы создадим наш виртуальный машина для обработки и создания нашего окна машины, чтобы стать времени простоя работников.

Управление Grid Computing использованием виртуальных сред - Часть 5

По Стивен Ллойд Уоткин , в пятницу 4 декабря 2009 11:03 вечера

Введение

Я работаю в компании, где мы запускаем работу пакетной обработки миллионов записей данных каждый день, и я думал недавно обо всех машинах, которые сидят каждый день ничего не делать в течение нескольких часов. Не было бы хорошо, если мы могли бы использовать эти машины для укрепления вычислительной мощности наших систем? В этот набор статей я буду смотреть на потенциальные выгоды от использования офиса сетки использованием виртуализованных средах.

В части 4 мы смотрели на использовании инструментов для обеспечения того, чтобы мы установлена ​​последняя версия кода и данных источников, с тем, что полученные результаты всегда в ногу со актуальный с последними бизнес-информации и логике.

Перед развертыванием

Перед развертыванием подвесной системе, если есть одна вещь, вы делаете, и одно только это тест текущую систему! Неважно, что вы рассказать коллегам о том, как много дополнительной работы вашей системы будет делать, если у вас есть номера, чтобы поддержать это ваши гарантии ничего. Таким образом,

  • сколько записей вы можете процесса в настоящее время? В день? В час?
  • Сколько времени обычно занимает повернуть работу?
  • Как много больше возможностей у вас есть?

Там также дополнительные вопросы:

  • Если ваш сервер обработки (или один из ваших серверов обработки) идет вниз как это повлияет на ваши возможности, вы будете калека?
  • Какие преимущества вы надеетесь / ожидаете получить от подвесной системе?
  • Ваши машины офис может работать рабочие места?
  • Ваши (или вы можете быть преобразованы рабочих мест) для работы в этом стиле работает?

Последняя крупная точка интересно провести время на каких-либо серьезных изменений, как это. Обновление обработки кода для работы с использованием новой методологии, тест снова. Возможно настроить сервер обработки для запуска виртуальной машины, после всех ваших обработки сервером будет просто еще один рабочий (только очень мощный относительно). Разрешить нового процесса по урегулированию.

Развертывания

Мое предложение было бы поп в офисе один уик-энд выполнять все установки и настройки. Делайте это как раз перед двухнедельный отпуск и отпуск, чтобы другие бедняга иметь дело с последствиями ... может и нет ...

Развертывание системы, как это должно быть медленным. Несмотря на его сравнительно прост в установке этой системы будет влиять на всю инфраструктуру офиса (а цифровой). Во-первых, раскатать на пару машин в то время, мониторинг сетевого трафика, как работник выполняет хостов в день, в день основе. Возможно, вам придется изменить вашу работу конфигурации в ответ на ваши выводы.

После того как система поселился с нескольких машин (скажем 10% всех офисных машин, т. 5) держать мониторинг сетевого трафика и машине performance. Следующий тест еще раз, теперь вы должны обрабатывать 33% больше рабочих мест, чем ваш первый показателей. Проверьте это так, или что вы по крайней мере в этом приблизительные. Если нет, исследовать, что происходит, прежде чем двигаться дальше. Повторите этот цикл, пока вы с радостью все офисной техники работает без убийства отдельных производительность машины или шлифовальных сети в тупик.

Во все времена держать бенчмаркинга, даже после всех развертываний сделаны. Проверьте, как новые обновления кода влияет на скорость вашей системы, проверьте все работники отчетности и обработки заданий. Медленно (очень медленно) прирост вашей конфигурации задания, чтобы получить лучшие из ваших работников и сети.

Стоп!

Что делать, если вы хотите остановить рабочих из работающих на некоторое время? Они все там работает, регенерирующим, и изо всех сил пытаются обрабатывать данные, как голодные насекомые. Ответ может показаться очевидным, но его стоит добавлять только в случае его внимания. Просто измените сценарий обработки с выходом (0) или умереть () или некоторые другие заявления, чтобы убить вашего задания обработки. Важная причина, почему мы всегда стараемся, чтобы обновиться до последней обработки сценария до того, беги!

Демонстрация системы

Для того, чтобы написать это множество коротких статей, которые я создал очень маленький сетки для демонстрации технологий и методик. Я прочитал много статей, учебные пособия и использовать различные инструменты для настройки и мониторинга, что происходит. Ни в коем случае я вышел и насыщенным весь офис с движением и, ни у меня не было доступа к регулярным ПК сотрудников, чтобы увидеть, как хозяин выполнение которых повлияли.

Мой демонстрации системы была очень скромной действительно. Я использовала свой регулярный рабочий стол настроен как сервер управления заданиями. На этом я был установлен MySQL сервер установлен настроен как мастер в репликации, PHP , А и SVN связаны через Apache (для доступа через рабочий VM).

Затем я создал CentOS машину работника на VirtualBox на 6-летний ноутбук Windows XP. Я установки запланированных задач, как указано после копирования VM на машину и отпустить.

Виртуальная машина была создана с PHP, подрывной деятельности, и MySQL. Я проверил ветку "рабочий" от моей работы управления серверами и хранилищем убедитесь, что оно может быть обновлен с помощью "SVN Update". Затем я установки MySQL в качестве раба и проверить, что данные репликации с MySQL на сервере управления заданиями до работника VM. После всего этого я могу настроить скрипт Bash и хрон.

Мой сценарий обработки в основном пошли по линии этого (очень простые вещи):

  • Читайте в поле имени
  • Подсчитывали количество подобных имен в таблицу из источника данных состоявшемся В.М.
  • Подсчитывали количество имен, как и выше, но расщепления названию по пространства (например, имя, среднего, фамилия)
  • Повторные этот процесс в 1000 раз

Каждое задание заняло примерно 20 минут, чтобы запустить. В один момент я открыл несколько копий работника ВМ на ноутбук Windows и смотрел рабочих мест проверяется с каждым из работников адреса IP. На этом этапе я также подтвердил, что репликации автоматически перезапущен.

Оставив ноутбук на холостой ход в результате работник начинает процесс работы с сервером управления заданиями. При возобновлении использования ноутбука была задержка около 30-60 секунд, это изрядное количество времени и персонала необходимо будет знать, что их машина может остановиться на некоторое время, возвращаясь к машине. Новые машины не могут иметь паузу так долго. Благо объем обработки выполняются эти машины на холостом ходу периодов будет больше, что перевешивает сотрудников дожидаясь короткий период (скажем 1 минута), прибыв на своих машинах утром (я часто ждать дольше, что это для Windows Defender обновление происходит), если они были поставлены в известность об этом (полезное время, чтобы захватить утренний кофе!).

В целом, я уверен, что я показал технологий, которые могут быть использованы для создания такой системы. Я показал, что такая система работает на (очень) малых масштабах и с еще несколько экспериментов может быть расширен использовать ресурсы машины офиса. Если я не дойдете до точки, для этого я был бы очень интересно знать / видеть, когда кто-то другой.

Выводы / Оценка

Следующим очевидным шагом было бы реально получить реальный пример и начать развертывание системы, такие как это в офисе и посмотреть, что происходит. Запрашиваемая бизнеса к совершению этого без следа пылающий компании доказать, технологии и эффективности, может быть немного трудно. Grid / Распределенные вычисления очень популярна некоторых кругах и имеет некоторые большие приложения (BIONC, SETI @ Home, Folding @ Home и т.д.). Я, однако, не найти в меньших масштабах и простой системы, как это в мои поиски, которые могли бы быть развернута в офисе.

Я создал в основном свободной системы с помощью основном с открытым исходным кодом и средства, имеющиеся практически в любом офисе. Технологии в основном были продемонстрированы и показать, для выполнения работы и, как ожидалось. Надеюсь, у меня есть показать, что с не так много работы и очень простой установки можно развернуть вычислительные офисе подвесной системе, что является мощным, дешевые, А и масштабируемой все в то же время.

Как только система и работает почти нет конца на сумму настройки и улучшения, которые вы можете сделать. Например статистики / бенчмаркинга могут быть легко добавлены показаны стоит такой системе каждый день. Новые машины могут быть добавлены быстро и легко, как и когда они приходят с модернизации существующего оборудования укрепления вашей вычислительной мощности.

Я надеюсь, вам понравилось читать эту серию статей и дал вам пищу для размышлений о запуске системы офиса сетки. Решение, представленное здесь, не обязательно будут работать во всех ситуациях, но должны быть адаптированы, чтобы позволить Вам, чтобы получить данные обработки делается с помощью собственного решения.

Пожалуйста, не стесняйтесь, присылайте мне любые комментарии, исправления или улучшения, и я сделаю все возможное, чтобы эта статья обновлена ​​до матча.

Zend Framework: Основы - Обзор

По Стивен Ллойд Уоткин , в субботу 28 ноября 2009 10:42 вечера

Мой работодатель недавно заплатил за группой из нас разработчикам использовать Zend Framework: Основы Конечно, здесь я буду суммировать мои мысли и мнения на курс для других. Для тех, кто хочет сэкономить время, вот мое резюме:

Для разработчиков, которые не успели посмотреть на Zend Framework этот курс (Zend Framework: Основы) предлагает хорошее общее представление о рамках познакомить вас с ключевых областях и предоставление достаточной информации для того, чтобы продолжить. Для тех, кто потратил время на поиск в рамках и последовали за одним или двумя учебники этот курс не предлагает много за его пределами.

Фон

Я PHP разработчик около 5-6 лет, и начали работать с Zend Framework на основе компонентов в течение последних 6 месяцев. Я разработал и / или был разработчиком несколько маленьких Zend Framework MVC sites. я, честно говоря, у меня не было огромное количество воздействия с другими рамками от кодирования точки зрения, но провел несколько часы, исследуя проекта веб-сайтов и оценки them. рамки и сообщества окружающих Zend Framework это очень интересно и там, кажется, огромные возможности в том, где его собираются.

О курсе

Конечно поставляется более 9 двухчасовой сессии WebEx (с 10-минутным перерывом в середине). Времени тратится проходит набор слайдов, предоставляемый Zend с обсуждением в любое время. Вы можете использовать микрофон, чтобы поговорить с преподавателем, но, честно говоря я не видел кто-нибудь использовать что-нибудь более окне чата. Кроме того машина VMWare Ubuntu это при условии, что есть пример кода и проектов создан пробную версию Zend Studio. Конечно лидер говорит с чел либо более интегрированного решения VoIP, или вы можете набрать в использовании одной из многих во всем мире набрать в цифрах.

В ходе материал состоит из краткого обзора Рамочной и шаблон MVC, прежде чем отправиться в приложение гостевая книга образца. Дискуссия показала загрузку, Zend_Application, Db таблиц, доступа к базе данных, форм, Фильтрация, ACL, Пользователи, и т.д., и т.д. В основном, охватывающих все темы, которые вы бы требовать, чтобы получить основной сайт до работать все время, давая вам инструменты для пойти и получить более продвинутые в рамках (хотя это количество на "Смотрите сайт" большую часть времени).

Время задается в коде до несколько примеров, а также разработать "Гостевая книга" и применение простой "вики". Лично я чувствовал, что предоставление кода или каждого приложения, а затем просят нас, чтобы развивать то, что было существенно копию вместе не реально обеспечить хороший опыт. Я бы предпочел, чтобы разработать приложение, аналогичное, но не идентичны. для примера приложения с выгода от наличия Руководстве для обозначения. Кроме здания приложения с нуля, с демонстратора бы, возможно привело к больше вопросов о том, почему и как, что дает более глубокое понимание рамках, в конце концов вы можете посмотреть особенности после окончания курса.

Последней лекции состояла из рабочих на вики приложения с помощью / руководством инструктора. После курса обратной связи было принято, было подчеркнуто несколько раз через курс, который Zend принимает обратную связь очень серьезно, на самом деле по-видимому наша версия курса была совершенно новая. Некоторые из других разработчиков в компании будет принимать конечно скоро так будет интересно посмотреть, если это произошло.

Конечно стиль был неофициальный, разрешенных к обратной связи и сотрудничества между участниками и инструктором. Руководитель курса был дружелюбен, доступным (адреса электронной почты были распределены на вопросы), и пока его презентацию слайдов было немного неуверенно, казалось полностью компетентным в рамках. Он был явно кто использовал рамках на регулярной основе, а не кто-то учил учить Конечно, я любил опыт "реального мира" в этом отношении.

Общее ощущение

В некотором смысле я обнаружил, конечно пустая трата времени, а в других это было очень удобно. Надеюсь, я получу мои доводы по четко, и, возможно, обеспечит определенную пищу для размышлений или полезную обратную связь (зная меня это вряд ли!).

Для меня этот курс был направлен на слишком низком уровне. Пройдя через Руководство по быстрому старту, читал Роб Аллен Zend Framework в действии, и работал с рамках немногое, что я действительно не получить ничего слишком много. Я бы, конечно понравилось, чтобы забрать с конца быстрый старт и развитие дополнительных навыков.

Тем не менее, название курса делает четко "Zend Framework: Основы" и в этом аспекте курс достигает что он излагает делать. Другие члены команды разработчиков, которые не потратили время на поиски в рамках каждой сессии закончил с энтузиазмом и спросил вопросы, которые было очень приятно видеть.

Все было не потеряли, это было хорошо провести время подтверждающие основные детали рамки и получить задать пару вопросов в областях, где я не был на 100%. Это было также время, что я должен сидеть каждый день, и думать о кодировании с использованием рамок и будущих проектов, то я бы не смог поступить иначе (вы можете себе представить Вашу компанию согласившись, что:)). Последнее, но не менее вы также получаете красивый сертификат от Zend сказать, что вы приняли участие в курсе (хотя и по электронной почте).

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

Это был один вопрос, что приходили на ум во время курса, будет ли это подготовить меня к сертификации? Быстро, легко это решительное "нет. Конечно инструктор был совсем понятно, на что при дополнительных советов, что для сертификации вам действительно надо использовать рамки на повседневной основе, и чувствую себя очень комфортно и уверенно в его использовании и методологий.

Резюме

Учитывая все, что я уже писал выше, я буду суммировать все, что в два простых маркерами:

  • Впервые на Zend Framework: Этот курс делает именно то, что вы ожидаете, это дает вам хороший введение в основы и хорошую подготовку по основам, из которых можно построить. Конечно, кажется, вызвать интерес и энтузиазм среди рамках разработчиков.
  • Используется Zend Framework: В то время это было приятно, чтобы укрепить некоторые из самых основ, я чувствовал, времени, усилий и средств, чтобы взять курс мог, было лучше потратить в другом месте. Это будет приятно СЭЭУ Zend создать новый, более высокий уровень курса принять разработчиков на новый уровень - по крайней мере, стандарт сертификации и за его пределами сразу. Для этого я бы зарегистрироваться.












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

13 посетителей сейчас
11 гостей, 2 ботов, 0 пользователей
Макс посетителей сегодня: 26 в 12:46 AM UTC
В этом месяце: 26 в 07-05-2011 12:35 утра UTC
В этом году: 130 в 28-03-2011 10:40 вечера UTC
За все время: 130 в 28-03-2011 10:40 вечера UTC