This media is not supported in your browser
VIEW IN TELEGRAM
Qrcp
Передавайте файлы по Wi-Fi с компьютера на мобильное устройство, сканируя QR-код, не отходя от терминала.
https://github.com/claudiodangelis/qrcp
#github@bookflow
👉 @Bookflow
Передавайте файлы по Wi-Fi с компьютера на мобильное устройство, сканируя QR-код, не отходя от терминала.
https://github.com/claudiodangelis/qrcp
#github@bookflow
👉 @Bookflow
👍7
This media is not supported in your browser
VIEW IN TELEGRAM
IntelliJ IDEA 2024.3 уже здесь!
AI Assistant присоединился к вечеринке с быстрым и точным автодополнением кода! ⚡
https://blog.jetbrains.com/ai/2024/11/jetbrains-ai-assistant-2024-3/
👉 @Bookflow
AI Assistant присоединился к вечеринке с быстрым и точным автодополнением кода! ⚡
https://blog.jetbrains.com/ai/2024/11/jetbrains-ai-assistant-2024-3/
👉 @Bookflow
👍3
Ускорение роутера в Django в 51 раз
История началась с разбора использования ресурсов приложением, которое занимается проксированием. Обнаружили, что довольно много времени оно тратит на выбор маршрута (роута), и решили ускорить этот процесс. Описанная в статье оптимизация не требует каких-то особых вложений, усилий или условий, поэтому приведенный код можно забрать к себе и использовать без каких-либо чрезмерных вмешательств.
https://habr.com/ru/companies/tochka/articles/822431/
#python@bookflow
👉 @Bookflow
История началась с разбора использования ресурсов приложением, которое занимается проксированием. Обнаружили, что довольно много времени оно тратит на выбор маршрута (роута), и решили ускорить этот процесс. Описанная в статье оптимизация не требует каких-то особых вложений, усилий или условий, поэтому приведенный код можно забрать к себе и использовать без каких-либо чрезмерных вмешательств.
https://habr.com/ru/companies/tochka/articles/822431/
#python@bookflow
👉 @Bookflow
👍1
Использование миграций баз данных в Go
Недавно мы столкнулись с необходимостью найти библиотеку для удобной работы с базами данных. В нашем проекте команда решила не использовать ORM (Object-Relational Mapping), а вместо этого применить миграции. Так как я работал только с ORM, мне, как и автору статьи, было мало знакомо понятие миграций баз данных. В поисках информации о миграциях и популярных решениях, я наткнулся на эту статью. Перевод статьи я оставил ниже. Возможно, она будет вам полезна. Буду признателен, если вы сможете поделиться библиотеками, которые используете.
https://habr.com/ru/articles/809301/
original https://blog.stackademic.com/using-database-migrations-with-golang-7f6736f580c8
#golang@bookflow
👉 @Bookflow
Недавно мы столкнулись с необходимостью найти библиотеку для удобной работы с базами данных. В нашем проекте команда решила не использовать ORM (Object-Relational Mapping), а вместо этого применить миграции. Так как я работал только с ORM, мне, как и автору статьи, было мало знакомо понятие миграций баз данных. В поисках информации о миграциях и популярных решениях, я наткнулся на эту статью. Перевод статьи я оставил ниже. Возможно, она будет вам полезна. Буду признателен, если вы сможете поделиться библиотеками, которые используете.
https://habr.com/ru/articles/809301/
original https://blog.stackademic.com/using-database-migrations-with-golang-7f6736f580c8
#golang@bookflow
👉 @Bookflow
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
1 - Индексация:
Проверьте шаблоны запросов вашего приложения и создайте подходящие индексы.
2 - Материализованные представления:
Предварительно вычислите результаты сложных запросов и сохраните их для более быстрого доступа.
3 - Денормализация:
Уменьшите количество сложных объединений для повышения производительности запросов.
4 - Вертикальное масштабирование:
Увеличьте мощность вашего сервер базы данных, добавляя больше процессоров, оперативной памяти или хранилища.
5 - Кэширование:
Сохраните часто запрашиваемые данные в более быстром слое хранения для снижения нагрузки на базу данных.
6 - Репликация:
Создайте реплики основной базы данных на разных серверах для масштабирования чтения.
7 - Шардинг:
Разделите таблицы базы данных на более мелкие части и распределите их по серверам. Используется для масштабирования как записи, так и чтения.
А теперь ваш ход: Какие другие стратегии вы используете для масштабирования ваших баз данных?
#db@bookflow
👉 @Bookflow
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Nala
Это внешний интерфейс для libapt-pkg. В частности, мы взаимодействуем с python-apt api.
Особенно начинающим пользователям бывает сложно понять, что пытается сделать apt при установке или обновлении.
Мы пытаемся решить эту проблему, отказавшись от отображения лишних сообщений, улучшив форматирование пакетов и используя цвет, чтобы
показать, что именно произойдет с пакетом при установке, удалении или обновлении.
https://gitlab.com/volian/nala
#python@bookflow
👉 @Bookflow
Это внешний интерфейс для libapt-pkg. В частности, мы взаимодействуем с python-apt api.
Особенно начинающим пользователям бывает сложно понять, что пытается сделать apt при установке или обновлении.
Мы пытаемся решить эту проблему, отказавшись от отображения лишних сообщений, улучшив форматирование пакетов и используя цвет, чтобы
показать, что именно произойдет с пакетом при установке, удалении или обновлении.
https://gitlab.com/volian/nala
#python@bookflow
👉 @Bookflow
👍3❤1
Что такое дескрипторы?
Дескрипторы — это механизм, который позволяет контролировать доступ к атрибутам классов. Они предоставляют способ определения специальных методов для доступа, присваивания и удаления атрибутов. Дескрипторы часто используются для реализации логики, связанной с доступом к данным, внутри классов.
Для создания дескриптора нужно определить класс, который реализует хотя бы один из трех вышеуказанных методов. Затем экземпляры этого класса могут быть присвоены атрибутам других классов.
#python@bookflow
👉 @Bookflow
Дескрипторы — это механизм, который позволяет контролировать доступ к атрибутам классов. Они предоставляют способ определения специальных методов для доступа, присваивания и удаления атрибутов. Дескрипторы часто используются для реализации логики, связанной с доступом к данным, внутри классов.
Для создания дескриптора нужно определить класс, который реализует хотя бы один из трех вышеуказанных методов. Затем экземпляры этого класса могут быть присвоены атрибутам других классов.
#python@bookflow
👉 @Bookflow
👍3
Пишем «Змейку» для Искры 1080 Тарту
Недавно мы познакомились с ПЭВМ Искра 1080 Тарту. Для данного компьютера написано мало программ. Достоверно известно о существовании менее тридцати, включая порты с других компьютеров. Я попытался слегка улучшить ситуацию, написав еще одну программу. Ею стала игра «Змейка».
Подготовка окружения для разработки
Программы для Искры можно писать и на самой Искре, но по нынешним меркам это не очень-то удобно. Было решено писать код на современном железе, а Искру использовать для тестирования.
Первым делом предстояло выбрать ассемблер 8080. Многие рекомендуют zasm. Но мне показалось, что это какой-то слишком сложный ассемблер. Ассемблер всего-то переводит мнемоники в машинный код и заменяет именованные метки на адреса в памяти. Притом, первое несложно делается и вручную, по табличкам. А вот пересчитывать все метки при добавлении новых инструкций — занятие действительно не самое захватывающее. Его и хотелось бы автоматизировать в первую очередь.
https://eax.me/iskra1080-zmejka/
#python@bookflow #asm@bookflow
👉 @Bookflow
Недавно мы познакомились с ПЭВМ Искра 1080 Тарту. Для данного компьютера написано мало программ. Достоверно известно о существовании менее тридцати, включая порты с других компьютеров. Я попытался слегка улучшить ситуацию, написав еще одну программу. Ею стала игра «Змейка».
Подготовка окружения для разработки
Программы для Искры можно писать и на самой Искре, но по нынешним меркам это не очень-то удобно. Было решено писать код на современном железе, а Искру использовать для тестирования.
Первым делом предстояло выбрать ассемблер 8080. Многие рекомендуют zasm. Но мне показалось, что это какой-то слишком сложный ассемблер. Ассемблер всего-то переводит мнемоники в машинный код и заменяет именованные метки на адреса в памяти. Притом, первое несложно делается и вручную, по табличкам. А вот пересчитывать все метки при добавлении новых инструкций — занятие действительно не самое захватывающее. Его и хотелось бы автоматизировать в первую очередь.
https://eax.me/iskra1080-zmejka/
#python@bookflow #asm@bookflow
👉 @Bookflow
👍6🍌1