Pull to refresh
0
0
Send message

LAppS: Пол миллиона 1KB-WebSocket сообщений в секунду с TLS на одном CPU

Reading time8 min
Views4.6K

Для тех кто не в курсе: LAppS — Lua Application Server, это почти как nginx или apache, но только для WebSocket протокола, вместо HTTP.


HTTP в нём поддерживается только на уровне Upgrade запроса.


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


Самое главное, LAppS по производительности WebSocket стека, превзошёл библиотеку uWebSockets, которая позиционируется как самая быстрая WebSocket имплементация.


Заинтересованных прошу под кат.

Читать дальше →
Total votes 21: ↑19 and ↓2+17
Comments8

Вотериус: Передача показаний воды на телефон по Wi-Fi (4 года от батареек)

Reading time6 min
Views92K


Однажды мне надоело снимать показания счётчиков воды. Можно было поселить рядом со счетчиком магнит и на этом успокоиться, но этот путь я счёл неспортивным.

Мой путь оказался непростым и витиеватым. Но в результате получилось устройство, передающее показания воды по Wi-Fi на телефон. Простое и понятное в использовании и настройке хоть школьнику, хоть гуманитарию пенсионеру. А знакомым со словом «Ардуино» — ещё и несложное для изготовления. Девайс способен работать от батареек четыре года (дольше, чем длились отношения с вашей бывшей). Это ещё и первый открытый проект с такими характеристиками. Заводские аналоги я выписал, их мало, да и ладно с ними.

Итак, у нас есть немного денег и большое, но честное желание упростить себе жизнь, не нарушая Уголовный Кодекс. И чтобы никаких этих ваших 220В, серверов и кучи кнопок! Показания смотрим на смартфоне в приложении Blynk или аналогичном сервисе.

Теперь устройтесь в кресле поудобнее, съешьте ещё этих мягких французских булочек да выпейте чаю. Смотрите красивые фотографии и слушайте мой рассказ о том, что надо учитывать при создании автономных устройств. Но сначала краткое описание Вотериуса.
Читать дальше →
Total votes 127: ↑126 and ↓1+125
Comments205

Английский для работы на иностранном рынке: о чём не говорят в учебниках

Reading time5 min
Views17K
Основатель школы английского языка для корпоративных клиентов WES English, американский предприниматель Джаред Фирт в колонке для «Нетологии» рассказал об основных проблемах русскоязычных специалистов при общении с иностранцами.

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

В российских компаниях, которые продвигают свои услуги на международной арене, легко выделить два типа основных типа коммуникаций: со своими зарубежными коллегами и с клиентами и партнёрами.
Эффективность внутренних коммуникаций измеряется градусом общей атмосферы в команде, а также успешностью выполнения совместных задач в отведённый срок.
Читать дальше →
Total votes 15: ↑10 and ↓5+5
Comments15

Удобство наблюдения, atop

Reading time3 min
Views108K
Добрый день, сообщество,
На Хабре уже говорилось о всевозможных TOP- овых утилитах, на этот раз, я хочу попробовать рассмотреть поближе утилиту atop. Постараюсь немного сравнить ее с существующими утилитами наблюдения за производительностью и научиться читать выводы данной команды.
У системных администраторов задача наблюдения за производительностью встает чуть ли не каждый день, и конечно же хотелось бы все это сделать в рамках одной утилиты и без особых танцев с бубном, как мне кажется удобнее всего в таком случае использовать команду atop.
Читать дальше →
Total votes 47: ↑43 and ↓4+39
Comments18

TOP'ай сюда

Reading time5 min
Views178K
Обзор практически всех *top утилит под linux (atop, iotop, htop, foobartop и т.д.).

top

Все мы знаем top — самую простую и самую распространённую утилиту из этого списка. Показывает примерно то же, что утилита vmstat, плюс рейтинг процессов по потреблению памяти или процессора. Совсем ничего не знает про загрузку сети или дисков. Позволяет минимальный набор операций с процессом: renice, kill (в смысле отправки сигнала, убийство — частный случай). По имени top суффикс "-top" получили и все остальные подобные утилиты в этом обзоре.

atop


