Search
Write a publication
Pull to refresh
0
0
digger @digger

Могу копать

Send message

Как заставить сайт летать и сэкономить десятки часов системного администрирования

Reading time10 min
Views109K
Скорость работы вашего сайта, его стабильность и отказоустойчивость всегда зависят от трех составляющих:

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

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

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

В итоге сайт может «хромать» из-за проблем и «узких» мест в любой из составляющих: CMS, хостинг, разработка. Клиент в нюансы не вникает и остается не удовлетворен проектом в целом. Его негатив переносится на всех: «Тормозной хостинг! Ужасная система! Разработчики ничего не умеют!»

Такая картина нас, конечно, никогда не устраивала. И мы решили, что надо что-то делать…
Читать дальше →

Простая автоматизация: программируемые реле Easy

Reading time16 min
Views162K
Здравствуйте, уважаемое сообщество!
На Хабре уже много сказано слов о различных устройствах автоматизации, начиная от простых Arduino, заканчивая промышленными многопроцессорными системами. Я же хочу закрасить очередное белое пятно на карте хабро-автоматики статьей о промежуточных устройствах — программируемых реле, на примере микропроцессорных устройств Easy производства корпорации Eaton (Moeller).
Прошло уже достаточно много времени с моего первого знакомства с данным типом устройств, но по-прежнему, эти «электронные малыши» остаются незаменимыми помощниками для реализации широкого спектра инженерных и бытовых задач.


Читать дальше →

flotr2 — графики и диаграммы на HTML5

Reading time1 min
Views36K
flotr2 — это библиотека с открытым кодом для построения HTML5 графиков и диаграмм. Flotr2 — так как стала ответвлением от Flotr, но уже без привязки к Prototype JS и с множеством усовершенствований.


Читать дальше →

MySQL в NGINX: использование блокирующих библиотек в неблокирующем сервере

Reading time7 min
Views8.6K
Как известно, при разработке высоконагруженных серверов часто применяется событийная модель работы с сокетами. Ключевым компонентом системы при этом является epoll (во FreeBSD и Windows есть свои решения, но остановимся на Линуксе). Функция epoll_wait, будучи единственным блокирующим вызовом, возвращает нам информацию обо всех сетевых событиях, которые нас интересуют. Подобным образом, конечно, работает и всем известный сервер NGINX.

Событийная модель программирования делает код весьма своеобразным, как будто выворачивает его наизнанку. Но эта проблема не так страшна. Есть другая проблема — использование в событийно-ориентированном коде существующих библиотек, изначально не предназначенных для него. Если подобная библиотека делает блокирующие вызовы (например, connect, recv и т.д.), вся событийная модель может потерять смысл т.к. окончания одного такого вызова будут ждать все остальные клиенты, что совершенно неприемлемо, если вы пишете серьезный продукт.
Читать дальше →

Советы интернет-магазинам

Reading time5 min
Views4.2K
К концу 2011 года объем рынка электронной коммерции в России оценивался в 240 миллиардов рублей, по прогнозам аналитиков темпы роста будут увеличиваться и достигнут 30% в текущем 2012 году. Данная динамика позволяет говорить о постоянно растущей потребности в увеличении количества и качества товаров и услуг, предлагаемых в Интернет. Как не остаться «за бортом» и извлечь выгоду из сложившейся ситуации? Ответ прост – создать свои интернет-магазин.

Как и что предложить пользователям Интернет? По данным за 2011 год увеличение спроса наблюдается в сегментах: одежда и обувь (13% от общего количества покупок онлайн), видео — и аудиопродукция (12%), а также бронирование билетов в туристические поездки (11%) и на развлекательные мероприятия (10%). Самая многочисленная целевая аудитория — это мужчины от 25 до 40 лет. Причём, мужчины, по данным опроса PwC, на 24% больше доверяют оплате через Интернет, чем женщины, которые предпочитают наличный расчет курьеру. Самой популярной формой оплаты онлайн-покупок остается оплата наличными при получении (60% отпрошенных отметили это вариант, как один из приоритетных методов оплаты). Также активно используются электронные деньги (50%). Рост популярности оплаты с помощью банковских карт вырос за год почти в 2 раза, и 32% респондентов отметили данный способ в числе наиболее популярных. Чем руководствуются покупатели при выборе того или иного интернет-магазина? 58% опрошенных заявили, что при выборе решающим критерием послужила цена, а для 44% — удобные условия доставки.

