Как стать автором
Обновить
44
0
Игорь Щербин @ischerbin

*nix админ, увлекающийся программированием

Отправить сообщение

Пример реализации autocomplete с использованием FTS движка PostgreSQL tsearch2

Время на прочтение4 мин
Количество просмотров8.7K

Введение


Когда-то давно я написал для себя ежедневник для ведения дел, заметок и фиксации движения по разным задачам. Сделан он был изначально на связке PHP + Kohana 2 + PostgreSQL. Со временем я переписал все на Yii (первой и тогда единственной версии). Для полнотекстового поиска был задействован встроенный в PostgreSQL движок tsearch2. Много лет я пользовался системой, понемногу ее развивал и пришел к тому, что объем текстов в ней накопился приличный. Поиском приходится пользоваться весьма часто и для повышения его удобства я задумал прикрутить к нему autocomplete из состава пакета JQuery UI.
Читать дальше →
Всего голосов 11: ↑10 и ↓1+9
Комментарии23

Тестовое задание. Проверка вхождения точки в произвольный полигон

Время на прочтение5 мин
Количество просмотров34K


Вводная


Сразу оговорюсь кому может быть интересна данная публикация. Это начинающие Django + JQuery программисты, интересующиеся векторной графикой в браузере с использованием canvas. Или просто люди, получившие подобное задание.
Итак, находясь в постоянном сканировании рынка труда своего региона, наткнулся на весьма интересную вакансию web-разработчика в достаточно известной местной компании. В описании вакансии было сказано, что нужен python+django разработчик. После отправки резюме получил тестовое задание которое гласило:
Читать дальше →
Всего голосов 21: ↑17 и ↓4+13
Комментарии52

REST клиент и сервер на Yii

Время на прочтение12 мин
Количество просмотров35K

Введение


Все, кто использует Yii framework в разработке знают, что в качестве доступа к базам данных чаще всего в нем используется встроенный ORM компонент ActiveRecord. Однако в один прекрасный момент я столкнулся с тем, что необходимо было работать с данными, физически находящимися на нескольких удаленных серверах. Это была разработка системы централизованного управления FTP и Radius пользователями в распределенной сети компании, где я работаю, объединяющей филиалы с центральным офисом.

На самом деле ситуаций, когда может потребоваться работа с данными, расположенными на серверах в разных сетях, может быть множество. Недолгие раздумья привели к решению использовать протокол HTTP и основанный на нем подход REST. Причин было две, первая и главная — научиться разрабатывать как серверную, так и клиентскую части, использующие REST. Вторая — удобство использования HTTP протокола, а в моем случае то, что он открыт на подавляющем большинстве firewall-ов, а также может использовать proxy сервера.

Часть исходников пришлось вставить в тело статьи, потому получилось достаточно объемно.
Читать дальше →
Всего голосов 15: ↑9 и ↓6+3
Комментарии8

Внешние правила доступа в Postfix на примере front-end к GLD

Время на прочтение5 мин
Количество просмотров5.4K
Так получилось, что в организации, где я работаю, в качестве почтового сервера используется Postfix. В связке с ним используются средства для фильтрации спама и вирусов Spamassassin, Amavisd-new и ClamAV. В дополнение ко всему этому реализован greylisting с использованием GLD. Последний прост в настройке «легок» в работе, но из этого вытекает один недостаток — недостаточно гибок. Дабы побороть это я обратил взор на интересную фичу Postfix — Postfix SMTP Access Policy Delegation. Информации на великом и могучем по этой теме мало. Кому интересно как добавить свои проверки до передачи данных к GLD или как реализовать свои «внешние» правила в Postfix с использованием любимых или просто привычных языков и средств — прошу под кат.
Читать дальше →
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

RESTful API для сервера – делаем правильно (Часть 2)

Время на прочтение9 мин
Количество просмотров85K
В первой части статьи я кратко описал принципы RESTful и объяснил каким образом следует проектировать архитектуру вашего сервера так, чтобы можно было легко выпускать новые и прекращать поддержку устаревших версий вашего API. В этой части я кратко расскажу о HATEOAS и Hypermedia, а затем расскажу о роли, которую они могут сыграть при разработке нативных приложений для мобильных устройств. Но главной темой этой статьи будет реализация кэширования (точнее поддержка кэширования на стороне сервера). Целевая аудитория включает разработчиков серверного ПО и, в какой то мере, разработчиков под iOS или под другие мобильные платформы.

