Привет. Это статья-туториал про выбор технологии и реализацию проекта нагрузочных тестов для API REST микросервисов. Про себя и специфику продукта, над которым работаю, я подробно описывал тут, когда рассказывал о интеграционных тестах. Здесь этому уделять внимание не буду. Если решитесь продолжать, то Вас ждет длинное чтиво. Результатом потраченного времени и внимания будет понимание того, зачем нужно нагрузочное тестирование, с чего начать, куда двигаться дальше и шаблонный проект нагрузочных тестов, который Вы сможете адаптировать под себя. Все используемые мной технологии в этой статье несут печать Java экосистемы. Это тоже может повлиять на то, решитесь ли Вы продолжать. Поехали ...
Разработка
Дай знать, где ты находишься: как мы разработали навигатор по Эрмитажу
Эрмитаж - это настоящий портал в мир искусства, в котором неподготовленный любитель прекрасного может потеряться и выбиться из сил в попытках найти конкретный экспонат, а возможно и просто выход на улицу. Это не шутки, в Эрмитаже больше 360 залов, в которых расположено около 3 млн экспонатов. Плутать и культурно обогащаться можно бесконечно долго. Поэтому современное приложение для ориентации в пространстве Эрмитажа - это был просто мастхэв 21 века.
Замена ламп на светодиодную подсветку у старого TFT монитора
У меня уже более пяти лет пылится старый монитор ASUS VH323T. Это довольно старая модель с диагональю 23" и довольно неплохой матрицей (на КДПВ не он), но все дело портит очень плохая подсветка. Мало того, что у нее очень низкая яркость (всего 300 кд/м2), так еще лампы подсветки со временем очень сильно потускнели до противного желтого цвета, в результате чего монитор был заменен на более современный, чтобы не ломать глаза.
Тем не менее, монитор вполне рабочий, и противное земноводное не разрешает его просто взять и выбросить на помойку, тогда как продать монитор новому владельцу не позволяет уже совесть.
Когда-то встречал на просторах интернета пару статей, в которых описывалось, что можно заменить в мониторе старые лампы подсветки на новые. И после того, как в очередной раз запнулся за коробку со старым монитором, решил попробовать заменить его подсветку на светодиодную. Ведь после этого его можно будет либо честно продать, либо просто выкинуть. В любом случае, избавлюсь от старого хлама :-)
Кому интересны рабочие нюансы и рассказ о не совсем очевидных проблемах, прошу под кат с фотками котиков этапов работ, конечного результата и финальных выводов.
ML-технологии, которые уже сейчас оказывают мощное влияние на бизнес
Технологии очаровывают, отталкивают, вызывают приступы скептицизма… Люди по-разному относятся к любым новинкам, и это нормально. Но, как мы знаем, истинная ценность любой инновации проявляется в ее способности решать реальные проблемы и удовлетворять потребности клиентов. Поэтому лишь применяя новые технологии на практике для решения конкретных бизнес-потребностей, мы можем легко отличить действительно полезные вещи от тех, которые еще нуждаются в разработке и пока не могут принести ощутимых результатов.
Вот и сейчас в машинном обучении (ML) наблюдаются стремительные изменения и постоянное развитие. В этой статье мы рассмотрим последние тенденции в ML и объясним, как они уже сейчас выдвигают бизнес на новый уровень без затрат на новых сотрудников.
Истории
Android и iOS, Flutter и Kotlin: что обо всём этом расскажут на Mobius
До конференции Mobius остался месяц, мы представляем Хабру её программу. И её вечно непросто поделить на блоки.
Понятно, что доклады «про iOS» и «про Android» интересны разным разработчикам, поэтому хабрапост хочется разделить пополам. Но как правильнее поступить с докладами по Flutter? А про Kotlin, когда есть KMP? А с теми, которые не привязаны к платформе?
В общем, не уделяйте слишком много внимания тому, как всё разделено на части — лучше смотрите, о чём будут сами доклады.
Что нам стоит код написать: 5 нейросетей, которые помогают разработчикам программировать
В ближайшем обозримом будущем ИИ будет помогать человеку во всё большем количестве отраслей. Включая, конечно, и разработку. Как известно, уже сейчас есть нейросети, которые способны оказывать неплохую помощь программистам. В этой подборке расскажем о пяти таких нейронках. Самую популярную из них, GitHub Copilot, упоминать не будем, поскольку о ней и так все и всё знают. Подробности о других пяти инструментах — под катом.
Назад в прошлое. Часть 1. Интервью со Стефаном Пясецким, бывшим сценаристом (1993-1995) в Blue Byte (1986-2001)
Данный материал - первая проба пера в гипотетическом цикле, где в качестве концепции была принята идея взятия коротких интервью в формате вопрос / ответ. Взятия у кого? У различных некогда менее или более известных персон, причастных к игровой индустрии минувших лет. Подобраться к условным Джону Ромеро или Тиму Кейну на данный момент оказалась непросто, поэтому пока вашему вниманию предлагается публикация о Blue Byte.
TOTP без смартфона, послесловие
После публикации статьи «TOTP без смартфона» она получила много интересных и полезных комментариев. Я решил подождать, пока обсуждение затихнет и провести работу над замечаниями и высказанными мыслями.
Поскольку объём работы оказался достаточно большой, то оформил её в виде отдельной публикации-послесловия.
Вычислительные выражения: Реализуем Combine
Вычислительные выражения — поистине неисчерпаемая тема. Мы научились возвращать пустые значения, а теперь нам предстоит разобраться, как возвращать множественные. Скотт Влащин рассказывает, как использовать метод Combine
.
Как подойти к внедрению DWH, чтобы не было «больно»? Какие методологии использовать и какой стек выбрать?
В статье рассказываем о том, кому стоит задуматься о внедрении DWH, как сократить вероятность ошибок на этапе разработки проекта, выбрать стек, методологию и сэкономить ИТ-бюджеты.
Побитовые операции: для чего нужны основы информатики Solidity-разработчику
В этой статье я расскажу о том, как работают побитовые операции и зачем они нужны разработчикам смарт-контрактов. Например, без них не обойтись, если нужно оптимизировать расходы на газ, а иногда эти знания полезны для понимания того, что происходит в таком (оптимизированном) коде.
Но перед тем, как перейти к побитовым операциям, необходимо понять, что такое вообще бит и байт. Так что да, это та самая школьная информатика. Не могу сказать, что в своё время углублялся в эти темы с большим энтузиазмом, и предполагаю, что я такой не один.
В статье мы рассмотрим знаковые и беззнаковые числа, прямой, обратный и дополнительный код, логические вентили, а также базовые побитовые операции и как это применяется в написании смарт-контрактов.
На какие AI Coding Assistants стоит обратить внимание в 2024?
Не является секретом, что LLM в настоящее время являются неотъемлемой частью нашего рабочего процесса. Особое внимание заслуживает AI Coding Assistant — искусственный интеллект, или просто программный помощник, который поддерживает разработчиков, помогая писать более качественный и точный код, тем самым экономя время и ресурсы.
Давайте рассмотрим различные программные помощники, доступные на рынке для разработчиков с разными уровнями навыков, включая как бесплатные, так и платные варианты.
Но прежде чем мы погрузимся в детали этих инструментов, давайте ответим на вопрос: "Что такое эти помощники?".
Приятного прочтения(:
Никому нельзя верить на слово в безопасной разработке, или Еще один взгляд на SCA
Захожу я в английский клуб. Там все сидят, выпивают, в карты играют. Смотрю — в очко режутся! Сел я за столик, взял карты. У меня — 18. А мой соперник говорит: «20». Я ему: «Покажи!». А он мне: «Мы, джентльмены, верим друг другу на слово». И вот тут-то мне поперло.
Но в ИБ так не пройдет, нужна здоровая паранойя. Поэтому на слово не верим никому, в том числе и инструментам анализа, а сначала их проверяем.
Ближайшие события
Сказ о том, как РП репликацию на Марии из зеркал состряпал…
Нежданно ни гадано, затеяли значит высшие "итишные" силы включить новые заморские очереди Кафка в уже выполненный на 4/3 проект и слава богу, что только для внешних взаимодействий и передачи всякой информации туды-сюды. Главный архитектор дал благословение и понеслось, да не туда, так как нести то некому это невиданное заморское чудо. Что делать, в обозримые сроки не впихнуть и перед боярами чин и обязательства не сдержать. Посидел РП, погоревал, да сдул пыль со знаний древних и ранее опробованных и тут понеслось.
По щелчку пальцев Write-up | ItsCTF 2023
По щелчку пальцев Write-up | ItsCTF 2023
Решение таска из TinkoffCTF 2023 (aka itsCTF) по щелчку пальцев.
Сравнение технологий WebSockets, Server-Sent-Events, Long-Polling, WebRTC и WebTransport
При работе с современными веб-приложениями реального времени незаменима возможность отправлять события с сервера на клиент. Именно этой необходимостью продиктовано то, что за годы работы было изобретено несколько методов для этой цели, каждый с собственным набором достоинств и недостатков. Первоначально единственным вариантом был длинный опрос. Затем в качестве альтернативы появились веб-сокеты — более надёжное решение для двунаправленной коммуникации. Вслед за веб-сокетами появились события, отправляемые сервером (SSE), более простой метод, обеспечивающий однонаправленную связь от сервера к клиенту. Забегая вперёд, сейчас разрабатывается ещё и протокол WebTransport, который может тем более изменить ландшафт этой области, обеспечивая более эффективный и гибкий подход, располагающий к масштабированию. В некоторых нишевых случаях можно присмотреться и к технологии WebRTC, предназначенной для работы с событиями в направлении сервер-клиент.
В этой статье мы подробно разберём данные технологии, сравним их производительность, подчеркнём их достоинства и недостатки, а также порекомендуем, что делать в различных практических случаях, расскажем, как принимать информированные решения при создании веб-приложений реального времени. Эта статья — экстракт моего совокупного опыта, приобретённого в ходе реализации протокола репликации RxDB, обеспечивающего совместимость с различными технологиями серверной части.
Security Week 2417: эксплуатация уязвимостей с помощью LLM
Общая схема эксперимента, проведенного авторами работы, показана на картинке выше. Оператор указывает цель (уязвимый веб-сайт) и конкретную уязвимость, после чего LLM предположительно делает всю работу. Исследователи проверяли данный метод на 15 известных уязвимостях. Большинство уязвимостей позволяют атаковать веб-сайты, например, через уязвимости в Wordpress или его плагины. Но есть и экзотические уязвимости, например проблема во фреймворке Astropy для вычислений в астрономии (в работе он указан с ошибкой, как astrophy). Способность LLM построить атаку только на основе информации об уязвимости (например, по ее идентификатору CVE) испытывалась для десяти разных моделей. Сразу отметим интересный вывод: хоть что-то у исследователей получилось в модели GPT-4, все остальные показали нулевые результаты.
Некоторые аспекты позитивной и негативной моделей платформы «Вебмониторэкс»
Каждый новый специалист нашей практики Защиты приложений проходит нечто среднее между посвящением и стажировкой. Обычно в рамках задачи нужно развернуть уязвимое приложение, WAF одного из наших фокусных партнеров, а потом найти конкретную уязвимость, проэксплуатировать ее, посмотреть что видно на WAF в режиме мониторинга, а затем настроить WAF, чтобы он начал обнаруживать и блокировать данную уязвимость. Конечно, уязвимости при этом выбираются не такие, чтобы сразу по сигнатуре можно было бы ее обнаружить.
В этой статье младший системный инженер “К2 Кибербезопасность” Даниил Золотарев поделится задачей, которая выпала ему.
В ходе работы Даниилу пришлось защищать Juice Shop средствами платформы «Вебмониторэкс» и столкнуться с некоторыми аспектами негативной и позитивной моделей данного WAF. Далее мы рассмотрим примеры создания пользовательских правил, для блокировки атак Improper Input Validation (Неправильная проверка ввода). Таким образом наглядно продемонстрируем одну из ключевых возможностей WAF – закрытие дыр приложения в проде до фикса.
TESCREAL — новая идеология Кремниевой долины. Что это такое и почему она уже всех достала
В 2023 году в медиа стало все чаще звучать понятие TESCREAL — его называют идеологией современного технологического капитализма. Ее главная идея в том, что благополучие современного мира — это не цель, к которой должно стремиться, а средство для достижения блага для будущих поколений. А главный инструмент TECREALистов — буквально Deux Ex Machina — общий искусственный интеллект.
Принято считать, что ее главные апологеты — топ-менеджеры компаний-лидеров ИИ-индустрии, которые стремятся повернуть Кремниевую долину вправо и, по мнению критиков с левого фланга, могут уничтожить человечество. Разбираемся, что и кто стоит за этой аббревиатурой, и что не так с ее критикой.
Ты неправильно используешь интерфейсы typescript
A: Не думай о помощи.
Б: Сложно не думать о помощи, когда пишешь на javascript.
Примерно такой диалог я слышал на одной из конференции. Решить проблему отсутствия строгой типизации был призван typescript.
Конкретно в этой статье я хотел бы рассмотреть один из приемов использования интерфейсов typescript, который мне кажется неочевидным, его я подсмотрел и смог оценить его преимущества в процессе написания приложений на языке golang.
Для большинства typescript разработчиков типы и интерфейсы, не имеют как таковой большой разницы.
Хабы
Вклад авторов
alizar 91618.8marks 24166.6ru_vds 19911.9alexzfort 14179.0XaocCPS 10986.2pronskiy 10649.4m1rko 10382.0ptsecurity 9563.7Andrey2008 9538.2Jeditobe 9387.6