Товары куплены и находятся на складе, договор с курьерской службой заключен, теперь стоит подумать о том, как наиболее эффективно принимать оплату. Можно ограничиться получением денег от своих покупателей наличными при доставке товара. Метод достаточно прост, но существует несколько «подводных камней». Во-первых, по законодательству РФ продавец обязан предоставлять кассовый чек в день совершения покупки, что ведет к необходимости наличия портативного кассового аппарата у курьера. Это бывает накладно и неудобно. Если курьер не имеет кассового аппарата, то могут возникнуть сложности в случае отказа от части товаров или всего заказа. Во-вторых, высоки риски, связанные с человеческим фактором и оплатой фальшивыми купюрами. В-третьих, когда все расчеты происходят наличными, появляются дополнительные затраты на её обслуживание.

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

На данный момент в России более 10 банков предлагают услуги интернет-эквайринга – сервиса, позволяющего подключить оплату банковскими картами на сайте. Самыми популярными электронными кошельками, объем транзакций по которым составляет 90% от всех операций, совершенных по средствам электронной наличности, являются: Яндекс.Деньги, QIWI кошелек, WebMoney и Деньги@Mail.ru.

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

Чем руководствоваться при выборе партнера? Во-первых, история компании и опыт. Международный сервис и незапятнанность репутации- вот, на что стоит обратить внимание. Компания PayU, являясь лидером рынка электронной коммерции в Восточной Европе, вот уже более 6 лет предлагает высококачественные услуги интернет-процессинга платежей по всему миру.

Во-вторых, наличие у компании-интегратора клиентов, так называемых «высоко рисковых бизнесов». Практически все банки с хорошей репутацией и историей не готовы обслуживать, скажем, игорный бизнес. PayU сотрудничает с крупнейшими мировыми банками и не оказывает услуги процессинга компаниям, предлагающим товары, запрещенные к продаже в РФ.
Читать дальше →

Axis — интернет магазин своими руками

Reading time2 min
Views17K
Добрый день Хабр,

Хочу познакомить пользователей Хабра с проектом над которым работает наша небольшая команда. Axis — это CMS для создания интернет магазинов под открытой лицензией.

Репозиторий на GitHub: http://github.com/axis/axiscommerce
Сайт: http://axiscommerce.com

image

Читать дальше →

Создание анимированных tooltips'ов с помощью CSS3

Reading time3 min
Views8.3K
Статьи про создание tooltips'ов уже не раз поднимались на хабре [1,2] в виду большой популярности этого элемента. Сегодня вы узнаете еще один способ как создать простые, анимированные подсказки с помощью псевдо-элементов before и after, а так же свойства transitions.

image


В качестве примера были сделаны иконки социальных сервисов, при наведении на которые показываются названия этих сервисов.

Читать дальше ...

GTD – Большой плюс

Reading time2 min
Views1.5K


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

Опишем проблему

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

3D кнопки с помощью CSS3

Reading time6 min
Views44K
Здравствуй, дорогой хабрадруг! Сегодня мы научимся создавать объемные кнопки CSS3! Они основаны на популярной PSD фриби от Orman Clark для его веб-сайта Premium Pixels. Мы постараемся создать копию этих кнопок с помощью CSS с минимальным количеством кода HTML.

Preview

Читать дальше →

Thinstation — «худеем» с тонкими клиентами до версии 2.5

Reading time7 min
Views82K
image
Доброго времени суток, Хабр!

Относительно недавно в свет вышла новая версия популярного тонкого клиента Thinstation, а именно 2.5. И, конечно же, несет в себе как новые плюшки, так и новые грабли плюс минимум документации по новой версии.

В этой статье (а она расчитана на новичков, особенно для тех, кто слабо знаком с Linux) я опишу как быстро собрать тонкого клиента и сделать его использование достаточно безопасным. Под хабракатом использование смарт-карт, RDP-клиент фирмы 2X и хэппи-энд. Добро пожаловать!

Читать дальше →

API карт от 2ГИС: рецензия

Reading time10 min
Views12K
Недавно 2ГИС порадовал всех нас выспуском версии 1.0 собственного картографического JS API. API карт отечественного производства — штука редкая; Mail.ru и Rambler, например, так и не сподобились, хоть и обещали (пруф раз, пруф два). Посмотрим, что получилось у новосибирцев.

Знакомимся



Не будем откладывать в долгий ящик, открываем раздел "Быстрый старт" и копируем предложенный код. It works! Правда, заголовок показывает кракозябрами — оно, правда, и не удивительно, поскольку тэга с указанием charset-а нет. Ну да ладно, мелочи жизни. Смотрим на код.

Читать дальше →

HTML KickStart — еще один способ быстро создать интерфейс своего веб-приложения

