Как стать автором
Обновить
2898.93
RUVDS.com
VDS/VPS-хостинг. Скидка 15% по коду HABR15
Сначала показывать

Алгоритмы балансировки нагрузок

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 2.9K
Блог компании RUVDS.com Алгоритмы *Серверная оптимизация *Серверное администрирование *
Туториал
Перевод

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

В этом посте мы рассмотрим способы, которыми один балансировщик нагрузок может распределять HTTP-запросы на множество серверов. Мы начнём снизу и проделаем весь путь вверх до современных алгоритмов балансировки нагрузок.
Читать дальше →
Всего голосов 41: ↑40 и ↓1 +39
Комментарии 8

Интересные трюки HTML, CSS и JS

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 4.7K
Блог компании RUVDS.com CSS *JavaScript *HTML *Браузеры
Туториал

Здесь вы найдёте небольшую подборку нестандартных вариантов использования HTML/CSS/JS. Если информация окажется полезной, будем собирать эти хаки на постоянной основе и публиковать по мере накопления.

Примечание. Некоторые трюки основаны на открытых уязвимостях браузеров и поисковой системы Google и др. Поэтому могут перестать работать в ближайшее время (или продолжат, если разработчики не признают баги и не захотят их исправлять). Другие функции работают только начиная с конкретных версий Chrome, Firefox и т. д.
Читать дальше →
Всего голосов 34: ↑33 и ↓1 +32
Комментарии 8

Ускоряем Python в сто раз при помощи менее чем ста строк на Rust

Уровень сложности Средний
Время на прочтение 15 мин
Количество просмотров 7.7K
Блог компании RUVDS.com Python *Rust *
Туториал
Перевод

Однажды на работе у нас возникла проблема с производительностью одной из наших основных Python-библиотек.

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

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

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

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

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

Если вы хотите сразу перейти к получившемуся коду, то читайте раздел «Подведение итогов».
Читать дальше →
Всего голосов 53: ↑50 и ↓3 +47
Комментарии 9

FET: (F)дружелюбный (E)эффективный (T)транзистор

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 4.3K
Блог компании RUVDS.com Производство и разработка электроники *Гаджеты DIY или Сделай сам Электроника для начинающих
Перевод

Работая со схемой, управляющей приличной силой тока, вы зачастую сталкиваетесь с полевыми транзисторами (FET, Field-Effect Transistor). Независимо от того, хотите ли вы управлять парой мощных светодиодов, двигателем или включать/отключать USB-устройство, в схеме обычно присутствует полевой транзистор, выполняющий часть ответственной работы. Вы можете не знать, как именно он функционирует, как его использовать и какие нюансы при этом учитывать — поэтому начнём с основ.
Читать дальше →
Всего голосов 39: ↑37 и ↓2 +35
Комментарии 13

Новая обсерватория поиска обитаемых миров сможет ответить на вопрос, одиноки ли мы во Вселенной

Уровень сложности Простой
Время на прочтение 10 мин
Количество просмотров 4.3K
Блог компании RUVDS.com Научно-популярное Астрономия
Аналитика
Диаграмма экзопланет, открытых на конец 2017 года

Есть несколько вопросов, над которыми человечество всегда размышляло, но не могло удовлетворительно ответить, пока не появились соответствующие научные достижения. Такие вопросы, как «что такое Вселенная», «откуда она взялась», «как она стала такой» и «какова её конечная судьба» были с нами с незапамятных времён, но в XX и в XIX веках, благодаря невероятным достижениям в области физики и астрономии, наконец, получили исчерпывающие ответы. Однако, возможно, самый большой вопрос из всех – «Одиноки ли мы во Вселенной?» — остаётся без ответа.
Читать дальше →
Всего голосов 37: ↑36 и ↓1 +35
Комментарии 39

Шпионские страсти: самые странные и причудливые приспособления на службе разведок ХХ века. Часть 1

Уровень сложности Простой
Время на прочтение 11 мин
Количество просмотров 12K
Блог компании RUVDS.com Читальный зал Научно-популярное

С древних времён и до наших дней люди пытались выведать друг у друга всевозможные секреты или сделать что-то очень тайно и незаметно. В решении этих непростых задач им на помощь приходила инженерная мысль. Порой эта мысль приобретала самый сумрачный и странный характер — о примерах чего из эпохи классического шпионажа второй половины ХХ века мы сегодня и поговорим.
Читать дальше →
Всего голосов 65: ↑61 и ↓4 +57
Комментарии 19