Atop имеет два режима работы — сбор статистики и наблюдение за системой в реальном времени. В режиме сбора статистики atop запускается как демон и раз в N времени (обычно 10 мин) скидывает состояние в двоичный журнал. Потом по этому журналу atop'ом же (ключ -r и имя лог-файла) можно бегать вперёд-назад кнопками T и t, наблюдая показания atop'а с усреднением за 10 минут в любой интересный момент времени.

В отличие от top отлично знает про существование блочных устройств и сетевых интерфейса, способен показывать их загрузку в процентах (на 10G, правда, процентов не получается, но хотя бы показывается количество мегабит).

Незаменимое средство для поиска источников лагов на сервере, так как сохраняет не только статистику загрузки системы, но и показатели каждого процесса — то есть «долистав» до нужного момента времени можно увидеть, кто этот счастливый момент с LA > 30 создал. И что именно было причиной — IO программ, своп (нехватка памяти), процесор или что-то ещё. Помимо большего количества информации ещё способен двумя цветами подсказывать, какие параметры выходят за разумные пределы.
Читать дальше →
Total votes 401: ↑389 and ↓12+377
Comments122

Принудительное введение в системы управления конфигурациями

Reading time9 min
Views36K

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


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


Введение для отшельников, которые не слышали что такое configuration management systems


Уже многие годы (по айтишным меркам — три поколения как) существуют программы, которые позволяют автоматизировать процесс конфигурации серверов. Все эти программы сложные, они вторгаются в святую святых администраторов и заставляют их делать "всё не так, как раньше". Их изучение и интернализация (признание, что "так надо и так правильно") — абсолютный must have в карьере любого системного администратора.


Главная боль любой системы управления конфигурациями


Главная боль состоит в том, что система управления конфигурациями ломает привычную автоматику пальцев. Раньше вы могли поднять веб-сервер за 2 минуты почти не глядя на экран. Теперь вам предлагают потратить на абсолютно те же самые действия минут 15-20 (если вы хорошо знаете систему управления конфигурациями) или даже несколько дней (!!!!!), если вы её изучаете.


Это преступление против личной эффективности. Уменьшить её в десять (0xA) раз — и это они называют прогрессом?

Читать дальше →
Total votes 47: ↑45 and ↓2+43
Comments69

Авторизация для ленивых. Наши грабли

Reading time57 min
Views28K


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

Поехали!
Total votes 40: ↑39 and ↓1+38
Comments15

Ловкость рук и никакого мошенничества: практические советы по ускоренному обучению дизайну для разработчиков

Reading time6 min
Views52K
Улучшаем дизайн проекта с помощью тактически грамотных действий, а не таланта.

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

Возможно, в компании, в которой вы работаете, нет штатного дизайнера, и вам необходимо реализовать интерфейс для нового функционала. Или, может быть, вы решили подработать на побочном проекте, и хотели бы, чтобы он выглядел лучше, чем «ещё один bootstrap-сайт».

Легко опустить руки и сказать: «Я никогда не смогу сделать это должным образом, я не художник!», Но, оказывается, есть уйма ловких приёмов, которые вы сможете использовать, чтобы поднять свою работу на другой уровень, не имея опыта в графическом дизайне.

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

1. Для создания иерархии используем цвет и вес вместо размера



Читать дальше →
Total votes 68: ↑67 and ↓1+66
Comments28

Уязвимости вашего приложения

Reading time20 min
Views27K

Актуальны ли ещё угрозы XSS? Прошло около 20 лет с тех пор, как Cross Site Scripting (XSS) появился как вид атаки. С тех пор мы получили богатый опыт и знания, защита наших сайтов стала намного сложнее, а многочисленные фреймворки были призваны оберегать нас от ошибок. Но последние данные показывают совсем другую картину: в первых кварталах 2017 года количество сообщений об XSS-атаках и количество найденных уязвимостей выросло в несколько раз.


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


Прототипом статьи является доклад на конференции HolyJS 2017 Moscow. Алексей — фронтенд-тимлид/архитектор в компании EPAM Systems и один из лидеров сообщества FrontSpot в Минске. Основные области профессиональных интересов: архитектура и инфраструктура приложений, управление разработкой.


В этом тексте огромное количество картинок со слайдов. Осторожно, трафик!

