Обновить
20
0
Антон Аникин @ColorPrint

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

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

Охота на грызунов под Linux

Время на прочтение4 мин
Количество просмотров17K
Существует масса средств мониторинга операционной системы, но особый смысл имеет задача отловить момент возникновения проблемы и поймать причину высокой нагрузки или источник проблем c производительностью. Я называю это охотой на «грызунов» ресурсов.

Для этого я сочинил для себя несложный скрипт ratcatcher.sh который вы сможете модифицировать под свои системы и задачи.

Принцип работы несложный — скрипт запускается с заданной периодичностью, проверяет уровень Load Average (вы можете использовать другие контрольные параметры) и в случае превышения заданной величины скрипт выполняет заданный набор диагностических команд с созданием отчета который высылается на указанный вами почтовый адрес.
Читать дальше →

Использование smartctl для проверки RAID контроллеров Adaptec под Linux

Время на прочтение4 мин
Количество просмотров59K
Команду «smartctl -d ata -a /dev/sdb» можно использовать для проверки жесткого диска и текущего состояния его соединения с системой. Но как с помощью команд smartctl проверить SAS или SCSI диски, спрятанные за RAID контроллером Adaptec в системах под управлением Linux ОС? Для этого необходимо использовать последовательные синтаксисы проверки SAS или SATA. Как правило — это логические диски для каждого массива физических накопителей в операционной системы. Команду /dev/sgX возможно использовать в качестве перехода через контроллеры ввода/вывода, которые обеспечиваюь прямой доступ к каждому физическому диску, подключенному к RAID контроллеру Adaptec.



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

Spark local mode: обработка больших файлов на обычном ноутбуке

Время на прочтение3 мин
Количество просмотров24K
image
Всем привет.
4 января вышла новая версия Apache Spark 1.6 с bug fix новыми возможностями обработки больших данных. На Хабре написано немало статей по использованию этого инструмента от введения до опыта использования в проектах. Spark работает на большинстве операционных систем и его можно запускать в локальном режиме даже на обычном ноутбуке. Используя простоту настройки Spark в этом случае грех не воспользоваться основными функциям. В этой статье мы посмотрим как на ноутбуке быстро настроить обработку большого файла (больше оперативной памяти компьютера) с помощью обычных SQL-запросов. Это позволит делать запросы даже неподготовленному пользователю. Дополнительное подключение iPython (Jupyter) notebook позволит составлять полноценные отчеты. В статье разобран простой пример обработки файла, другие примеры на Python есть тут.
Читать дальше →

Разработка приложений на Yii2 без опыта — прямой путь в АД

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


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

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

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

Objective-C вопросы на уровень middle/senior

Время на прочтение4 мин
Количество просмотров61K
Что должен знать objc разработчик на уровень middle/senior?
К сожалению, четкой черты на вертикальное развитие нет. Парадокс, но чтобы знать что изучить, нужно знать что ты не знаешь.
Я постарался вспомнить самые интересные вопросы, которые мне задавали самому на различных собеседованиях, а так же расширил их множеством вопросов(тем же уровнем) от себя.
Здесь нет общих вопросов вроде: IoC, design patterns, S.O.L.I.D. и т.п.

ВНИМАНИЕ!!!
Помимо вертикального развития немаловажно и горизонтальное

ВНИМАНИЕ!!! (2)
Не пишите в комментарии ответы на вопросы, это дает возможность людям самостоятельно разобраться.
Однако, если у вас имеются интересные вопросы по теме, я с радостью добавлю их в список.

Конечно, это не заменит живого общения, однако позволит неплохо подготовиться к собеседованиям.


Начинаем


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

Multihome IPv4 в Linux

Время на прочтение4 мин
Количество просмотров28K
Содержимое: как сделать так, чтобы компьютер отвечал в интернете на все свои IP-адреса по всем своим интерфейсам, каждый из которых имеет шлюз по умолчанию. Касается и серверов, и десктопов.

