Pull to refresh
-16
@eikhnerread⁠-⁠only

User

Send message

Мифы про инфраструктуру в облаке: с какой неграмотностью мы сталкиваемся в России каждый день

Reading time6 min
Views35K


Меня зовут Александр, и я, среди прочего, занимаюсь тем, что общаюсь с теми, кто только-только узнал про облака. И хочет перевести туда часть своей инфраструктуры. Чаще всего это производства не из Москвы, которые совсем недавно узнали про виртуализацию как таковую.

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

Мой любимый эпизод — это просчёт цен на новое оборудование в офисе (стойка из серверов дешёвого сегмента или переделанных ПК) и облака:
— Так. Лицензия на гипервизор. Зачем за неё платить? Мы никогда лицензию не покупали… Россия же, хе-хе! Поддержка на железо в стойке? К чёрту, без поддержки обойдёмся, у нас админ шарит. Что там ещё, бекап? У нас уже есть палёный...
Еще есть популярный миф, что если сервер в офисе, то, когда придёт проверка, можно взять и залить его кипятком из чайника, и тогда данные никто не заберёт. Он настолько распространён, что иногда мне кажется, что на нём прямо держится отечественный рынок low-end серверов.
Читать дальше →

О чем не пишут в документации, или тонкости рефакторинга на .Net Core

Reading time6 min
Views13K

Всем привет! Этим материалом мы открываем цикл из нескольких статей, посвященных длинной истории о том, как мы пришли с одной стороны к CD, а с другой — к high availability, основанной на избыточности.


Начнем по порядку. У нас есть API для мобильного приложения, которое находится в продуктовой среде, написанный на .NET.


И первым шагом мы переводим его на .NET Core и делимся с вами тонкостями, которые встретились нам на этом пути.


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

GR8 CUL8R – WTF?!?! Разбираемся в популярных сокращениях на английском

Reading time6 min
Views45K
Переписка стала быстрой. Онлайн-общение победило и существенно упростило письменный и разговорный английский. Люди все чаще используют аббревиатуры, а то и вовсе стикеры. И не только тинейджеры. Взрослые серьезные профессионалы, время которых дорого, тоже часто отвечают на сообщения невразумительным набором букв. Относиться к этому можно как угодно, но разбираться в сокращениях надо. Мы разобрали для вас основные и самые полезные буквосочетания, чтобы вы могли беседовать на равных с современным носителем языка.


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

В 20 раз дешевле, в 2,5 раза точнее и вдвое удобнее

Reading time7 min
Views32K
Приветствую, уважаемое сообщество!

Сегодня ровно год, как я написал первый пост на Хабре. Второй и до этого момента крайний пост, я написал примерно через неделю и…

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

Так вот, в честь юбилея моего присутствия на Хабре, я решил написать серию статей, в которой расскажу о некоторых проектах и разработках, сделанных в ходе работы над этими проектами. Конечно, я буду рассказывать только о разработках, которые по тем или иным причинам не принял заказчик (соответственно все права на интеллектуальную собственность принадлежат мне) или которые я делал вне проектов, для себя. И естественно, все проекты будут технической направленности, это около 40% всех проектов (остальные относятся к области маркетинга, HR, экономики).

Долго думать с какого проекта начать, не пришлось, логично начать с самого первого проекта. Тем более решение, которое я опишу, получилось действительно эффективное и простое (у Трабл-шутеров часто решения на столько простые, что заказчик хватается за голову: «Как же я сам не догадался?»). В теме поста нет никакого обмана, действительно разработанное оборудование получилось минимум в 20 раз дешевле аналогов (для некоторых брендов конкурентов, этот показатель достигает и 40х), в 2,5 раза точнее и значительно удобнее.

И так, как вы уже поняли разрабатывали мы в этом проекте не ПО, не процессы, а оборудование (железку). Под катом вы узнаете все подробности о проекте.
Читать дальше →

Что читают инженеры GridGain. Книги для тех, кто интересуется In-Memory Computing

Reading time3 min
Views12K
Не так давно у нас в корпоративном чате развернулась баталия по поводу бумажных книг и книг вообще. Оказалось, что, несмотря на популярность блогов и обучающих видео, любителей полистать хорошую книгу на читалке, или даже в бумаге, у нас достаточно много. Тем более, к некоторым книгам хочется иногда возвращаться, чтобы уложить всё в голове или поискать решение конкретной задачи.


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

Layer 7 DoS: атаки на отказ от обслуживания веб-приложения

Reading time5 min
Views15K

Распределенные атаки на отказ в обслуживании, которым подвергаются популярные сайты обычно происходят с тысяч и тысяч взломанных устройств. Эти атаки в основном направлены на подавление целевой системы масштабным трафиком, забиванием канала связи. Эти атаки относятся к layer 3 (сетевой уровень модели ISO/OSI) DoS/DDoS и характеризуются большим количеством пакетов, которыми атакуется ресурс. Layer 7 (прикладной уровень модели ISO/OSI) DoS/DDoS обычно направлен на "слабые" места веб-приложения.

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