Читать дальше →
Total votes 48: ↑47 and ↓1+46
Comments29

Решаем проблему шума ПК самодельным устройством, а заодно «с нуля» учимся делать красивые корпуса для DIY-проектов

Reading time7 min
Views57K

Привет, Гиктаймс!

Собрать абсолютно бесшумный ПК — можно. Можно и купить. Но что делать, если к нему нужна профессональная или мощная игровая видеокарта с активным охлаждением? А может у Вас нет Windows/Linux медиаплеера, но есть лишний старый шумный ПК и помещение, куда его можно убрать? Или просто хочется минимализма на рабочем столе и вокруг него?

Итак, много статей и комментариев было посвящено выносу компьютера подальше от рабочего места — это ещё одна. В ней

а) будет описан процесс создания устройства, помогающего перенести кнопку включения ПК, индикатор питания и два независимых USB на расстояние до 10 метров с использованием стандартного Ethernet-кабеля;

б) будут даны общие рекомендации по проектированию DIY корпусных деталей, изготавливаемых из металла методом лазерной резки и гибки, фрезерованием, точением.

Суровые профессионалы найдут здесь много огрехов и недоработок, но… ЕСКДшные чертежи и teardrops у контактных площадок оставим для более интеллектуально-ёмких продуктов.
Читать дальше →
Total votes 75: ↑71 and ↓4+67
Comments153

Остеохондроз и его деловые партнеры. История болезни

Reading time13 min
Views235K
image
Здравствуй (Это важно!) уважаемый читатель.

Если, читая эту статью, ты приложил руку к лицу и согнул спину – то в этой статье ты можешь взглянуть на свое возможное будущее. Моя болезнь развивалась скорее по травматическому сценарию, за 3-4 месяца сильно деформировалась поясница, а далее, как карточный домик деформировался весь позвоночник, за год, я познакомился с проблемами в каждом суставе: от коленки до 1-ой кости позвоночника после которой спинной мозг переходит в головной.
Патологии позвоночника имеют одну уникальную особенность, которой нет ни у одной другой болезни. Любая патология позвоночника – очень тяжелая… В прямом смысле – масса костей человека около 15 кг., и любая проблема в суставе имеет большой физический размер и очень часто проблему в суставе можно пощупать пальцами, а современные средства диагностики, позволяют даже заглянуть внутрь (МРТ, Рентген). Поэтому вряд ли у человека есть такой же орган, с настолько же понятными функциями и простотой наблюдения как позвоночник.

В этой статье вы узнаете о сложностях постановки диагноза, ограниченности (специальностью) любого врача, как позвоночник может давить на сердце (и не только), как появляются тромбы, как может развиться ишемический инсульт мозга и небольшое математическое описания конфликта врача и пациента.
Читать дальше →
Total votes 52: ↑49 and ↓3+46
Comments282

Освещение растений белыми светодиодами

Reading time13 min
Views265K
Интенсивность фотосинтеза под красным светом максимальна, но под одним только красным растения гибнут либо их развитие нарушается. Например, корейские исследователи [1] показали, что при освещении чистым красным масса выращенного салата больше, чем при освещении сочетанием красного и синего, но в листьях значимо меньше хлорофилла, полифенолов и антиоксидантов. А биофак МГУ [2] установил, что в листьях китайской капусты под узкополосным красным и синим светом (по сравнению с освещением натриевой лампой) снижается синтез сахаров, угнетается рост и не происходит цветения.


Рис. 1 Леанна Гарфилд, Tech Insider — Aerofarms

Какое нужно освещение, чтобы при умеренном энергопотреблении получить полноценно развитое, большое, ароматное и вкусное растение?
Читать дальше →
Total votes 54: ↑52 and ↓2+50
Comments287

Прием сверхдлинных радиоволн в домашних условиях

Reading time3 min
Views53K
Сверхдлинные радиоволны — это целый мир, наполненный множеством сигналов — сфериками и свистами, генерируемыми молниями, возможно, за тысячи километров от места приема, привычными «точками» и «тире» морзянки, сигналами точного времени и цифровой передачи данных:

image