Ключевые слова: policy routing, source based routing

Лирика: Есть достаточно статей про policy routing в Linux. Но они чаще всего разбирают общие, более тонкие и сложные случаи. Я же разберу тривиальный сценарий следующего вида:



Нашему компьютеру (серверу) доступно три интерфейса. На каждом интерфейсе шлюз ему выдал IP (статикой или по dhcp, не важно) и сказал «весь трафик шли мне».

Если мы оставим эту конфигурацию как есть, то будет использоваться принцип «кто последний встал, того и дефолтный шлюз». На картинке выше, если последним поднимется нижний интерфейс (241), то в него будет отправляться весь трафик. Если к нашему серверу придёт запрос на первый интерфейс (188), то ответ на него всё равно пойдёт по нижнему. Если у маршрутизатора/провайдера есть хотя бы минимальная защита от подделки адресов, то ответ просто дропнут, как невалидный (с точки зрения 241.241.241.1 ему прислали из сети 241.241.241.0/24 пакет с src 188.188.188.188, чего, очевидно, быть не должно).

Другими словами, в обычном варианте будет работать только один интерфейс. Чтобы сделать ситуацию хуже, если адреса получены по dhcp, то обновление аренды на других интерфейсах может перезаписать шлюз по умолчанию, что означает, что тот интерфейс, который работал, работать перестанет, а начнёт работать другой интерфейс. Удачной стабильной работы вашему серверу, так сказать.

Решение

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

Взгляд на Императора недугов. Часть первая

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

Praefatio


В современном мире рак является одной из основных причин смерти. По данным ВОЗ в 2012 году от рака умерло 8.2 миллиона людей во всём мире, а количество новых зарегистрированных случаев в этом же году составило примерно 14 миллионов. По количеству смертей рак уступает лишь заболеваниям сердца. Именно поэтому, мне кажется, будет достаточно интересно и полезно попытаться разобраться с данным заболеванием, что мы вместе и попытаемся сделать.
Читать дальше →

Работа с базой данных в Google App Engine/Google Cloud Endpoints на Java: фреймворк Objectify

Время на прочтение10 мин
Количество просмотров12K
В предыдущих статьях («Google Cloud Endpoints на Java: Руководство. ч. 1», «Google Cloud Endpoints на Java: Руководство. ч. 2 (Frontend)», «Google Cloud Endpoints на Java: Руководство. ч. 3») мы разбирали создание API на Google Cloud Endpoints и фронтенда к нему на AngularJS.

Однако руководство по созданию API было бы неполным без работы с базой данных.

В этой статье мы рассмотрим фреймворк Objectify для работы с встроенной в GAE базой данных App Engine Datastore.
Читать дальше →

Графовые базы данных: святой Грааль для разработчиков?

Время на прочтение5 мин
Количество просмотров93K
На Хабре не утихают споры о том, какие базы данных лучше и круче, дискуссии о перспективах SQL и NoSQL. Я не удержался и решил порассуждать о том, где могут быть полезны именно графовые БД.


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

Тюнинг MySQL — thread_cache_size

Время на прочтение1 мин
Количество просмотров59K
Параметр thread_cache_size играет немаловажную роль в производительности нагруженного MySQL-сервера. В некоторых случаях можно увеличить производительность на 30-50%.

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

Установка VNC сервера, и настройка его работы поверх SSH

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

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

В данной статье будет рассмотрен пример установки и настройки VNC server и графической оболочки (GUI) на примере OC Debian 8 jessie.

читать дальше

Памятка начинающего преподавателя, или почему нытикам не стоит работать в ВУЗах

Время на прочтение7 мин
Количество просмотров25K
Любопытно было бы почитать продолжение манифеста Автора «Часть 2. Памятка начинающего веб-разработчика или почему…».

