Как стать автором
Обновить
0
Richard_Ferlow @Richard_Ferlowread⁠-⁠only

Пользователь

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

Оптимизация для начинающих, или о пользе профилирования

Время на прочтение5 мин
Количество просмотров17K
Попалась мне задача написать на PHP оптимальный алгоритм вставки нового значения в упорядоченный массив. Причем аргументировано доказать, что именно этот алгоритм лучший. Для этого предлагалось написать три варианта и выбрать из них лучший. Конечно же я знаю, что лучший метод поиска — бинарный, но раз сказали доказать, что он лучший, так и быть, напишу еще два. С таким настроем и уверенностью в будущем результате я и принялся кодить.

Что из этого получилось приглашаю начинающих программистов почитать, а опытных обсудить.
Читать дальше →
Всего голосов 31: ↑19 и ↓12+7
Комментарии43

Оптимизируем VPS за 5$ (512MB RAM / 1 CPU) так, что сайт на wordpress выдерживает нагрузку в 42,735,587 хитов в день

Время на прочтение9 мин
Количество просмотров96K
Когда вы приобретаете сервер VPS с 256MB или 512MB оперативной памяти на борту и лишь часть мощности процессора, то использовать для таких сервисов как MySQL/PHP/Apache настройки по умолчанию является очень плохой идеей. В настоящее время у меня запущено 3 сайта на самом дешевом тарифном плане с 512MB RAM/1 CPU. Не уверен полностью, но посещаемость составляет порядка 5-10 тысяч посетителей в день. Далее я хочу поделиться инструкцией как оптимизировать LAMP используя всего лишь 512 MB и при этом не уходя в swap. Обычно при такой настройки используется 256 – 378Mb памяти и все работает довольно быстро.

Определяем доступную память и активность swap.

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

$ free -m

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

$ ps -eo pmem,pcpu,rss,vsize,args | sort -k 1 -r | less


Настраиваем LAMP сервер для потребления малого количества оперативной памяти. Останавливаем, отключаем ненужные сервисы

Первый и очевидный вопрос, который необходимо задать — это «какие сервисы мне не нужны в использовании?». Недавно, я обнаружил очень удобную утилиту для управления сервисами. Она называется "sysv-rc-conf" и управляет сервисами при помощи псевдографики и флажками. Выгдялит вот так:



Здесь представлен список сервисов, которые я изменил.

  • Postfix. Этот сервис позволяет отправлять и получать почтовые email сообщения для домена. Я использую для этих целей Google Apps для отправки почты и mailchimp для новостных подписчиков. Таким образом я остановил и отключил этот сервис.
  • Bind9. Он нужен для управления DNS записями Вашего домена. Его можно отключить, так как все DNS записи хранятся у хостера.
  • SSHD. Имеются и другие реализации, которые используют гораздо меньше памяти, но они не поддерживают sftp, поэтому данный сервис я оставил без изменений.


Не запускайте X-сервер, выключите все ненужные сервисы и настройте Apache, MySQL, PHP только с базовой необходимой функциональностью.
Читать дальше →
Всего голосов 131: ↑81 и ↓50+31
Комментарии85

Затухание текста средствами CSS

Время на прочтение2 мин
Количество просмотров31K
Иногда бывает необходимость при верстке сайта вывести на экран только часть текста. Чтобы пользователю было понятно, что далее следует продолжение можно, например, поставить троеточие или ссылку «читать далее». Но есть весьма красивый способ сделать так, чтобы текст постепенно затухал.
Читать дальше →
Всего голосов 47: ↑12 и ↓35-23
Комментарии32

Как работает безопасный прием платежей в интернет-магазине

Время на прочтение5 мин
Количество просмотров18K
Предоставляемая информация верна для любой платежной системы. В том числе для систем DSS PCI, простого эквайринга (прием платежей банковскими картами), виртуальных платежных систем (яндекс.деньги, вебмани, робокасса и др).

Обсуждение статьи «Скомпрометированы транзакции плательщиков RBK Money» показало критичную безграмотность некоторых комментирующих. Обычно свет знаний у невежества вызывает страх и раздражение, что интересно отследить по комментариям. Я попытался дать разъяснения там в обсуждениях, за что и поплатился.

Как программировать безопасный прием платежей? Поделюсь опытом, расскажу и покажу. Для нуждающихся ссылки на прувы (доказательства) приведены в конце статьи.
Читать дальше →
Всего голосов 19: ↑15 и ↓4+11
Комментарии7

Textolite — система управления статическим сайтом