Читать дальше →
Всего голосов 27: ↑24 и ↓3+21
Комментарии14

RESTful API для сервера – делаем правильно (Часть 1)

Время на прочтение13 мин
Количество просмотров331K
В 2007-м Стив Джобс представил iPhone, который произвел революцию в высокотехнологичной индустрии и изменил наш подход к работе и ведению бизнеса. Сейчас 2012-й и все больше и больше сайтов предлагают нативные iOS и Android клиенты для своих сервисов. Между тем не все стартапы обладают финансами для разработки приложений в дополнение к основному продукту. Для увеличения популярности своего продукта эти компании предлагают открытые API, которыми могут воспользоваться сторонние разработчики. Пожалуй Twitter был первым в этой сфере и теперь число компаний, последовавших этой стратегии, растет стремительно. Это действительно отличный способ создать привлекательную экосистему вокруг своего продукта.

Читать дальше →
Всего голосов 73: ↑70 и ↓3+67
Комментарии57

Гость из 90-х, ноут Fujitsu Milan

Время на прочтение1 мин
Количество просмотров3.4K
С данным аппаратом меня лично ничего не связывает, он мне достался недавно от родственника, которому посчастливилось в 90-х пожить/поучиться в США. Родственник просто хотел его выбросить и спросил меня, как ближайшего айтишника, а не может ли «это» на что либо еще сгодится.
Я с ностальгией вспомнил времена, когда производители процессоров и чипсетов не делали специальных продуктов для ноутов. Тогда вопросы энергопотребления, компоновки и охлаждения ложились на хрупкие плечи инженеров компаний производителей ноутбуков и каждая модель была в своем роде произведением инженерного искусства.
Всех, кто осмелится пройти под кат предупреждаю — картинки/трафик!!! Также предупреждаю что фотограф я просто никакой.
Читать дальше →
Всего голосов 41: ↑38 и ↓3+35
Комментарии32

Nginx как Reverse Proxy для сайта, использующего SSL

Время на прочтение3 мин
Количество просмотров125K

Введение


Как настроить nginx в качестве frontend к apache и зачем это нужно — написано неоднократно, в том числе и на Хабре. Мой случай немного отличается от классического. Начиналось все как обычно, проект на apache, увеличение количества посетителей и, связанная с ним, недостаточность ресурсов сервера. Но проект использовал SSL для защиты обмена данными с клиентами. С чем я столкнулся и как решил проблемы я расскажу под катом.
Читать дальше →
Всего голосов 16: ↑10 и ↓6+4
Комментарии12

Справочник email адресов компании или репликация данных в нестабильной сети

Время на прочтение12 мин
Количество просмотров3.7K

Введение


Довелось мне работать админом в крупной компании, имеющей более 10-ти филиалов в разных городах, объединенных достаточно нестабильными и медленными каналами. Как и во многих других, основу обмена информацией в компании представляла электронная почта. Следует отметить что на каждом филиале, как и в головной конторе имеется свой почтовый сервер, управление почтовыми аккаунтами производится местным админом. Все почтовые сервера работают под управлением FreeBSD + Postfix + SpamAssassin + amavisd-new + Courier-IMAP.
Задача основная — поддержка актуального справочника email адресов всех пользователей компании для внутреннего использования, второстепенная — список имеющихся email адресов для основного почтового сервера, дабы он проверял есть ли такой адрес в компании перед тем как переслать письмо на нужный филиал.
Каналы нестабильны, частенько «падают», скорость их работы вообще непредсказуема. Кому интересно как была решена задача приглашаю под кат.
Читать дальше →
Всего голосов 5: ↑5 и ↓0+5
Комментарии17

Как подружить Yii (ActiveDataProvider) и Text Search в PostgreSQL

Время на прочтение5 мин
Количество просмотров3.2K

Использование PostgreSQL tsearch2 в проекте на Yii


Любой сайт — это прежде всего тексты. Для того, чтобы тексты было удобно редактировать их часто хранят в БД. При этом появляются дополнительные возможности, такие как удобный поиск по содержимому текстового поля. Старый добрый LIKE хорош, но не всегда. Есть более продвинутые вещи, такие как tsearch2 в PostgreSQL. Как им воспользоваться в Yii Framework я расскажу под катом.
Читать дальше →
Всего голосов 7: ↑5 и ↓2+3
Комментарии3

Информация

В рейтинге
Не участвует
Откуда
Кемерово, Кемеровская обл., Россия
Дата рождения
Зарегистрирован
Активность