METANIT.COM – Telegram
METANIT.COM
5.94K subscribers
1.69K photos
81 videos
9 files
1.06K links
Канал о программировании и разработке сайта metanit.com
Download Telegram
4 базовых стратегии масштабирования БД:

1) Кэширование запросов к базе данных
Кэширование запросов к базе данных — одно из самых простых улучшений, которое можно применить для обработки нагрузки на базу данных.
Уменьшите нагрузку за счет кэширования часто запрашиваемых результатов запросов.
Такие инструменты, как Redis или Memcached, сохраняют эти результаты в памяти, позволяя приложению быстрее извлекать данные без повторного обращения к БД.

2) Индексы базы данных
Еще одна простая стратегия, которая обеспечивает колоссальный прирост производительности.
Индексирование ускоряет поиск данных, обеспечивая быстрое нахождение данных без сканирования каждой строки.
Обычно реализуемые с помощью B-деревьев, индексы снижают сложность времени доступа к данным с O(n) до O(log n). Значительно более быстрые запросы.

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

4) Шардинг базы данных
В то время как предыдущие стратегии фокусировались на обработке нагрузки чтения, шардинг фокусируется на чтении и записи.
Шардинг подразумевает разделение базы данных на более мелкие независимые части (шарды), каждая из которых обрабатывает подмножество данных. Это обеспечивает горизонтальное масштабирование путем распределения нагрузки по нескольким серверам. Несмотря на свою мощь, шардинг значительно усложняет управление данными и логику запросов.
Обычно такую ​​стратегию стоит рассматривать только после того, как исчерпаны другие, более простые решения.
👍72👏1🤪1
(Наглядная иллюстрация к предыдущему посту)
1🔥1👏1
JetBrains сделал среду разработки CLion бесплатной для некоммерческого использования. CLion - это среда, заточенная под разработку на C/C++
Бесплатная CLion по некоммерческой лицензии является полнофункциональной IDE, которая идентична платной версии.Некоммерческие подписки выдаются на один год и автоматически продлеваются после этого при использовании хотя бы один раз в течение последних 6 месяцев периода подписки.

Но есть нюансы!
1)Нужна учетная запись JetBrains для регистрации некоммерческой лицензии
2)Бесплатная CLion предполагает, что продукт также может в электронном виде отправлять JetBrains анонимную статистику (телеметрию IDE), связанную с использованием функций продукта. Эта информация может включать, помимо прочего, фреймворки, шаблоны файлов, используемые в продукте, вызванные действия и другие взаимодействия с функциями продукта.
https://blog.jetbrains.com/clion/2025/05/clion-is-now-free-for-non-commercial-use/
Сама среда https://www.jetbrains.com/clion/download/
👍10👎43🔥3🍌3😁1🤮1💩1🤡1
Шпаргалка по управлению правами доступа в Linux (Linux Access Control) #linux
👍8🔥1👏1
Основные аспекты облачных вычислений
👍21🔥1👏1
Для любителей языка Pascal: вышел новый релиз среды разработки Lazarus - 4.0, которая основанна на компиляторе языка FreePascal и во многом похожа на Delphi. Lazarus является беслпатным и кроссплатформенным - есть сборки для Linux, macOS и Windows. Среда рассчитана на работу с выпуском компилятора FreePascal 3.2.2.

Основные изменения:
- добавлена поддержка встраиваемых панелей и реализован встраиваемый вариант окна с редактором.
- расширены возможности редактора кода. Предложена новая реализация вкладок. Улучшена подсветка модификаторов Proc и Var. Предложены настройки отступов и ширины
- в отладчике расширены возможности для работы с точками прерывания
- добавлена возможность загрузки и настройки пакета Pas2js для разработки web-приложений
- добавлен плагин Icon Finder
- улучшен компонент TListView для macOS
- расширены возможности компонентов TTaskDialog, TCalendarDialog, TOpenDialog, TShape, TLabeledEdit, TTimeEdit, TColorDialog, TFilenameEdit, TMenu и TMenuItem
https://www.lazarus-ide.org/
🤣29👍24🎉7🔥2👏2🐳2🌚2🤡1🆒1
Разработчики платформы Uno Platform - платформы для создания кросс-платформенных приложений на .NET выпустили большой релиз платформы в виде продуктов Uno Platform Studio и Uno Platform 6.0.
Эта платформа позволяет создавать кроссплатформенные приложения на .NET под все основные платформы - Windows, Linux, MacOS, Web, Wasm, Android, iOS.
Для этого платформа прдоставляет большой набор элементов управления - WinUI, Windows Community Toolkit, Uno Toolkit, MAUI Embedding, Skia-based controls.