Время на прочтение2 мин
Количество просмотров41K
В последнее время в сети все чаще стали появляться обычные статические сайты, что не может не радовать. Неповоротливость некоторых популярных CMS только растет, при этом довольно часто CMS вообще не нужна. Статические сайты удобны со всех сторон, в сравнении с динамическими одни только преимущества. Такие сайты удобно разрабатывать, удобно использовать, приятно посещать, но неудобно обновлять. Решением этой проблемы может стать система Textolite, о которой я хотел бы рассказать подробнее.
Читать дальше →
Всего голосов 35: ↑22 и ↓13+9
Комментарии38

Уникальные предметы из истории космонавтики будут проданы на аукционе

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

С помощью этого контроллера осуществлялась посадка лунного модуля Аполло-15. Старт — 10 тысяч долларов, лот «в хорошем состоянии».

История космонавтики насчитывает уже много десятилетий, а разные проекты/экспедиции порождают много исторических «космо-артефактов». Недавно на Хабре писали об одном таком: камере, побывавшей на Луне, и вернувшейся на Землю.

Теперь на одном из аукционов будет выставлено множество уникальных исторических объектов, ставших, в прямом смысле слова, частью истории космонавтики. Аукцион стартует 15 мая, и завершится 22 мая.

Среди лотов: управляющая консоль на два терминала из программы Apollo, золотая фольга командного модуля Apollo 13 Odyssey, управляющий ручной контроллер, использовавшийся для прилунения в Apollo 15, полетный комбинезон космонавта Александра Волкова, спасательный костюм/скафандр «Сокол» и многое другое.

Есть и такие редкие лоты, как статья одного из братьев Райт с его личной подписью, кусочек обшивки «Гинденбурга».

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

Франкенпад: история явления

Время на прочтение7 мин
Количество просмотров46K
Сегодня жертвой темой моей статьи будет не какой-то конкретный экспонат из моей коллекции или просто один интересный компьютер. В этот раз я расскажу о довольно нестандартном явлении среди поклонников марки ThinkPad, которое вряд ли возникло бы среди адептов другой марки. Причин тому, наверное, несколько —
  1. дружное и любознательное сообщество пользователей этих компьютеров
  2. сравнительно долгий выпуск линеек, основанных на одном дизайне, но с разной начинкой
  3. удобный для небольших модификаций конструктив
  4. эта причина не самая радужная — иногда в новых моделях терялась Killer Feature модели предыдущей


Долгое время пользователи пользовались возможностью сохранить удобное им устройство, обновив (как правило не кардинально, но заметно) его «начинку». За начало я бы принял примерно 1995-1996 года, но об этом чуть ниже. Название же было дано позже — в 2004 году первый раз слово FrankenPad (от фамилии создателя монстра из частей несколько людей «Франкенштейн» и названия ноутбука) было употреблено на форуме сообщества пользователей (forum.thinkpads.com) по отношению к нестандартному апгрейду ноутбука модели 770. Но только в 2011 этот эпитет начал получать распространение. В основном, это слово касалось обновления моделей серии Т60 до Т61, но часто употреблялась и по отношению к пересадке материнских плат в линейках Т4х/R5x.
Прочитать полностью
Всего голосов 25: ↑25 и ↓0+25
Комментарии24

Вместо обзора IBM ThinkPad 755CD — заметки реставратора

Время на прочтение5 мин
Количество просмотров34K
Я хотел сегодня рассказать вам, уважаемые читатели, об очередной необычной и интересной железяке. Но не расскажу… вместо этого я расскажу о том, как эти старые, редкие и необычные железяки помогают сломать голову и, опционально, руки.
Здесь будет занудство и жалобы на трудную жизнь. Точно хотите прочитать? А еще картинок мало!
Всего голосов 23: ↑23 и ↓0+23
Комментарии51

FAQ по программированию под Android от новичка, и для новичков

Время на прочтение16 мин
Количество просмотров158K
Предисловие к FAQ.

Программирование является моим хобби уже давно (правда на других языках и платформах), но до андроида руки дотянулись совсем недавно. Прошло несколько этапов, прежде чем я добрался до написания программ.
Сначала была пара месяцев посвященных Java, на сайте с «Сгибателем».
После, долгие попытки подружится с Eclipse, закончившиеся побегом на Android Studio.
На данный момент выпущено 7 программ и две находятся в разработке.
Данная подборка возникла как попытка структурирования и оптимизации полученной в процессе информации.
Заранее извиняюсь за возможно некорректную терминологию – так как практикую обучение через создание, и в теоретической части есть пробелы.

Надеюсь, что приведенные примеры окажутся полезными.
Читать дальше →
Всего голосов 114: ↑98 и ↓16+82
Комментарии23

У контроллера Steam уберут тачскрин, и изменят конфигурацию кнопок

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

Вот так, скорее всего, будет выглядеть обновленный контроллер Steam

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

Читать дальше →
Всего голосов 29: ↑24 и ↓5+19
Комментарии36

Роботы-автомобили от BMW показали свои возможности на CES-2014

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


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