Сверхдлинные волны (СДВ) (ранее применялся термин «ультрадлинные волны» (УДВ)) — сигналы с частотой менее 30 кГц (по отечественной классификации). За рубежом для этого диапазона часто используются аббревиатуры VLF (very low frequency) и ELF (extremely low frequency), причем в разных источниках конкретные полосы частот для этих диапазонов различаются.

Немножко истории
Первый мощный СДВ-передатчик был введен в эксплуатацию в 1943 году в Германии, а «пользователями» были безбашенные (вряд ли в той войне был еще один род войск с таким процентным уровнем потерь) ребята из подводного флота Кригсмарине. Вот так выглядела СДВ-антенна на крыше рубки U-Boot:

image


Порог вхождения в этот мир совсем невысокий — требуется антенна, усилитель и ноутбук с соответствующим программным обеспечением. Далее я расскажу о своей немудреной снасти для приема на СДВ.
Читать дальше →
Total votes 61: ↑61 and ↓0+61
Comments109

Знакомство с WebAssembly

Reading time14 min
Views118K


Эта статья основана на моём выступлении на ITSubbotnik, прошедшем в Рязани 14 октября 2017 года. На русском пока что довольно мало материала на эту тему, надеюсь что статья будет вам полезна.


Disclaimer: Автор не является экспертом ни в WebAssembly, ни в JavaScript. Данная статья есть компиляция мыслей и идей, полученных из выступлений других людей на данную тему, плюс эпизодического опыта изучения WebAssembly в течение нескольких месяцев.

Читать дальше →
Total votes 70: ↑68 and ↓2+66
Comments121

Flightradar24 — как это работает?

Reading time4 min
Views119K
Наверное каждый, кто хоть раз встречал или провожал родственников или друзей на самолет, пользовался бесплатным сервисом Flightradar24. Это весьма удобный способ отслеживания положения самолета в реальном времени.



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

Восполним этот пробел. О том, как это работает продолжим под катом.
Читать дальше →
Total votes 130: ↑129 and ↓1+128
Comments190

История взлома всех игр в Telegram

Reading time14 min
Views198K
Сейчас компьютерные игры везде. Присутствуют они и в Telegram. Расскажу о том, как были взломаны практически все игры этого мессенджера, обойдя самых первоклассных игроков, находящихся в топах скорбордов. Хочу поделится результатами исследований. О различных методиках взлома, читинга и путях обхода логики игр под катом.


Читать дальше →
Total votes 34: ↑29 and ↓5+24
Comments29

Отзывчивые столбчатые диаграммы с Bokeh, Flask и Python 3

Reading time8 min
Views20K

От переводчика


Недавно наткнулся в python digest на туториал по Flask+Bokeh. Туториал ориентирован на новичков, не требуется даже знать синтаксис Python и HTML. Примеры работают под Ubuntu 16.04, на Windows немного отличается работа с виртуальными окружениями.


image

Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments8

Переходим на сторону сервера с bem-express

Reading time14 min
Views15K

— Сначала вы его отрицаете, потом вы его ненавидите, а потом вы не можете без него жить.
из доклада Артема Курбатова «БЭМ: мастер-класс»


Методология БЭМ существует достаточно долго и принята на вооружение в Google, EPAM Systems, BBC, Альфа-Банке. При этом она все еще вызывает беспокойство у типичного разработчика и менеджера проектов среднего звена.




У некоторых смельчаков изучение БЭМ не ушло дальше ограничения возможностей CSS для получения более предсказуемых результатов. И хотя БЭМ давно вышел за пределы верстки, до сих пор на вопрос «Знаете ли вы БЭМ?» можно услышать: «Конечно, это про подчеркивания в классах».


Если ваше представление о БЭМ близко к этому, я отвечу вам словами работодателя при приеме на работу новоиспеченного выпускника: «Забудьте о том, что вы слышали о БЭМ ранее». Методология БЭМ настолько интересна, насколько большинству о ней ничего не известно. Чтобы понять всю прелесть БЭМ, необходимо иметь представление обо всех технологиях, библиотеках, фреймворках и инструментах, которые БЭМ предоставляет. Изучите их, оставайтесь инопланетянином, ребенком, который удивляется тому, с чем взрослые смирились.


Читать дальше →
Total votes 47: ↑39 and ↓8+31
Comments44

Information

Rating
Does not participate
Registered
Activity