Ответом на задачу по упаковке цветов в бесконечной сетке оказалось число 15

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 6.2K
Блог компании RUVDS.com Алгоритмы *Математика *
Перевод
Видео

В задаче по «упаковке цветов графа» (в оригинале packing coloring, — прим. пер.) спрашивается, сколько чисел необходимо для заполнения бесконечной сетки так, чтобы идентичные числа никогда не оказывались слишком близко друг к другу. И новый арифметический эксперимент с использованием компьютера даёт на удивление простой ответ.

Сколько чисел потребуется для заполнения бесконечной сетки так, чтобы расстояние между вхождениями одного числа было больше самого этого числа?
Читать дальше →
Всего голосов 44: ↑43 и ↓1 +42
Комментарии 12

Феррожидкости на службе человечества: магнитореологическое полирование и не только

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 3.1K
Блог компании RUVDS.com Научно-популярное Физика Химия
Картинка Freepik

Многие видели такой интересный состав, как ферромагнитная жидкость. Обычно она мелькает в тех или иных любительских видео, демонстрирующих её занимательные свойства. Однако у ферромагнитной жидкости есть и более полезные применения…
Читать дальше →
Всего голосов 38: ↑37 и ↓1 +36
Комментарии 1

Ностальгические игры: Final Fantasy 6

Уровень сложности Простой
Время на прочтение 9 мин
Количество просмотров 4K
Блог компании RUVDS.com Читальный зал Игры и игровые консоли
Обзор

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

В наши дни сыграть в шестую часть серии можно на огромном количестве устройств благодаря как множеству официальных ремастеров, так и различным эмуляторам. Последнее крупное переиздание вышло несколько лет назад под названием Final Fantasy VI Pixel Remaster и получило хорошие отзывы, а значит нет более подходящего времени, чтобы познакомиться с серией или же вернуться в родную гавань!

Читать далее
Всего голосов 33: ↑32 и ↓1 +31
Комментарии 12

Тестируем аккумуляторы для грузовых автомобилей: BARS 190 А*ч

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 3.2K
Блог компании RUVDS.com Научно-популярное Энергия и элементы питания Автомобильные гаджеты Транспорт
Обзор

Привет, Хабр! Сегодня протестируем грузовой аккумулятор, произведённый на территории Евразийского экономического союза, а именно, в Казахстане. В отличие от изделий из дальнего зарубежья, приобретение этих АКБ не составит затруднений.
А ещё познакомимся с новым типом гибридных АКБ - Se-Ca!
Всего голосов 36: ↑36 и ↓0 +36
Комментарии 10

Пол-лимона

Время на прочтение 1 мин
Количество просмотров 7.6K
Блог компании RUVDS.com Облачные сервисы *
Спецпроект

Наверное, будет непросто найти пользователя Хабра, который бы не знал такого сочетания из 5 букв, как RUVDS. За восемь лет, что мы присутствуем на Хабре, пять уверенно держимся на первом месте — это заслуга десятков сотрудников компании и звёздных авторов, с которыми в этом году мы планируем достичь отметки 3000 публикаций в блоге. Но RUVDS это не только буквы, блог намбаван, крутые конкурсы, квесты и спецпроекты — прежде всего это отличный хостинг с датацентрами в десятке стран, на которых мы недавно перешагнули планку в 500 тысяч серверов, в честь чего мы и решили устроить эту забаву.

Читать далее
Всего голосов 51: ↑45 и ↓6 +39
Комментарии 7

Аналоговый режим работы К155ЛА3

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 8.2K
Блог компании RUVDS.com Схемотехника *DIY или Сделай сам Электроника для начинающих

В предыдущих двух частях цикла мы использовали микросхему К155ЛА3 в привычном всем цифровом режиме работы. В этой части публикации мы рассмотрим схемотехнические решения на элементах ТТЛ в аналоговом режиме.

Любопытно, что в аналоговом режиме можно включить практически любой из инвертирующих элементов ТТЛ. Примеры подобного использования микросхемы К155ЛА3 есть даже в пособиях для начинающих, правда, мало кто из начинающих догадывается, что режим работы элементов 2И-НЕ в этих схемах аналоговый.
Будет интересно
Всего голосов 115: ↑115 и ↓0 +115
Комментарии 19