Читать дальше →
Всего голосов 41: ↑38 и ↓3+35
Комментарии64

10 интересных и бесплатных мобильных приложений для работы

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


UPD: Этот пост добавили в избранное в 2 раза больше людей, чем мой пост, который набрал 86 голосов ЗА, и при этом его минусуют. Уважаемые голосующие, будьте более объективны в своих оценках т.к. цель постов именно быть полезными для читателей.

Читать дальше →
Всего голосов 42: ↑17 и ↓25-8
Комментарии25

На здоровье! Носимые устройства в спорте и медицине

Время на прочтение3 мин
Количество просмотров68K
Среди технологических трендов на 2014 год выделяют, кроме умных часов и прочего, увеличение использование носимых устройств в спорте, слежении за здоровьем и медицине. Эти устройства помогают считать сожжённые калории и заставляют хозяина двигать пятой точкой в направлении лучшей жизни, сообщают врачу о повышении сахара и проблемах с давлением и обладают другими полезными функциями.

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

Если вам есть, чем дополнить публикацию, пишите об этом в комментарии и личные сообщения — буду премного благодарен!

image

image image image

Читать дальше →
Всего голосов 45: ↑36 и ↓9+27
Комментарии53

Переезд на работу в Данию

Время на прочтение11 мин
Количество просмотров132K
(Продолжение серии рассказов про Данию)

В данной статье я изложу свою историю устройства на работу, получения визы и переезда в Данию. История во многом субъективная, но не это ли делает такие рассказы интересными?

О себе: мне 31 год, я из Севастополя (да, на Хабре земляков всё больше), окончил СевНТУ. У меня красавица-жена и семилетний сын. Занимаюсь образовательным проектом. До переезда в Данию мы 6 лет жили в Киеве.

Причины переезда


Мы не «поравалитики». В целом, нам отлично жилось вна Украине. Конечно, мы понимали, что кругом многим не сладко. Так или иначе, сбежать из страны, прихватив трактор, не тянуло.

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

Доводы хорошие, но меня убедили совсем другие вещи:
Читать дальше →
Всего голосов 188: ↑171 и ↓17+154
Комментарии186

Что нужно знать о трудовых правах каждому работнику

Время на прочтение9 мин
Количество просмотров243K
После опубликования статьи «Борьба за свои права…» мне написало много айтишников, что, если честно, стало приятной неожиданностью. Но, помимо вдохновляющих слов поддержки и советов, хабраюзеры также делились своими похожими ситуациями, в которых нарушались их трудовые права. Ситуации самые разные: от неуплаты заработной платы до неоформления в штате фирмы. Но все они были схожи в одном: они случались и зачастую заканчивались плачевно из-за низкой юридической грамотности работников в вопросах трудовых прав. Вот лишь один пример такой ситуации:

Andrey: у меня была точно такая же ситуация с банкротством конторы, сейчас я уже вижу, где поступил неправильно. Нас так же кормили «завтраками», или, как мы их называли, «микроплатежами», когда срок переносится на неделю, потом ещё на неделю. В итоге сказали, что банкротят. Также предложили написать заявление на отпуск без содержания на 3 месяца. Это основное условие получения текущей зп. Только нам выплачивали не всю зп. Остаток должны были выплатить по договору с головной американской конторой. Какая у меня была ошибка:

1) я написал заявление на увольнение по собственному желанию
2) я написал заявление на отпуск без сохранения зп
3) поверил, что головная контора выплатит долг

Это всё стало понятно после суда. По договору был срок полгода, когда должны выплатить остатки зп. Когда стало понятно, что я ничего не получу, пошли в суд. Суд посчитал недоказанным, что мы фактически работали во время фиктивного отпуска.

image

Поэтому у нас родилась идея* на основе реальных историй трудовых конфликтов собрать советы и рекомендации, как вести себя, на что обращать внимание при ведении трудовой деятельности. Мы планируем сделать серию статей на тему трудовых прав. Первая статья посвящена вопросам устройства и увольнения с работы. В самом обзоре сказано много общеизвестных и очевидных вещей, но, как показывает практика, именно на таких «очевидных» вещах чаще всего и допускаются ошибки при решении трудовых вопросов. Мы надеемся, что эта статья поможет в будущем избежать возможных неприятностей на работе.
Читать дальше →
Всего голосов 98: ↑91 и ↓7+84
Комментарии112

Наглядно о том, почему я не беру кредиты

Время на прочтение4 мин
Количество просмотров234K
Кредит — это когда банк вас грабит и вы ему за это ещё платите.
Пожарный Сидоров бездействовал: банк горел — кредит гасился.



Привет, Хабр!