Reading time1 min
Views27K
Не один раз в комментариях замечал что народ негодует по поводу того, что веб-разработчики стали злоупотреблять использованием Bootstrap от Twitter. Признаюсь, я и сам успел закончить несколько небольших веб-приложений с использованием этого набора скриптов и стилей. Я не против использования Bootstrap от Twitter, я против злоупотребления этим когда есть столько хороших альтернатив. Я почти каждый день натыкаюсь на интерфейсы, построенные на Twitter Bootstrap, и это начинает напрягать. Последней каплей для поиска альтернативы стало изменение интерфейса биллинг панели моего хостера на шаблон Bootstrap. В этой записи я хотел бы немного рассказать про одну из альтернатив — HTML KickStart.
Читать дальше →

Новая версия MotivateClock. Мы сделали то, о чем Вы просили!

Reading time2 min
Views7.2K
image

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

Ровно три месяца назад, 27 сентября, мы объявили Хабрасообществу о старте нашего проекта. Больше всего комментариев и пожеланий тогда мы услышали о необходимости реализации посайтового учета времени проведенного в различных браузерах.
Читать дальше →

Грамотная настройка сервера отправки почты для скриптов PHP, настройка функции mail()

Reading time8 min
Views276K
В этом топике вы узнаете, как грамотно настроить, сервер исходящей почты и в частности функцию mail() в PHP. Сам являюсь жутким педантом. Люблю, что бы везде было все на своих местах, не терплю халтуры. Увидев один раз полную чушь в заголовках письма со своего сервера я разобрался с этим кардинально и безоговорочно. Под грамотной настройкой я подразумеваю такую, которая удовлетворяет потребности спам фильтров крупных почтовых систем, и просто выглядело красиво и осмысленно.

Как известно протокол SMTP не подразумевает никаких средств защиты от спама и аутентификации пользователя, поэтому крупными и не очень компаниями были придуманы «фиксы» безопасности протокола.
Если вы устанавливаете выделенный сервер с доменом размещенным на нем, очень рекомендуется выполнить данные настройки, что бы все было как надо.

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

Название заголовка выбрал именно такое, так как вначале своего пути я искал что-то вроде этого. Настраивать будем postfix, php, dns (ptr, spf), и другое.

Эта статья будет интересная людям, настраивающим выделеные сервера, но не менее интересна для обычных программистов.
К слову данную инструкцию я использую для своих проектов. Системы автоматизированного получения приглашений и получения виз в страны Шенгена: https://goingrus.com/ru, весь софт крутится на виртуальной машине.

Подробности под катом
Читать дальше →

Simpliste: всего одна неделя

Reading time2 min
Views1.5K

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

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

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

Итак, правила были объявлены и неделя прошла в работе.
Читать дальше →

Float'омания: разъяснение как работает css свойство float

Reading time2 min
Views149K

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

Чёртова дюжина советов начинающим верстальщикам. Часть первая

Reading time6 min
Views32K
Доброго времени суток!

Введение


Я являюсь фрилансером. Раньше я не особо задумывался над тем, как и что делают верстальщики. Я делал серверную часть, а мой друг верстал и набивал контент. Совсем недавно мне захотелось попробовать «что и как». Пару дней назад мне на глаза попался материал, который мне очень понравился. Он наглядно обЪяснял, что и как нужно писать. К сожалению, сылку дать не могу, так как я не запаомнил, где располагался сей мануал, но… Казалось бы, можно это и запомнить, но я пошёл ещё одним путём — законспектировал это дело. Собственно, добро пожаловать в мою записку.
Читать дальше →

Лайтпак: Прокачан и открыт

Reading time1 min
Views22K
Прошло около 3х месяцев с тех пор, как хабрачеловек @brunql опубликовал в этом блоге описание ambilight-подсветки для ноутбука. А сегодня мы готовы представить вам полностью переработанную, теперь банановую™ версию этого опенсорс-устройства:


Читать дальше →

Cut the Rope на HTML5

Reading time1 min
Views18K
На конференции CES в Лас-Вегас была анонсирована HTML5-версия Cut the Rope!

image

в игре доступно 25 уровней, в том числе специальный раздел только для пользователей Internet Explorer 9, который обеспечивает аппаратное ускорение графики HTML5.

Не забудьте заглянуть в раздел “Behind the Scenes”!

Наслаждайтесь игрой и ждите новых уровней на http://cuttherope.ie!

Progressive enhancement + mobile first = responsive web design

Reading time7 min
Views26K
futubra

5 месяцев, 26 дней и сколько-то часов прошло с момента коммита в git первых строчек кода Футубры. Столько времени у нас ушло, чтобы собрать команду, провести ряд исследований, проработать концепцию и реализовать проект, который сделает жизнь людей интереснее.

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

Первый пост хочется посвятить самому важному – базовым принципам, на которых строится Футубра:
  • progressive enhancement
  • mobile first
  • responsive web design

Так что же такое Футубра и как мы применяем эти принципы?

Information

Rating
Does not participate
Location
Россия
Registered
Activity