C# как замена VBA в Excel

Уровень сложности Средний
Время на прочтение 14 мин
Количество просмотров 8.4K
Блог компании RUVDS.com Программирование *C# *Visual Basic for Applications *
Туториал
Перевод
Я довольно много пишу на C#, и это мне нравится. Время от времени мне хочется, чтобы можно было использовать C# внутри других приложений.

Думаю, одним из таких приложений, в которых хорошо приживётся C#, был бы Excel, этим языком можно было бы заменить VBA. Язык VBA уже немного отстаёт от времени, а Microsoft не планирует его апгрейдить. Вместо него — компания предлагает среду-песочницу для JavaScript под названием Office Scripts.

Я понимаю привлекательность JavaScript для веб-версии Excel, но не в качестве хорошей замены VBA.

Так как этим не собирается заниматься Microsoft, я решил, что могу попробовать сам. В конце концов, если Microsoft так увлечена JavaScript, маловероятно, что она выдавит меня с обширного рынка использования C# в Excel.

Итак, вот что я создал:

QueryStorm IDE, выполняющая запрос LINQ для таблицы Excel

«Это что, IDE языка C#, выполняющая запросы LINQ для таблиц Excel?» Именно. Всё так и есть.

Я назвал это QueryStorm. Моя работа над этим проектом началась ещё в 2014 году. Изначально у него имелась только поддержка SQL, и с тех пор я продолжал над ним работать, постепенно добавляя поддержку скриптинга на C#, пользовательских функций C#/Excel, поддержку NuGet, отладчик и даже магазин приложений!
Читать дальше →
Всего голосов 81: ↑81 и ↓0 +81
Комментарии 16

Почему увольняют самых опытных? Потому что они слишком умные. Тейлоризм 21-го века

Уровень сложности Простой
Время на прочтение 8 мин
Количество просмотров 91K
Блог компании RUVDS.com Управление разработкой *Управление проектами *Управление персоналом *Карьера в IT-индустрии
Мнение


Опытный и талантливый сотрудник — носитель знаний и опыта. На него полагаются коллеги, он выполняет в десять раз больше работы, чем джун. Казалось бы, руководство должно молиться на такого разработчика. Но нет, к нему не испытывают особой благодарности и зачастую рады от него избавиться. Почему так происходит?
Читать дальше →
Всего голосов 194: ↑164 и ↓30 +134
Комментарии 292

Почему мы стали дороже в этом году

Уровень сложности Простой
Время на прочтение 8 мин
Количество просмотров 13K
Блог компании RUVDS.com Хостинг Хранение данных *Хранилища данных *Финансы в IT
Обзор
Про такое обычно не пишут посты и вообще всеми силами стараются аккуратно спрятать под ковёр. Но вы нас уже раза три спросили, почему мы подняли цены.

Отвечаю: потому что мы очень жадные!


Настолько жадные, что учли инфляцию, колебания курса, повышение стоимости лицензий Microsoft (а мы всё ещё не пиратим), допиздержки на серый импорт железа, повышение цен на IP-адреса и глобальное потепление. Повысили цены и всё равно остались примерно в 2–4 раза дешевле облака одного очень российского поисковика.

В общем, такие времена. Кто-то разливает молоко в пакет по 0,9 литра, а кто-то покупает в VDS-хостинг десктопное железо. Но мы уже выросли достаточно, чтобы понимать, что такое планирование вдолгую, и знаем, что важно нашим клиентам.

А нашим клиентам важно, чтобы всё шло без сюрпризов. Последние три года и так выдались удивительные, и какие-нибудь новости от хостинга — это не то, что они хотели бы.
Читать дальше →
Всего голосов 70: ↑64 и ↓6 +58
Комментарии 38

Обобщай это, обобщай то

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 4.1K
Блог компании RUVDS.com .NET *C# *Математика *Функциональное программирование *


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

На этот раз мы остановимся на связи между алгебраическими кольцами и алгоритмом поиска выпуклой оболочки множества точек (convex hull).
Читать дальше →
Всего голосов 42: ↑41 и ↓1 +40
Комментарии 2

Ностальгические игры: Космические рейнджеры

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 10K
Блог компании RUVDS.com Читальный зал Игры и игровые консоли
Ретроспектива

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

