Pull to refresh
1
Send message

Миграция API с Framework на .NET6 — скандалы, интриги, расследования и немного выводов

Level of difficultyMedium
Reading time11 min
Reach and readers6.4K

Давным-давно, во времена, когда по Земле бродили цифровые динозавры, а разработчики .NET ещё помнили, зачем нужна технология WebForms (и какие у неё были проблемы с производительностью), в Контуре появился продукт под названием Фокус, предназначенный для проверки контрагентов. И у этого продукта довольно быстро появился API, ориентированный на крупных клиентов.

ASP.NET MVC был ещё в новинку, до появления WebAPI оставались годы, и отцы-основатели проекта приняли вполне актуальное, с учётом реалий того времени, решение: делать API на базе ashx-хендлеров, чтобы максимально повысить скорость работы.

Шли годы, .NET Framework сперва меняла версии как ветреная красавица перчатки, а потом и вовсе перешла в разряд «для поддержки жизнедеятельности требуется опытный некромант», .NET Core сперва появился, а потом благополучно переименовался в просто .NET, дорос до 6-й, а потом и 7-й версии… а API Фокуса всё ещё жил по старому, доброму принципу «работает — не трогай». И вот, наконец небосвод провернулся, и звёзды сошлись в нужной позиции. Мы поехали на .NET 6.

Оговорюсь сразу, что сам переезд произошёл примерно полгода назад, когда .NET 8 ещё находилась в стадии альфы. Именно поэтому в качестве целевой версии .NET была выбрана именно стабильная 6-я. Тем не менее большинство проблем будут актуальны и при миграции на 8-ю версию.

Читать далее

Запускаем игры под Wine c поддержкой Native Wayland

Level of difficultyMedium
Reading time19 min
Reach and readers22K

Wine Wayland


Иллюстрации к статье подготовлены нейросетью freepik.com.


Многие люди на планете играют в видеоигры. Игры помогают улучшить когнитивные способности, провести приятно свободное время. Данная статья посвящена тому, как запустить Windows-игры под Linux в Wayland.


Эта статья могла бы быть: ставим Wine(Proton) и XWayland, запускаем игры, успех, но нет. В данном материале мы будем сами собирать Wine, решать проблемы, а так же наш Wine будет работать напрямую с Wayland композитором без прослойки в виде XWayland. Плюсы такого метода — лучшая производительность и меньше инпут лаг. Благодаря Wine 9.0 это стало возможно, но не все так просто, как может показаться читателю с первого взгляда. Для примера мы запустим игры: Overwatch 2 через Battle.net клиент и Aimbeast, KovaaK's, Apex Legends через Steam.


Если вас заинтересовала статья, то добро пожаловать под cut.

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

Окно индикации какого-то процесса на Qt

Level of difficultyMedium
Reading time3 min
Reach and readers5.1K

Итак хочу поделится большой радостью ибо наконец-то сделал универсальное всплывающее окно (на Qt) для индикации (логгирования) хода выполнения каких-то долгих команд.

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

Все это реализуется без проблем через вызов метода invokeMethod.

Через параметры QVariant мы можем передавать и возвращать все , что угодно - какие-то свои классы, главное не забыть в конце определения таких классов добавлять макрос Q_DECLARE_METATYPE(имя вашего класса)

Читать далее

Управление памятью в Linux

Level of difficultyEasy
Reading time7 min
Reach and readers37K

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

Читать далее

Nvidia представила Chat with RTX — приложение для локального запуска LLM

Reading time1 min
Reach and readers16K

Nvidia представила приложение Chat with RTX, которое позволяет запускать большие языковые модели локально. Для работы необходимо наличие видеокарты RTX 30 или 40 и 16 ГБ оперативной памяти.

Читать далее

Проект по разработке свободного программного обеспечения (СПО) GNU опубликовал выпуск библиотеки libmicrohttpd 1.0.0,...

Reading time1 min
Reach and readers99

Проект по разработке свободного программного обеспечения (СПО) GNU опубликовал выпуск библиотеки libmicrohttpd 1.0.0, который отмечен как первый стабильный релиз за 16 лет существования проекта.

Библиотека написана на языке C и представляет простой API для встраивания функциональности HTTP-сервера в приложения. Среди поддерживаемых платформ: GNU/Linux, FreeBSD, OpenBSD, NetBSD, Solaris, Android, macOS, Win32 и z/OS.

Исходный код проекта распространяется под лицензией LGPL 2.1+. При сборке по умолчанию библиотека занимает около 200 КБ, а в минимальном режиме сборки — 32 КБ. В зависимостях используется только libc, а также libgnutls при опциональной сборке с поддержкой TLS.

Библиотека libmicrohttpd 1.0.0 поддерживает протокол HTTP 1.1, TLS, инкрементальную обработку POST запросов, приём соединений с нескольких сетевых портов, basic‑ и digest‑аутентификацию, IPv6, SHOUTcast, различные методы мультиплексирования соединений (select, poll, epoll) и модели многопоточности (например, можно использовать пул потоков или поток на соединение). Для снижения накладных расходов, возникающих при переключении контекста между ядром и пространством пользователя, число системных вызовов в процессе работы сведено к минимуму. Безопасность кодовой базы libmicrohttpd подтверждена аудитами, проведёнными компаниями Mozilla и Red Hat.

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

Information

Rating
Does not participate
Registered
Activity

Specialization

Specialist
Ведущий
From 500,000 ₽
C#
Python
JavaScript