Как мы запасы на производстве сокращали. На 500 миллионов

Reading time9 min
Views8.7K
Всем привет!

И все-таки Дед Мороз существует, иначе бы такое чудо не произошло. Я решил, что индикатором, при котором я опубликую этот пост станет сокращение запасов на 500 млн рублей. Вуаля, как говорится.

Откуда такой гигантский эффект


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

Январская починка дыр в .NET Framework и Core

Reading time5 min
Views15K

Аккурат к концу новогодних каникул в России, 9-го января, Microsoft выпустили обновления, исправляющие CVE-2018-0786 и CVE-2018-0764. Починили так, что кое-где ещё и сломали. В этом коротком посте мы ещё раз вспомним, что это такое и что нам теперь делать.


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


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

Meltdown: влияет не только на производительность

Reading time1 min
Views81K

Обновления безопасности


Компания Microsoft выпустила обновления безопасности для операционных систем Windows, исправляющие критические уязвимости в процессорах Intel, AMD и ARM, которые исправляют раскрытые на днях уязвимости Meltdown и Spectre. Патчи могут привести к снижению производительности на затронутых системах и не только. Ниже будут приведены 2 скриншота и пояснения к ним.

Экспресс-тест на примере 7-Zip


До установки обновления безопасности KB4056890 (версия 1607)
image

После установки обновления безопасности KB4056890 (версия 1607)
image

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

Составляем DNS-запрос вручную

Reading time7 min
Views56K
Об авторе. Джеймс Рутли — бэкенд-разработчик в компании Monzo.

В этой статье мы изучим двочиный формат сообщений Domain Name Service (DNS) и напишем вручную одно сообщение. Это больше, чем вам нужно для использования DNS, но я подумал, что для развлечения и в образовательных целях интересно посмотреть, что находится под капотом.

Мы узнаем, как:

  • Написать запросы DNS в двоичном формате
  • Отправить сообщение в теле датаграммы UDP с помощью Python
  • Прочитать ответ от DNS-сервера

Писать в двоичном формате кажется сложным, но в реальности я обнаружил, что это вполне доступно. Документация DNS хорошо написана и понятна, а писать мы будем маленькое сообщение — всего 29 байт.
Читать дальше →

Основы и способы информационной безопасности в 2017 году

Reading time10 min
Views35K
В современном мире сложно сохранить какую-либо информацию в тайне. Особенно если она представляет ценность для кого-либо и вам нужно ее передать. Не важно, какие у вас причины на сокрытие тех или иных данных, в этой статье рассмотрим основные методы и программные средства для сохранения информации в тайне.

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

Автоматизация бизнеса (бизнес-процессов) простыми словами

Reading time4 min
Views15K
Сколько времени тратят ваши продавцы на то, что не связано с продажей, на все кроме самого звонка?
Сколько вы теряете денег пока они не продают?
Сколько времени уходит у остальных сотрудников на то, что не связанно с результатом, который вы от них ждете?
Сколько вы им за это платите?

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

Чтобы это понять, давайте просто разберем автоматизацию бизнес-процесса на части.

Итак, бизнес-процесс.
Что такое бизнес всем понятно.
А вот к процессу присмотримся внимательнее.

В чем особенность любого процесса?
У него есть начало и есть конец.
А еще у него есть этапы. Любой процесс можно разбить на этапы. Даже если вы просто решили прочесть эту статью, сначала вам ее нужно открыть, а потом уже прочесть. Это уже два этапа. Поэтому любой процесс состоит из этапов.



Именно наличие этапов (шагов, пунктов) дает нам возможность автоматизировать процесс. Каким образом?

Можно привести очень простой пример.
Как только владелец бизнеса знает какую-то область в бизнесе настолько хорошо, что может описать, что в ней нужно делать по пунктам, чтобы получить результат, он может нанять сотрудников и передать эту область им.
Можно сказать, что для себя он работу автоматизировал.
Он в ней уже не участвует, либо участвует по минимуму. А в роли системы, которая все автоматизирует, выступают сотрудники.
Теперь ему нужно пойти дальше, и перенести все эти процессы в компьютер. Чтобы часть рутинной работы за сотрудников делала система, а они занимались тем, что приносит конкретный результат.

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

Производительность выгрузки большого количества данных из Mongo в ASP.NET Core Web Api

Reading time5 min
Views6.4K

Возникла необходимость выгрузки большого количества данных на клиент из базы MongoDB. Данные представляют собой json, с информацией о машине, полученный от GPS трекера. Эти данные поступают с интервалом в 0.5 секунды. За сутки для одной машины получается примерно 172 000 записей.


Серверный код написан на ASP.NET CORE 2.0 с использованием стандартного драйвера MongoDB.Driver 2.4.4. В процессе тестирования сервиса выяснилось значительное потребление памяти процессом Web Api приложения — порядка 700 Мб, при выполнении одного запроса. При выполнении нескольких запросов параллельно объем памяти процесса может быть больше 1 Гб. Поскольку предполагается использование сервиса в контейнере на самом дешевом дроплете с оперативной памятью в 0.7 Гб, то большое потребление оперативной памяти привело к необходимости оптимизировать процесс выгрузки данных.

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