Основные моменты нового релиза:
1. Представлен продукт Uno Platform Studio — набор инструментов для повышения продуктивности, интегрируемых с популярными IDE (Visual Studio, Rider, VS Code) и работающих на любой ОС.
Основные функции:
Hot Design: Первый в отрасли визуальный дизайнер для кроссплатформенных .NET-приложений, позволяющий в реальном времени редактировать интерфейс без перезапуска приложения.
Hot Reload: Мгновенное обновление кода (XAML и C#) с индикатором успешных изменений и понятными сообщениями об ошибках.
Design-to-Code: Преобразование дизайнов из Figma в чистый, готовый к использованию XAML или C# код одним кликом.
Стоит отметить, что есть общедоступная версия (бесплатная) с немного урезанными функциями и платная со всеми функциями

2. Uno Platform 6.0 — значительное обновление платформы
Новая архитектура: Платформа полностью переработана для повышения скорости, упрощения использования и подготовки к новым инструментам и ИИ-функциям.
Единый рендеринг на основе Skia: Обеспечивает значительные улучшения производительности:
До 3x быстрее запуск приложений (время старта на мобильных устройствах сокращено до 0,5 секунды).
75% меньше занимаемого пространства, 60% быстрее запуск, 30% меньше потребление памяти и 45x быстрее выполнение.
Кроссплатформенность: Поддержка Windows, macOS, iOS, Android, WebAssembly и Linux с единым кодом на C# и XAML.
Открытый исходный код: Основные функции платформы остаются бесплатными и открытыми, что делает её доступной для всех разработчиков.

https://platform.uno/blog/uno-platform-studio-6-0/
#dotnet #csharp
🔥181👍1👏1
Стек платформы Uno Platform
🔥111👏1
Hive Systems обновила свой набор тестов взлома паролей, добавив 12 видеокарт RTX 5090, и обнаружила, что все двенадцать карт, работая вместе, могут взломать простые пароли из 8-цифровой менее чем за 15 минут. Это в два раза быстрее, чем RTX 4090.
Пароли, состоящие из восьми строчных букв, 12 карт RTX 5090 смогли взломать за 3 недели.
С другой стороны, пароли, использующие преимущества цифр, заглавных и строчных букв, потребовали бы 12 RTX 5090 62 года для взлома и 164 года для взлома с добавлением символов.
Одна RTX 5090 может взломать хэш пароля из 8 цифр за три часа. Одна RTX 4090 может выполнить ту же задачу за 4 часа, что означает повышение производительности RTX 5090 на 33%. Однако по мере увеличения сложности пароля RTX 5090 становится все быстрее и быстрее по сравнению с RTX 4090.
https://www.tomshardware.com/pc-components/gpus/nvidia-rtx-5090-can-crack-an-8-digit-passcode-in-just-3-hours
👍6
5 полезных, но малоизвестных функций Entity Framework Core, которые могут пригодиться

1. Разделение запроса
- Разделяет JOIN на несколько запросов
- Может улучшить производительность запросов

2. Массовые обновления
- Использует ExecuteUpdate для обновления множества сущностей
- Напрямую отправляется в БД, не является частью единицы работы

3. Необработанные SQL-запросы
- Загрузка сущностей из БД с использованием чистого SQL
- Позволяет использовать функции SQL

4. Массовое удаление
- Использует ExecuteUpdate для удаления множества сущностей
- Напрямую идет в БД, не является частью единицы работы

5. Игнорирование фильтров запросов
- Фильтр запросов позволяет автоматически фильтровать запросы LINQ
- Игнорирование фильтра запроса иногда может быть полезным
14👍54
Диаграмма архитектуры Linux
🔥15👍3👏2
Краткая шпаргалка по сложности алгоритмов
👍209🔥5