Многие помнят то чувство, когда компания расширяется до тех размеров, когда рабочих групп недостаточно, и поднимается первый домен Active Directory: «О, уж теперь-то все будет как следует!» Ан нет, домен потихонечку разрастается, создаются новые учетки, блокируются старые, добавляются, удаляются компьютеры, девушки выходят замуж, меняют фамилии и, в конце концов, база данных службы каталогов выглядит, как полный швах. В этом топике мы наладим связь между базой Active Directory и кадровой системой предприятия, а также создадим механизм для поддержания данных сотрудников в AD в актуальном состоянии.
Виктор @vitjok
User
PHP: Расширенный текучий интерфейс
5 min
3.7KУверен, что многим из вас, кто читает этот текст, знакомо понятие Текучий интерфейс. И даже если вы про него не слышали, уверен, что вы им пользовались и не раз. Это действительно удобно. Так о чем же идет речь?
Вот небольшой пример. Мы можем в строчку, последовательно, производить действия. Этот же принцип лежит в основе популярной библиотеки jQuery. Да что тут говорить, все современные фреймворки изобилуют подобными конструкциями. А вот что если использовать подобный механизм для построения всего сайта?
<?php
class Images {
public $width;
public $height;
public function SetWidth($value) {
$this->width = $with;
return $this;
}
public function SetHeight($value) {
$this->height = $value;
return $this;
}
}
$images = new Images();
$images->SetWidth(100)->SetHeight(100);
?>
Вот небольшой пример. Мы можем в строчку, последовательно, производить действия. Этот же принцип лежит в основе популярной библиотеки jQuery. Да что тут говорить, все современные фреймворки изобилуют подобными конструкциями. А вот что если использовать подобный механизм для построения всего сайта?
+23
Особенности подготовки инсталляции приложения для автоматической (unattended) установки в Windows OS
7 min
16KПеред системным администратором порой стоит задача установить или обновить приложения на множестве ПК. И часто проблема состоит не в выборе средства доставки и автоматической установки — их есть множество на любой вкус, от встроенных в Windows OS (Active Directory) до полноценных Configuration Management систем, таких как MS SCCM, Enteo NetInstall, LanDesk Management Suite, HP Application Deployment Manager, IBM Tivoli Provisioning Manager, ManageEngine Desktop Central и много других…
+34
Ajenti 0.6
1 min
5.5KМы снова приветствуем вас на волнах Changelog FM, и сегодня у нас в студии — Ajenti 0.6.0.
+196
Стратегия оптимизации веб-проекта с использованием MySQL
5 min
8.2KВведение
В жизни любого крупного веб-проекта, особенно на PHP, но, в целом, это касается любого серверного ЯП, пригодного для веб-разработки, обычно наступает понимание, что «так дальше жить нельзя», и что настал момент, когда нужно провести оптимизацию работы сайта, чтобы он перестал тормозить (хотя бы на production).
Интересно, что, как правило, даже тяжелые фреймворки (вроде Symfony или RoR) на «медленных» языках, в production-окружении работают достаточно сносно по скорости, а основные «тормоза» вызываются SQL-запросами и неграмотным кешированием (к примеру, инициализация достаточно сложной и большой конфигурации проекта на Symfony занимает около 80 мс, а времена исполнения страницы, при этом, иногда достигают секунды и более).
Если вы смогли определить, что это — ваш случай, и ваш проект на MySQL, то эта статья может вам помочь принять конкретные меры и исправлению ситуации с закреплением результата и предотвращением возникновения откровенных проблем с СУБД впоследствии.
+78
Каркас для web-приложений, построенный на CodeIgniter
9 min
36KНаверняка, многие веб-программисты изучали и, может быть, даже использовали такой замечательный фреймворк как CodeIgniter. Мой выбор пал на него ввиду того, что у него самый низкий порог вхождения, он наиболее прост в изучении, хорошая документация, быстрый и т.д. и т.п. Для простых проектов самое «оно», чтоб попробовать свои силы именно как разработчик. Само собой, для более серьезных проектов лучше использовать более функциональные и навороченные фреймворки.
Далее буду описывать, как я «апгрейдил» CodeIgniter, чтобы использовать этот каркас для разных проектов, т.к. базовый его функционал и примеры из документации, мягко говоря, очень простые, а в жизни всё гораздо сложнее. Итак, начнем-с.
+37
Перевод документации MongoDB
1 min
7.2KБуквально сегодня увидел у себя в Facebook сообщение о том, что команда из 10gen, занимающаяся разработкой, ставшей причиной долгих и упорных споров, MongoDB, набирает добровольцев для перевода актуальной документации к этой БД.
Вот полный список языков, на которые планируется перевод:
Вот полный список языков, на которые планируется перевод:
- Chinese
- French
- German
- Hebrew
- Hungarian
- Indonesian
- Italian
- Japanese
- Korean
- Portuguese
- Russian
- Serbian
- Spanish
- Swedish
- Vietnamese
+31
Ускоряем базу данных веб-сайта
19 min
119KTranslation
Скорость загрузки веб-сайтов всегда была важной темой, но стала еще более актуальной с апреля 2010 года, когда Google стал учитывать её при ранжировании сайтов в поисковой выдаче. Однако, основной уклон, как правило, делался на уменьшении размера файлов, оптимизации параметров сервера, CSS и Javascript.
Также имеет место еще один немаловажный фактор. Это скорость, с которой веб-страницы формируются на сервере. Большинство крупных современных сайтов хранит всю информацию в базах данных и используют различные языки (например, PHP или ASP) для её извлечения, формирования HTML-страницы и отправки её браузеру.
Также имеет место еще один немаловажный фактор. Это скорость, с которой веб-страницы формируются на сервере. Большинство крупных современных сайтов хранит всю информацию в базах данных и используют различные языки (например, PHP или ASP) для её извлечения, формирования HTML-страницы и отправки её браузеру.
+35
Отслеживание заполнения форм с помощью Google Analytics
3 min
23KЭффективность работы коммерческого интернет-проекта зависит от количества заказов, регистраций, отзывов и других элементов обратной связи оставленных посетителями сайта через электронную форму.
Соответственно, форма — уязвимое место приема таких обращений, которое может сократить их число из-за своей неэффективности.
Для оценки эффективности можно использовать различные методы, но сейчас мы остановимся на оценке форм с помощью системы веб-аналитики Google Analytics.
Соответственно, форма — уязвимое место приема таких обращений, которое может сократить их число из-за своей неэффективности.
Для оценки эффективности можно использовать различные методы, но сейчас мы остановимся на оценке форм с помощью системы веб-аналитики Google Analytics.
+32
Применение алгоритмов нечеткого поиска в PHP
7 min
30KВдохновленный топиками о нечетком поиске и фонетических алгоритмах, захотел попытаться реализовать нечто подобное похожее на гугловское «Возможно, вы имели в виду: ...» средствами PHP.
Для исправления опечаток в словах понадобится:
Расстояние Левенштейна (или расстояние Дамерау-Левенштейна — разница будет незначительной) — levenshtein()
Metaphone — metaphone()
Алгоритм Оливера — similar_text()
База русских слов (с падежами, учетом времен и т.д.).
Для исправления опечаток в словах понадобится:
Расстояние Левенштейна (или расстояние Дамерау-Левенштейна — разница будет незначительной) — levenshtein()
Metaphone — metaphone()
Алгоритм Оливера — similar_text()
База русских слов (с падежами, учетом времен и т.д.).
+53
Практические советы тем, кто хочет построить веб-сообщество ч.4
4 min
1.2KВот созрела и 4-ая часть моей статейки с советами стартаперам, основанной на примере развития своего проекта — сообщества автотуристов.
Предыдущие части: Часть 1, Часть 2 и Часть 3
Глава 10. Где же мои рекламодатели?
В 9-ой главе предыдущей части я писал про необходимость составления и рассылки презентации, наглядно показывающей Вашим потенциальным рекламодателям все рекламные возможности Вашего проекта, краткий срез его аудитории и условия сотрудничества. Но главный вопрос я так и оставил не раскрытым: а куда слать-то презентацию и, послав, как понять, что она не покоится в «Спаме» ящика рекламодателя, а, хотя бы, была прочитана.
Предыдущие части: Часть 1, Часть 2 и Часть 3
Глава 10. Где же мои рекламодатели?
В 9-ой главе предыдущей части я писал про необходимость составления и рассылки презентации, наглядно показывающей Вашим потенциальным рекламодателям все рекламные возможности Вашего проекта, краткий срез его аудитории и условия сотрудничества. Но главный вопрос я так и оставил не раскрытым: а куда слать-то презентацию и, послав, как понять, что она не покоится в «Спаме» ящика рекламодателя, а, хотя бы, была прочитана.
+36
Первый опыт работы с Handler Socket & php_handlersocket
4 min
10KНемного вскружилла голову статья Использование MySQL как NoSQL — История о том, как достичь 750,000 запросов в секунду (Перевод моего друга Вадима). Есть и другие материалы по этой теме. И вот дошли руки до экспериментов.
Под PHP разработано три разных клиента:
extension code.google.com/p/php-handlersocket
PEAR openpear.org/package/Net_HandlerSocket
PHP native github.com/tz-lom/HSPHP
Ниже приведены мои впечатления о первых экспериментах.
+40
Масштабирование нагрузки web-приложений
6 min
59KС ростом популярности web-приложения его поддержка неизбежно начинает требовать всё больших и больших ресурсов. Первое время с нагрузкой можно (и, несомненно, нужно) бороться путём оптимизации алгоритмов и/или архитектуры самого приложения. Однако, что делать, если всё, что можно было оптимизировать, уже оптимизировано, а приложение всё равно не справляется с нагрузкой?
+87
Обновление FreeBSD от и до
7 min
89KКак часто бывает, зацепив одну, на первый взгляд, маленькую тему, с желанием быстро все узнать и все настроить, приходится закапываться в дремучие дебри и читать не одну статью и/или мануал. Так и получилось у меня в этот раз. Изначально было желание просто узнать, как обновлять порты (или исходные тексты портов) чтоб при желании, устанавливать не устаревшее ПО, но пришлось закопаться немного по глубже.
Эта статья предназначена только для новичков во FreeBSD, опытные профи тут вообще ни чего нового, думаю, для себя не найдут. По этому, если вы на «ты» с этой системой, можете смело пропускать дальнейший текст.
Информации на эту тему хватает, но из 6-10 заметок и статей я взял, так скажем, лучшие наработки и опыт, и записал их в одну, с ссылками на более полные статьи, так что при желании можно получить более подробную информацию по каждому пункту.
Содержание статьи:
1) Выбор ПО для обновления исходных текстов.
2) Процесс обновления исходных текстов системы и портов.
3) Обновление системы(ядро и мир).
4) Обновление портов при помощи pkg_*, portupgrade, portdowngrade.
5) Заключение
6) Дополнительная литература.
Эта статья предназначена только для новичков во FreeBSD, опытные профи тут вообще ни чего нового, думаю, для себя не найдут. По этому, если вы на «ты» с этой системой, можете смело пропускать дальнейший текст.
Информации на эту тему хватает, но из 6-10 заметок и статей я взял, так скажем, лучшие наработки и опыт, и записал их в одну, с ссылками на более полные статьи, так что при желании можно получить более подробную информацию по каждому пункту.
Содержание статьи:
1) Выбор ПО для обновления исходных текстов.
2) Процесс обновления исходных текстов системы и портов.
3) Обновление системы(ядро и мир).
4) Обновление портов при помощи pkg_*, portupgrade, portdowngrade.
5) Заключение
6) Дополнительная литература.
+35
Установка и настройка: Nginx + php5-fpm
4 min
194KВ данной заметке, будет показано как поставить связку Nginx + php5-fpm (php5.3) на Debian Lenny и настроить безопасную конфигурацию.
+63
Создание упражнений в Packet Tracer для подготовки к сертификации Cisco
5 min
45KКак известно, компания CISCO известна не только своим знатным железом, но и его программным эмулятором Packet Tracer. Эмулятор действительно очень неплохой и позволяет натаскаться работе с крутым оборудованием, не отходя, как говорится, от кассы.
Вдобавок ко всему Packet Tracer может служить отличной платформой для проведения инструкторами различных тестов, экзаменов и т.п. О способе построения экзамена я и хотел бы поговорить.
Продолжение под катом — много картинок.
+33
Видеохостинг своими руками
6 min
66KЭта статья о некоторых технических аспектах реализации бесплатного сервиса для загрузки, хранения и просмотра видео. Будут рассмотрены вопросы настройки серверного программного обеспечения, даны примеры команд для конвертации видео и примеры кода на языке PHP.
+126
Работа с Postgresql: настройка, масштабирование. Дополненное издание
1 min
3.9KПривет всему хабросообществу.
Время не стоит на месте. После публикации моего справочника по Postgresql очень многое успело поменяться, а точнее добавиться в эту отличную СУБД. После выхода PostgreSQL 9 версии я понял, что потребуется добавить информацию о нововведениях для этой версии. Тем более, что 9 версия знаменуется выходом репликации из коробки.
+86
Новая версия DriverPack Solution
3 min
1.9KДорогие коллеги!
Мы рады сообщить о выходе новой версии программы для установки драйверов DriverPack Solution 10.6!
В процессе работы над новой версией мы выделили два направления: первое — улучшение самой программы, второе — развитие Web-сервисов (сайт: drp.su и сервис: devid.drp.su ).
Наша цель – собрать все драйвера в одном месте.
+57
Build Your First PHP for Android Application
5 min
34KTranslation
Операционная система Android повергла рынок сматрфонов в шок :). В отличии от компании Apple, которая предъявляет достаточно строгие требования к разработчикам, которые хотят выставлять свои приложения в iPhone App Store, Google создал платформу Android открытой (в оригинале wide open). В настоящее время вы можете писать приложения PHP. Парни из Irontech создали необходимое, и используя Scripting Layer для Android (SL4A), вы можете создавать на PHP приложения для Android.
+50
Information
- Rating
- Does not participate
- Location
- Латвия
- Date of birth
- Registered
- Activity