Мой опыт настройки Apache x64 под Windows 8.1 x64

Reading time8 min
Views277K
image

Доброго времени суток, уважаемые читатели. В этой статье я хочу поделиться с вами личным опытом настройки Apache под Windows 8.1 x64.
Было время – установил я себе Windows 8.1 и думаю, раз уж пошло на то, «дай ка» Я и Apache подниму! И как обычно меня он очень порадовал (табличка: «Сарказм»). Пришлось повозиться почти целую ночь, чтобы поднять сервер. И мне это удалось! После этого я решил тем самым написать небольшую статью по настройке Apache, чтобы другой человек не тратил на это столько же времени, сколько Я.
После нескольких минут раздумий, решил написать пошаговую инструкцию, которая будет состоять из нескольких разделов:
  1. Подготовка папок
  2. Настройка Apache
  3. Настройка PHP
  4. Настройка MySQL
  5. Устанавливаем phpMyAdmin

Ну что ж, приступим.
Читать дальше →

Удаленная установка программ на Windows (XP SP3 и более новые) без использования сторонних утилит

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

Однако, с тех пор, как в нашей ультраконсервативной конторе стали появлятся компьютеры с более новой, чем XP, версией Windows, возникла проблема: удаленный помощник Windows Server 2003 (который итак никого, в общем-то, не устраивал) не мог подключиться к более поздним версиям ОС. Конечно, у нас оставался старый добрый «Удаленный рабочий стол», но иногда ведь нужно увидеть именно то, что видит на своем рабочем столе пользователь. При этом политика безопасности конторы требовала использовать минимум стороннего софта.

После долгих поисков, было установлено, что подключиться к сеансу Windows 7 из сеанса Windows Server 2003 без какой-либо сторонней утилиты не получится. Конкурс на самую бесплатную утилиту удаленного управления выиграла UltraVNC. Именно на ее примере ниже будет рассмотрен способ удаленной тихой установки программ без использования сторонних утилит.
Читать дальше →

Учим CSS Grid за 5 минут

Reading time3 min
Views89K
Быстро познакомимся с будущим макетов веб-сайтов.

image

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

В этом году модуль также получил нативную поддержку основных браузеров (Safari, Chrome, Firefox), поэтому я считаю, что всем фронтенд разработчикам придется изучать эту технологию в недалеком будущем.

В этой статье я быстренько расскажу вам об основах CSS Grid.
Читать дальше →

Основы информационной безопасности. Часть 2. Информация и средства её защиты

Reading time12 min
Views159K


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

Моя компания не взлетела, 6 уроков ценою в 4 года жизни и $150 000

Reading time5 min
Views65K
Симпатичная девушка попросилась на фейсбуке в друзья и спросила, почему мы приостановили развитие нашего проекта. А мы не приостанавливали, даже наоборот, дела пошли в гору — нащупали работающие пути получения трафика, выручка наконец начала расти. Но через несколько месяцев я понял, что она была права.

О том, как мы работали по 10 часов в сутки без выходных, получили инвестиции, прошли во ФРИИ, набрали более ста тысяч пользователей в США, нас хотел купить Sports Illustrated, но в итоге мы закрыли компанию.

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

Разреженные столбцы или sparse columns в MS SQL Server. Реальный опыт применения

Reading time9 min
Views9.8K
У одного из наших достаточно крупных клиентов, в системе электронного документооборота которого ежедневно одновременно работают более 10000 пользователей, были применены так называемые sparse-колонки или разреженные столбцы.

Статья – попытка свести предпосылки и результаты применения этой функциональности (и некоторых других настроек СУБД) в едином месте.
Читать дальше →

Подробный разбор решения crackme01_x64

Reading time5 min
Views26K
Данная статья рассчитана на начинающих, интересующихся обратной разработкой, и имеющих базовые представления о работе ЦП, языке ассемблера. Этот crackme относительно старый и простой, но при его решении применяются в основном те же приемы, что и при решении более сложных. На просторах Сети можно найти несколько статей с его разбором такие как эта, а еще он здесь упоминается(crackme то с историей), однако те решения не такие подробные как это. В свое время мне сильно не хватало такого построчного разбора, куда можно было бы заглянуть, когда запутался и не понимаешь что делает тот или иной участок кода. Если этот пост окажется полезным хотя бы для одного человека, значит я не зря старался. Все скрины(кроме первого) кликабельны. Приятного прочтения.

Итак, перед нами простой crackme, запустим его и посмотрим как он работает.


Ага, все довольно просто, мы должны ввести правильный серийник. Теперь откроем программу в дизассемблере. Как правило дизассемблерные листинги, даже относительно простых программ, довольно объемны. Для определения той части кода, которая проверяет ввод серийника, найдем где в памяти программы хранится строка с сообщением об ошибке «Fail, Serial is invalid !!!» и какой код к этой строке обращается.
Читать дальше →
12 ...
19

Information

Rating
Does not participate
Registered
Activity