Вставлю свои 5 копеек – ответ на манифест. Это не совсем хвалебная ода, но несколько осветлит профессию преподавателя и успокоит новоиспечённых ассистентов и доцентов которые, наверное, обновили свои резюмешки и накатили корвалола. На данный момент я являюсь ассистентом одного из российских ВУЗов, до этого почти 4 года работы на разных предприятиях, т.е. оцениваю с обеих сторон баррикад.

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

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

Уровень сложностиПростой
Время на прочтение18 мин
Количество просмотров166K

Примечание.Прошло пять лет, как было опубликовано это эссе. Перед его прочтением читателю нужно знать следующее: эссе было написано вскоре после ухода из вуза и ощущается негативным, к тому же в нём много личного. Коллега с другим характером и другим опытом работы, наверное, о том же самом написал бы по-другому. Я с удовольствием продолжаю периодически читать лекции, развивать образовательные программы, учить современным вещам. Но так же я вижу, что за эти пять лет ситуация с преподавательской работой не стала лучше. И мне очень жаль, что я по прежнему не могу сказать молодому выпускнику: иди преподавать в университет. Правда, жаль! О том, почему так, и было написано это эссе. 3 июля 2020.


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


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


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

Мешок слов и сентимент-анализ на R

Время на прочтение5 мин
Количество просмотров24K
Эта статья подготовлена по мотивам (первой части) учебного задания Bag of Words Kaggle, но это не перевод. Оригинальное задание сделано на Python. Я же хотел оценить возможности языка R для обработки текстов на естественном языке и заодно попробовать реализацию Random Forest в обертке R-пакета caret.

Смысл задания – построить «машину», которая будет определенным образом обрабатывать обзоры фильмов на английском языке и определять тональность обзора, относя его к одному из двух классов: негативные/позитивные. В качестве обучающей выборки в задании используется набор данных с двадцатью пятью тысячами ревю из IMDB, размеченных неизвестными добровольцами.
Читать дальше →

Материалы расследования: «200 лет со дня рождения Ады Лавлейс, первого программиста человечества»

Время на прочтение4 мин
Количество просмотров30K
Дата: 10 декабря 2015 года, начальнику отдела №8 от следователя id1033.
Тип запроса: инициация расследования.
Причина: в связи с подозрительной активность юзера id1596704383 в период с 30 июля 2005 по 9 декабря 2015, прошу предоставить необходимые ресурсы по Форме 2 и наделить полномочиями в соответствии с протоколом «Observer-z».
Обоснование: на основе данных, полученных из открытых источников системой аналитики ПОПСИИ-2014 («Можжевельник») были выявлены уникальные сигнатуры (присвоены идентификаторы с sig8876 по sig8951), свидетельствующие об активном сборе и аналитике материалов из сети из разряда «Первоисточник-18». Согласно распоряжению от 20 ноября 2015, докладывать незамедлительно о любой активности в реальности связанной с «Первоисточник-18», уведомляю, что 10 декабря в 16-00 по московскому времени, юзер id1596704383 перешел к активным действиям в реальности.

К запросу прилагаю материалы, перехваченные из черновиков юзера id1596704383 10 декабря 2015 года на публичном ресурсе «Habrahabr».



«Я — дьявол или ангел» (Ада Лавлейс, из письма Чарльзу Бэббиджу 1843)

200 лет со дня рождения Ады Лавлейс, первого программиста человечества

10 декабря 1815 года у поэта Байрона родилась дочка, которая в 1842 году в свои 27 лет написала первую программу для вычислительной машины (паровой) Бэббиджа.

«Суть и предназначение машины изменятся от того, какую информацию мы в нее вложим. Машина сможет писать музыку, рисовать картины и покажет науке такие пути, которые мы никогда и нигде не видели.» Ада Лавлейс

Ada — язык программирования, созданный в 1979—1980 годах в ходе проекта Министерством обороны США с целью разработать единый язык программирования для встроенных систем (то есть систем управления автоматизированными комплексами, функционирующими в реальном времени). Имелись в виду, прежде всего, бортовые системы управления военными объектами (кораблями, самолётами, танками, ракетами, снарядами и т. п.). 10 декабря 1980 года был утверждён стандарт языка.
Читать дальше →