Многие из вас, наверняка, слышали не раз подобные шутки про кредиты и ипотеку. Некоторые, наверное, не раз пользовались калькуляторами вкладов и кредитов, и оценивали выгодность того или иного способа накопления денег. Я тоже недавно заинтересовался этой темой, и подошёл к этой проблеме математически.
Читать дальше →
Всего голосов 123: ↑77 и ↓46+31
Комментарии283

Почему стоит брать кредиты

Время на прочтение3 мин
Количество просмотров202K
Привет, Хабр!

Вчерашняя моя статья (Наглядно о том, почему я не беру кредиты) вызвала очень сильную реакцию, возможно даже кого-то задела за живое, тогда извиняюсь. Главным образом мне указывали на ошибку, что не учитывается стоимость аренды квартиры, пока Вася копит нужную сумму на вкладе. Что же, дельное замечание, спешу исправить свои ошибки (ведь не ошибается тот, кто ничего не делает, не так ли?).
В конце бонус — онлайн калькулятор с графиками, (преферансом… ну вы поняли).
Читать дальше →
Всего голосов 105: ↑77 и ↓28+49
Комментарии183

Как хотят парковать велосипеды в Японии

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


Как многие знают, в последнее время в Москве начался эксперимент с возможностью взять велосипед напрокат. Стараясь записаться в «велосипедные» столицы мира, может быть любопытно взглянуть на то, как высокотехнологично предлагается организовать парковку велосипедов в Японии — с её сверхответственными гражданами и трепетным отношением к электронике.

Японская компания Giken установила в Токио в парке Kounanhoshi сооружение Eco Cycle, которое издали можно принять за станцию метро, хотя оно на самом деле является сложной роботизированной установкой, задача которой принять велосипед, опустить его под землю, компактно расположить его в хранилище, взять за это плату и отдать по необходимости назад. C точки зрения выгоды, речь идёт не только о сохранности велосипеда от злоумышленников, а и о серьёзной экономии места под велосипеды, которые везде паркуют, проталкивая переднее колесо через специальную решётку, занимая тем самым значительное место.

Лучше всего посмотреть видео под катом (осторожно, присутствуют рекламные кадры, которые в России могут считаться противозаконными):
Узнать подробности
Всего голосов 117: ↑107 и ↓10+97
Комментарии185

Liberator: первый в мире огнестрельный пистолет, полностью отпечатанный на 3D принтере

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


Похоже на то, что те, кто говорит об очередном значительном изменении привычного нам мира с появлением 3D принтеров, правы. Сейчас печатают уже не только обычные пластиковые детали, но и уши, и даже пистолеты. Если вы подумали о том, что речь идет об игрушке, ошибаетесь. Liberator — первый в мире пистолет, все детали которого отпечатаны на 3D принтере. И да, создатели этого оружия вскоре планируют выложить CAD-файлы для принтера, так что любой человек, у которого есть такой принтер, сможет напечатать себе огнестрел. Странно звучит, правда? Но это так.

Читать дальше →
Всего голосов 83: ↑75 и ↓8+67
Комментарии177

100 ватт по USB или как работает Power Delivery

Время на прочтение9 мин
Количество просмотров168K
Почитав вот этот пост и сопутствующую ему дискуссию, я решил попробовать внести ясность в то, что такое USB Power Delivery и как это работает на самом деле. К сожалению у меня сложилось впечатление, что большинство участников дискуссии воспринимают 100 ватт по USB слишком буквально, и не до конца понимают что за этим стоит на уровне схематики и протоколов.

Итак, кратко – основные пункты:

  • USB PD определяет 5 стандартных профилей по электропитанию – до 5V@2А, до 12V@1.5А, до 12V@3А, до 12-20V@3А и до 12-20V@4.75-5А
  • Кабели и порты для Power Delivery сертифицируются и имеют дополнительные пины в разьеме
  • Тип кабеля и его соответствие профилю определяются автоматически через дополнительные пины и определение типа USB коннектора (микро, стандарт, A, B и т.д.)
  • Обычные USB кабели (не Power Delivery) сертифицируются только по первому профилю до 5V@2A
  • При подключении распределяются роли, между тем кто дает ток (Source / Источник ) и кто потребляет (Sink / Приемник)
  • Источник и Приемник обмениваются сообщениями по специальному протоколу, который работает параллельно традиционному USB
  • В качестве физического носителя протокол использует пару – VBus / GND. Именно поэтому Power Delivery не зависит от основного USB протокола и обратно совместим с USB 2.0 и 3.0
  • Используя сообщения, источник и приемник могут в любой момент времени меняться ролями, изменять силу тока и/или напряжение, уходить в спячку или просыпаться, и т.д.
  • По желанию устройства могут поддерживать управление PD через традиционные USB запросы, дескрипторы и т.д.

Под катом — детали.
Читать дальше →
Всего голосов 77: ↑76 и ↓1+75
Комментарии36

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность