Habr.com

Syndicate content Хабр
Updated: 1 hour 19 min ago

[Пятничное] Сколько стоит держать 100 запросов в секунду в Azure на .NET Core MVC и MSSQL

Fri, 10/15/2021 - 12:03


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


И вот, спустя пять лет случается флешбэк — выходит статья о нагрузочном тестировании Azure, в которой автор добивается 4 запроса в секунду за 250$ в месяц. Тут уж я просто не мог пройти мимо. Ведь не может такого быть, чтобы второе по величине облако давало так мало за не самые маленькие деньги, правильно? Поэтому я очень быстро набросал простейшее веб приложение на .NET, накатил базу StackOverflow за 2010 год, запустил туда скромную нагрузку в 100 RPS и стал судорожно протирать свои глаза. Даже такую нагрузку мое приложение не держало, причем вообще. 50 RPS тоже оказались слишком высокой планкой, как, впрочем, и 25. И тут я понял, что так дело не пойдет — к вопросу надо подходить системно.


Итак, кому интересно сколько стоит 100 RPS в Azure с .NET Core MVC + .NET 5 + MSSQL на Kestrel — берите кофей и прошу под кат.

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

PWA: не Chrome'ом единым?

Fri, 10/15/2021 - 11:54

Я уже публиковал свою точку зрения, что Progressive Web Applications - это, прежде всего, технология для мобильных устройств. Основная особенность классических web-приложений - это клиент-серверная архитектура, а основная особенность "прогрессивных" web-приложений - возможность работы в offline. Понятно, что это очень сильно разные подходы в архитектуре - "всегда на связи" и "всё своё с собой". Совместить два таких разных подхода в одном приложении "это очень дорого и ни к чему".

Отталкиваясь от этой своей точки зрения, я решил посмотреть текущую статистику по браузерами - какие на данный момент у PWA-приложения возможности стать популярным и на какие браузеры оно должно ориентироваться. Данные для публикации взяты с сайта gs.statcounter.com

Читать далее

Бессерверные контейнеры: куда смотреть, когда обычных функций не хватает

Fri, 10/15/2021 - 11:45

При работе с бессерверными функциями разработчикам необходимо подстраиваться под поддерживаемые провайдером языки программирования и библиотеки. Эта проблема решается с помощью бессерверных контейнеров: они позволяют запускать в облаке собственные контейнеры из образа, и у каждого своя изолированная вычислительная среда. В результате мы дополняем стандартные бонусы serverless-подхода, такие как масштабирование и Pay-as-you-go, гибкой настройкой окружения. В этой статье я расскажу, чем бессерверные контейнеры отличаются от бессерверных функций и что сейчас предлагают основные облачные провайдеры. 

Читать далее

Опыт миграции кластера PostgreSQL на базе Patroni

Fri, 10/15/2021 - 11:41

Недавно мне посчастливилось заниматься переносом кластера PostgreSQL под управлением Patroni на новое железо. Задача казалась простой — я и не думал, что могут возникнуть проблемы. Но в процессе реализации встретились некоторые сложности, которые натолкнули на мысль поделиться полученным опытом. В этой работе описываются практические шаги и нюансы, которые встретились во время переноса кластера на новую платформу. Использовались следующие версии ПО: PostgreSQL 11.13, Patroni 2.1.1, etcd 3.2.17 (API version 2). Итак, поехали!

Читать далее

Жанровая меломания нейросетей

Fri, 10/15/2021 - 11:38

Пишете музыку, но внезапно настиг творческий кризис? Или вам хочется получить треки уровня royalty-free, потыкав несколько слайдеров в Colab ноутбуке? Вы не готовы получать PhD в нейронных сетях и разбираться с теорией музыки, а попробовать себя в роли нейросетевого музыканта очень уж хочется?

Команда Sber AI спешит к вам с радостной новостью: совершенно безвозмездно мы выкатили NLP-модель синтеза музыки, обученную на тысячах часов музыки из открытых источников. Вам не придется платить за аренду GPU сервера с картой V100 для синтеза через Jukebox - наша модель порадует вас бесплатными треками в риалтайме даже в простом Google Colab.

А ещё вы узнаете, как связаны трансформеры и шедевры классической музыки. Но обо всем по порядку.

Читать далее

Как ускорить разработку в машиностроении в 4 раза. Ключевые моменты для успеха в машиностроении и не только

Fri, 10/15/2021 - 02:21
Мы живем в сильно ускоренном периоде грандиозных изменений — во время рождения, успехов и падений разных компаний, появления и исчезновения целых отраслей. По воле случая я оказался причастным к разработке сложных транспортных изделий и управлению ИТ системами на разных предприятиях в отрасли машиностроения и не только. Поэтому я хорошо знаю как устроен бизнес, в основе которого лежит разработка и конструирование, знаю типичные ошибки, а также ключевые факторы для достижения успеха в разработке и производстве новых сложных изделий, а также достижения конкурентных преимуществ в таком серьезном бизнесе как машиностроение.

В далеком 2006 году почти случайно я устроился на работу сисадмином в НТЦ на одном крупном предприятии почти в самый первоначальный момент создания нового направления по производству автобусов и троллейбусов, я наблюдал все первоначальные грабли и был причастен к определенным успехам этого направления. Подробнее и кому интересно — под катом.


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

[Перевод] Песочница для Nginx

Fri, 10/15/2021 - 01:15

Как-то я болтала с приятелем о том, как было бы здорово, если бы был такой сайт-песочница, где бы можно было просто скопировать-вставить конфиг Nginx-а и протестировать его. И я поняла, что это не так уж сложно сделать, поэтому погрузилась в тему и сделала: nginx-playground.wizardzines.com.


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

1000 тонн регенерированного урана из Франции везут в Россию. Что это значит?

Fri, 10/15/2021 - 00:34

Похоже в Россию снова ввозят ядерные материалы из Европы. Позавчера в Париже Гринпис Франции провел акцию протеста против отправки в Россию 1000 тонн регенерированного урана. Увидев в их твиттере новость об этом я понял, что скоро и в наших СМИ начнется шум. И вот он начался. Попытался на скорую руку разобраться с тем о чем идет речь, что же к нам везут, насколько это похоже на историю с ввозом ОГФУ из Германии, с которой я подробно разбирался ранее, и при чем тут выступление президента Франции Макрона.

Читать далее

Хардкорная разработка под Телеграм. Бот-модератор своими руками. Часть 3

Thu, 10/14/2021 - 23:49

Продолжаем писать своего крутого бота-модератора чатов на Python.

В этой части мы сделаем команды для модерации. Админы чата смогут банить участников, запрещать им писать в чате, давать предупреждения с помощью команд /ban, /mute, /warn.

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

Читать далее

Google подала встречный иск против Epic

Thu, 10/14/2021 - 23:06

Google подала встречный иск против Epic Games. Компания считает, что создатель Fortnite нарушил соглашение о распространении продуктов (DDA) в Google Play, введя возможность совершать покупки в обход платежной системы магазина приложений. 

Читать далее

Как мы автоматизируем iOS: настройка Gitlab CI + Fastlane + Firebase + ItunesConnect

Thu, 10/14/2021 - 20:13

В основном идея использования CI/CD для iOS, да и для других платформ, — это автоматизация рутинной работы. Когда мы работаем над одним приложением, можем вручную собирать небольшой проект. Но команда растёт, хочется тратить время эффективнее, чем вручную собирать проект или объяснять новичкам, что же там с Code-signing нужно делать.

Пожалуй, самое рутинное и самое важное занятие, которое берёт на себя CI, — это прогон тестов. Нет зелёных тестов? В master не попадёшь. А с ростом команды вероятность того, что кто-то вольёт в master нерабочий код, будет только увеличиваться. Нужна автоматизация.

В этой статье я хочу подробно рассказать о пути настройки Gitlab CI + Fastlane + Firebase + Testflight. Примеры приводятся на основе одного проекта, в котором участвовали 10 разработчиков. В конце будут описаны проблемы, с которыми мы сталкивались, и их решения.

Для кого будет полезен этот опыт? Для всех, кому нужен CI/CD и кто сидит на Gitlab. Для Github будет другая связка, например с Travis, — остальные компоненты неизменны. В нашей команде все используют Gitlab CI, Fastlane вместо голого xcodebuild для быстроты и удобства разработки, Firebase и Testflight.

Если у нас бесплатный Gitlab и мы укладываемся в лимит Firebase, то получаем бесплатное решение по настройке CI/CD.

Читать далее

Свидание, которого не было: как работает мошенническая схема Fake Date

Thu, 10/14/2021 - 20:05

Group-IB обнаружила более 700 доменов фейковых сайтов театров, стендап-шоу, ресторанов, кинотеатров, которые мошенники используют для кражи денег под видом приглашения на свидание. За последние три года схему Fake Date (фальшивое свидание — с англ.) взяли на вооружение два десятка преступных групп — выручка одной из них за год составила более 18 миллионов рублей.

Читать далее

Общение двух процессоров 1967BH028 по LVDS с использованием DMA и прерываний

Thu, 10/14/2021 - 20:00

В этой заметке рассмотрим процесс обмена данными между двумя процессорами 1967BH028 через интерфейс LVDS с использованием каналов DMA. А также вкратце ознакомимся с особенностями организации системы вызова прерываний в этом процессоре и задействуем прерывание по завершению работы канала DMA.