Умные лампочки X-Flash

Время на прочтение4 мин
Количество просмотров18K
Под брендом X-Flash производится 154 модели светодиодных ламп. Среди них есть семь необычных моделей, называемых умными лампами. Я протестировал четыре лампы с цветовой температурой 3000К (остальные три модели имеют цветовую температуру 4000К).



Различные умные лампы X-Flash умеют:

• автоматически включаться при наступлении сумерек;
• менять цветовую температуру 3000/4000K;
• устанавливать один из трёх уровней яркости;
• плавно менять яркость без диммера.

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

Как ботаники заведения автоматизируют

Время на прочтение8 мин
Количество просмотров27K
image

Привет, Хабр. Прошло почти 2 года после моего последнего поста. Очень рад, что он оказался для многих полезным. За эти 2 года мы сделали очень многое. И мне хотелось бы поделиться опытом и своими впечатлениями.

С 20 заведений-клиентов из одной страны мы выросли почти до 4 000 из 12 стран. Наша команда выросла в 5 раз. Открыли офис в Москве и Варшаве. Выпустили приложение, помимо iOs и Web, еще на Android и Windows. Значительно увеличили функционал. Перевели Poster на 5 языков. За последний квартал приняли участие в 3-х международных выставках. Тесно дружим с такими компаниями как Epson, Microsoft, Intel. За нами пристально следят несколько крупных инвесторов. Европейская компания предложила нам поглощение.

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

Светодиодные лампы из магазина Леруа Мерлен

Время на прочтение3 мин
Количество просмотров77K
Неделю назад я рассказал о свтетодиодных лампах из магазина Ашан. Напомню, я купил 48 ламп в Ашане и Леруа, протестировал их и вернул обратно в магазины.

Сегодня расскажу о 26 лампах из Леруа Мерлен.



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

Строим сервисы на базе Nginx и Tarantool

Время на прочтение6 мин
Количество просмотров25K
Вам знакома такая архитектура? Хоровод демонов, пляшущих между web-server, cache и storage.



Какие минусы такой архитектуры можно отметить? Решая задачи в рамках такой архитектуры, мы сталкиваемся с кучей вопросов: какой язык(и?) взять, какой I/O framework выбрать, как синхронизировать cache и storage? Куча инфраструктурных вопросов. А зачем решать инфраструктурные вопросы, когда надо решить задачу? Безусловно, можно сказать, что нам нравятся некие технологии X и Y, и перевести эти минусы в рамки идеологических. Но нельзя отрицать тот факт, что данные располагаются на неком расстоянии от кода (картинка выше), что добавляет latency, что может уменьшить RPS.

Цель данной статьи — рассказать об альтернативе, которая построена на базе Nginx как web-server, bаlancer и Tarantool как App Server, Cache, Storage.
Читать дальше →

Запуск DOS-приложения в Linux

Время на прочтение3 мин
Количество просмотров35K
Необходимость запуска DOS-приложений под Linux возникает нечасто, но случается. Вот как-то и со мной случилось, решил поделиться опытом, может, кому пригодится.

А нужно было запустить кем-то, когда-то написанное приложение для поликлиники, работающее на Foxpro под DOSом, в Linux, т.к. денег на покупку Windows лицензий не нашлось.

Исходные данные:
Suse Linux Enterprise Desktop 10.3 — рабочие станции.
Suse Linux Enterprise Server 10.3, на нем шара на Samba (я же до этого и расшаривал для работы с Windows рабочих станций, т.к. на лицензию для Win-сервака тоже денег не было), имя шары, как ни странно, — SHARE.
Происходило всё 2-3 года назад, поэтому версии SLED и SLES на момент установки были не такие уж и древние.
Читать дальше →

Информация

В рейтинге
6 548-й
Откуда
Волгоград, Волгоградская обл., Россия
Дата рождения
Зарегистрирован
Активность