Больше всего мне нравились «Игромания» и «ЛКИ», очень редко брал «Страну Игр». До сих пор прошу родителей не выкидывать накопленную мною коллекцию, хочу оставить на память, уж больно большой кусок моего детства они занимали! Особенную ценность они имели, когда меня лишали компьютера за оценки, и всё что оставалось — это «играть в компьютер», читая их! Эх, знали бы вы, какое было разочарование, дождавшись субботы, прийти на рынок и увидеть, что этот торговец не приехал... а такое иногда происходило.

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

Так произошло знакомство с еще одной прекрасной игрой, которая не теряет своего шарма даже в наши дни.

Читать далее
Всего голосов 67: ↑65 и ↓2 +63
Комментарии 42

Новый способ угона автомобилей без ключа: инъецирование через CAN

Уровень сложности Средний
Время на прочтение 19 мин
Количество просмотров 18K
Блог компании RUVDS.com Информационная безопасность *Реверс-инжиниринг *
Кейс
Перевод
Это детективная история о краже автомобиля и о том, как мы выявили эпидемию высокотехнологичных угонов автомобилей. Она начинается с твита. В апреле 2022 года мой друг Иэн Тэбор написал твит о том, что его машину взломали вандалы, вытащили фару и отсоединили провода.

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

Это казалось бессмысленным актом вандализма любителей разрушать прекрасное. Спустя три месяца ситуация повторилась.
Читать дальше →
Всего голосов 75: ↑71 и ↓4 +67
Комментарии 91

Математический подход к выбору девушки*. Правило 37%

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 33K
Блог компании RUVDS.com Математика *Научно-популярное Социальные сети и сообщества


В наше время многие находят вторую половинку в интернете: на тематических форумах и в онлайн-сообществах, в играх и на сайтах знакомств и приложениях вроде «Тиндера», где знакомства вообще поставлены на конвейер. Если десять лет назад 22% всех браков в США начинались со знакомства в интернете, то сейчас доля онлайн-знакомств превысила 39%. По сути, интернет стал основным способом знакомства мужчин и женщин, как долговременного, так и краткосрочного. Это очень удобно для гиков и специалистов с техническим образованием, поскольку мы получаем конкурентное преимущество, используя привычные инструменты. Например, можно поддерживать десятки чат-сессий в десктопном приложении или применять методы численного анализа в Excel/Google Sheets.

*Примечание. Под «девушкой» здесь и далее подразумевается любой объект, поочерёдно рассматриваемый из ограниченного пула схожих объектов с отличающимися характеристиками. Это может быть не только девушка, но и мужчина, квартира для съёма, автомобиль на вторичном рынке, домик в деревне, работодатель и т. д.
Читать дальше →
Всего голосов 70: ↑66 и ↓4 +62
Комментарии 188

Halo: Combat Evolved — отец современных шутеров

Уровень сложности Простой
Время на прочтение 10 мин
Количество просмотров 3.9K
Блог компании RUVDS.com Читальный зал Игры и игровые консоли Научная фантастика
Ретроспектива
image

Титул «отца шутеров» с конца 90-х годов полноправно носит первая часть Doom. И каждому ясно почему: перечисление всего, что дало игровой индустрии творение Кармака и Ромеро, тянет на отдельный материал. Без Doom было бы невозможно представить, как выглядели бы шутеры сейчас и были бы они вообще в том виде, в котором мы привыкли представлять компьютерные стрелялки; не было бы многих графических технологий, построенных на основе её игрового движка. Не вышел бы следующий проект ID Software, Quake — серия, которая по сути создала такие привычные нам сейчас явления, как игровые монтажи и киберспорт.

Но Doom вышел в 1993 году, и не нужно быть экспертом, чтобы заметить, что большинство шутеров на сегодняшнем рынке имеют мало схожего с геймплейными основами первого проекта ID. Потому я предлагаю немного видоизменить генеалогическое сравнение в развитии жанра и поставить первую игру про измельчение демонов на вполне оправданное место «деда» в родовом древе шутеров. Ведь на место того, кто дал современным проектам их основные механики и стиль игры, подойдёт другая классика игростроя от именитой студии Bungie.

Встречайте «батю» современных шутеров — Halo: Combat Evolved.
Читать дальше →
Всего голосов 47: ↑43 и ↓4 +39
Комментарии 32

Информация

Сайт
ruvds.com
Дата регистрации
Дата основания
Численность
11–30 человек
Местоположение
Россия
Представитель
ruvds