кнопка чтобы нажЫмац

Как взглянуть на Kubernetes с другой стороны? Рассказывает Марсель Ибраев, CTO учебного центра Слёрм

Thu, 10/14/2021 - 19:40

18 октября на образовательной онлайн платформе Слёрм стартует новый курс: Мега – поток по популярной платформе оркестрации контейнеров с открытым исходным кодом Kubernetes. Программа курса максимально широкая – чуть более, чем за месяц участники освоят 12 тем, связанных с разворачиванием отказоустойчивого кластера и решением продвинутых задач по обеспечению стабильности и безопасности кластера и деплою приложений, узнают как Kubernetes работает изнутри, разберутся с тонкостями установки и конфигурации кластера и получат незаменимые практические навыки обращения с инфраструктурой.

Читать далее

Как подружить SRE с разработкой, а на сдачу улучшить качество сервиса

Thu, 10/14/2021 - 19:34

В декабре 2019-го в Dodo новые фичи  стали выкатываться неприлично долго. Когда у разработчиков спросили, что им мешает держать высокую скорость поставки фич, в топе ответов оказались жалобы на нестабильную работу тестовых стендов и медленную обработку тикетов. Команда SRE сильно удивилась — о некоторых проблемах знали, но не думали, что они настолько серьёзные. Кроме того, между разработчиками и SRE взаимоотношения были, мягко говоря, не очень хорошие.

Это статья не про волшебные пендали, а про то, как постепенное изменение мышления, подхода, процессов и отношения позволило улучшить опыт взаимодействия разработчиков с командой SRE, уменьшить тойл и снизить градус разобщённости.

Читать далее

Современный Frontend: проблемы и пути решения. Пишем React-like приложение со строгой типизацией без сборщиков

Thu, 10/14/2021 - 19:28

Всем привет! Меня зовут Петр Солопов, я руководитель отдела фронтенд-разработки в SuperJob. Думаю, многие из вас видели популярную серию картинок в интернете про фронтенд и бэкенд: на бекенде всегда какой-то монстр, а на фронте — все мило, летают бабочки. На мой взгляд, это не соответствует действительности и все не так радужно и безоблачно: чего только стоят настройка Webpack, тона зависимостей, особенности фреймворков и многое другое. За подробностями под кат.

Читать далее

Чего стоит карьеру в EdTech построить: перспективы отрасли и роль IT-специалистов в ней

Thu, 10/14/2021 - 19:26

До пандемии отрасль EdTech развивалась весьма активно, а после наступления Covid-19 скорость роста повысилась в несколько раз. К 2025 году объем рынка EdTech увеличится с $250 млрд по состоянию на 2020 год до $404 млрд. В России тоже все отлично: по итогам 2020 года суммарная выручка топ-60 EdTech компаний выросла более чем на 113% по сравнению с предыдущим годом —  на 34 млрд рублей. В 2022 году эксперты прогнозируют повышение объема рынка до 60 млрд рублей. Растет и спрос на IT-специалистов, ведь они - главный драйвер отрасли. 

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

Читать далее

5 факторов, которые нужно учитывать при прогнозировании товарных запасов

Thu, 10/14/2021 - 18:44

Привет, Хабр! Меня зовут Александр Грицай, CEO компании Forecast NOW!. Сегодня я хотел бы поговорить о работе с товарными запасами - аналитике, прогнозировании и т.п. Все это - важно для любой отрасли, где продают что-то материальное, товары, которые хранятся на складе. 

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

Читать далее

RustCon Contest 2021 — соревнование для тех, кто пишет на Rust и тех, кто только к нему подступается

Thu, 10/14/2021 - 18:03

В прошлой статье мы писали, что давно пора снова собрать русскоязычное сообщество rust-разработчиков, и поэтому в декабре проведем RustCon Russia. Так вот, при подготовке конференции мы поняли, что есть два разных сегмента тех, кому интересен Rust. Первые — это те, кто уже пишут на нем. Вторые - те, кто только начал изучать или подумывает об этом. Питонисты, плюсеры, рубисты - все, кто понял, что у раста есть очень крутые преимущества, и пора бы изучить их подробнее.

В-общем, анонсируем RustCon Contest — индивидуальные соревнования по программированию на rust, где опытные разработчики могут внести вклад в открытые rust-проекты, а начинающие - попробовать rust на вкус на простых и чуть более сложных задачках. И те, и другие могут выиграть билет на RustCon, получить фирменный мерч или приличную скидку. Подробности под катом.

Читать далее

[Перевод] Парадокс, положивший начало научным вычислениям

Thu, 10/14/2021 - 18:00


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

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

Who's online

There are currently 1 user and 1 guest online.