Средние highload паттерны на Go
Меня зовут Агаджанян Давид и ранее я опубликовал статью «простые highload паттерны на Go», в которой были рассмотрены простые подходы увеличения пропускной способности отдельно взятого экземпляра приложения без хардкора. Мне импонируют простые подходы, так как over engineering подходы требуются в исключительных проектах, и то чаще всего только в отдельно взятых подсистемах, в остальном можно воспользоваться давно известными лучшими практиками. Статья ориентирована на начинающих разработчиков и может служить отправной точкой для дальнейшего изучения. В этой статье подходы ориентированы на масштабирование приложения при верхнеуровневом рассмотрении. Подходы универсальны, приписка языка Go только потому, что сама реализация приложения на нем. Для наглядности, примеры будут упрощены, а чтобы было интереснее наблюдать, проведем замеры производительности. Ну и конечно же делитесь своим опытом масштабирования, буду рад взять на заметку.
https://habr.com/ru/articles/684904/
#golang@bookflow
👉 @Bookflow
Меня зовут Агаджанян Давид и ранее я опубликовал статью «простые highload паттерны на Go», в которой были рассмотрены простые подходы увеличения пропускной способности отдельно взятого экземпляра приложения без хардкора. Мне импонируют простые подходы, так как over engineering подходы требуются в исключительных проектах, и то чаще всего только в отдельно взятых подсистемах, в остальном можно воспользоваться давно известными лучшими практиками. Статья ориентирована на начинающих разработчиков и может служить отправной точкой для дальнейшего изучения. В этой статье подходы ориентированы на масштабирование приложения при верхнеуровневом рассмотрении. Подходы универсальны, приписка языка Go только потому, что сама реализация приложения на нем. Для наглядности, примеры будут упрощены, а чтобы было интереснее наблюдать, проведем замеры производительности. Ну и конечно же делитесь своим опытом масштабирования, буду рад взять на заметку.
https://habr.com/ru/articles/684904/
#golang@bookflow
👉 @Bookflow
👍2👎1
Работа с хранилищами в Kubernetes: руководство для инженеров
Как DevOps-инженер я часто сталкиваюсь с необходимостью глубокого понимания тонких аспектов Kubernetes. Одним из таких ключевых элементов является управление хранилищем данных. Хотя этот элемент иногда остаётся в тени других задач, его важность для успешного развёртывания и поддержки приложений велика.
Накопленный мною опыт в этой области стал основой для этой статьи.
Я сфокусируюсь на трёх ключевых элементах управления хранилищем в Kubernetes:
PersistentVolumes (PV).
PersistentVolumeClaims (PVC).
Storage Classes.
https://habr.com/ru/companies/T1Holding/articles/781368/
#devops@bookflow
👉 @Bookflow
Как DevOps-инженер я часто сталкиваюсь с необходимостью глубокого понимания тонких аспектов Kubernetes. Одним из таких ключевых элементов является управление хранилищем данных. Хотя этот элемент иногда остаётся в тени других задач, его важность для успешного развёртывания и поддержки приложений велика.
Накопленный мною опыт в этой области стал основой для этой статьи.
Я сфокусируюсь на трёх ключевых элементах управления хранилищем в Kubernetes:
PersistentVolumes (PV).
PersistentVolumeClaims (PVC).
Storage Classes.
https://habr.com/ru/companies/T1Holding/articles/781368/
#devops@bookflow
👉 @Bookflow
👍4❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Wagyu
Библиотека Rust для быстрого и простого создания криптовалютных кошельков, которую можно использовать как утилиту командной строки или создавать на базе нее криптовалютные приложения.
https://github.com/AleoHQ/wagyu
#rust@bookflow
👉 @Bookflow
Библиотека Rust для быстрого и простого создания криптовалютных кошельков, которую можно использовать как утилиту командной строки или создавать на базе нее криптовалютные приложения.
https://github.com/AleoHQ/wagyu
#rust@bookflow
👉 @Bookflow
❤2👍2
Подборка односложных выражений на языке Python, которые повысят вашу производительность
Deleting multiple elements from a list
Factorial of a number
https://github.com/Allwin12/python-one-liners
#python@bookflow
👉 @Bookflow
Deleting multiple elements from a list
li = [1, 2, 3, 4, 5]
del li[0:3]
# [4, 5]Factorial of a number
import math; fact_5 = math.factorial(5)
https://github.com/Allwin12/python-one-liners
#python@bookflow
👉 @Bookflow
👍3
Как создавать собственные пользовательские React Hooks
React Hooks открывают совершенно новый способ написания функциональных компонентов, позволяя нам добавлять возможности, доступные для компонентов класса, например, логику с состоянием.
https://blog.logrocket.com/create-your-own-custom-react-hooks/
#react@bookflow
👉 @Bookflow
React Hooks открывают совершенно новый способ написания функциональных компонентов, позволяя нам добавлять возможности, доступные для компонентов класса, например, логику с состоянием.
https://blog.logrocket.com/create-your-own-custom-react-hooks/
#react@bookflow
👉 @Bookflow
👍1
Идеальная передача и универсальные ссылки в C++
https://eli.thegreenplace.net/2014/perfect-forwarding-and-universal-references-in-c
#cpp@bookflow
👉 @Bookflow
https://eli.thegreenplace.net/2014/perfect-forwarding-and-universal-references-in-c
#cpp@bookflow
👉 @Bookflow
👍3❤2
Вывести последнюю запись в SQL
Для того чтобы вывести последнюю запись из таблицы в SQL можно воспользоваться следующим запросом:
Где
#db@bookflow
👉 @Bookflow
Для того чтобы вывести последнюю запись из таблицы в SQL можно воспользоваться следующим запросом:
SELECT *
FROM table_name
ORDER BY id DESC
LIMIT 1;Где
table_name - это название таблицы, а id - это уникальный идентификатор записи. Здесь мы сначала сортируем записи по убыванию id, затем с помощью LIMIT 1 ограничиваем результат одной записью, что и позволяет вывести последнюю запись из таблицы.#db@bookflow
👉 @Bookflow
👍8
Sherlock
Поиск аккаунтов социальных сетей по имени пользователя во всех социальных сетях
https://github.com/sherlock-project/sherlock
#github@bookflow
👉 @Bookflow
Поиск аккаунтов социальных сетей по имени пользователя во всех социальных сетях
https://github.com/sherlock-project/sherlock
#github@bookflow
👉 @Bookflow
👍3
Пишем нативный потоковый пайплайна на Go
За последний год в Beam Go Sdk появилось несколько функций для поддержки нативных потоковых DoFns. В этом докладе Дэнни, инженер-программист Google, и Джек, инженер-программист Google, расскажут об этих функциях и обсудят, как их можно использовать для создания потоковых конвейеров, написанных полностью на Go.
Вы получите представление о некоторых проблемах, связанных с обработкой неограниченных наборов данных. Вы также узнаете, как можно построить собственные потоковые DoFns для решения этих проблем.
https://www.youtube.com/watch?v=PNDY2OYASrE
#golang@bookflow
👉 @Bookflow
За последний год в Beam Go Sdk появилось несколько функций для поддержки нативных потоковых DoFns. В этом докладе Дэнни, инженер-программист Google, и Джек, инженер-программист Google, расскажут об этих функциях и обсудят, как их можно использовать для создания потоковых конвейеров, написанных полностью на Go.
Вы получите представление о некоторых проблемах, связанных с обработкой неограниченных наборов данных. Вы также узнаете, как можно построить собственные потоковые DoFns для решения этих проблем.
https://www.youtube.com/watch?v=PNDY2OYASrE
#golang@bookflow
👉 @Bookflow
👍5
Как хранить переменные в terraform?
#devops@bookflow
👉 @Bookflow
main.tf — основной конфигурационный файл, описывающий, какие инстансы необходимо создать. variables.tf — конфигурация с описанием переменных и значениями по умолчанию. Если значения по умолчанию не задано, то они являются обязательными. terraform.tfvars — конфигурация со значениями переменных. Часто является секретным файлом, поэтому нужно с осторожностью пушить в публичные репозитарии. outputs.tf — описание выходных переменных. Необязательный файл, но очень удобно выделять нужные параметры из созданного инстанса, например IP созданного в облаке инстанса.#devops@bookflow
👉 @Bookflow
👍4
Назовите меня предвзятым, но у Vue действительно самый чистый синтаксис шаблонов. Писать легко, и при этом он достаточно выразителен.
А каково ваше мнение?
👉 @Bookflow
А каково ваше мнение?
👉 @Bookflow
👍10❤2🔥2🗿2
Rust: параметризуем мутабельность через маркеры и ассоциированные типы
Borrow-checker — отличный секюрити, который очень эффективен, если мы находимся в безопасном Rust. Его поведение отлично описано в RustBook, и, по крайней мере, я почти никогда не сталкиваюсь с придирками, которым я бы не был благодарен.
Но вот когда нужно написать семантически-безопасный API над функциями и данными, которые вообще не безопасны — у меня всё стало валиться из рук. Последние пару дней я потратил на то, чтобы придумать элегантный способ параметризации мутабельности. Над тем, чтобы на уровне API сохранялась семантика — зависимость изменяемости полей друг от друга. Даже если на самом деле они живут сами по себе.
https://habr.com/ru/articles/703018/
#rust@bookflow
👉 @Bookflow
Borrow-checker — отличный секюрити, который очень эффективен, если мы находимся в безопасном Rust. Его поведение отлично описано в RustBook, и, по крайней мере, я почти никогда не сталкиваюсь с придирками, которым я бы не был благодарен.
Но вот когда нужно написать семантически-безопасный API над функциями и данными, которые вообще не безопасны — у меня всё стало валиться из рук. Последние пару дней я потратил на то, чтобы придумать элегантный способ параметризации мутабельности. Над тем, чтобы на уровне API сохранялась семантика — зависимость изменяемости полей друг от друга. Даже если на самом деле они живут сами по себе.
https://habr.com/ru/articles/703018/
#rust@bookflow
👉 @Bookflow
👍4❤1
Совет по Javascript 💡
Для лучшей отладки используйте именованные выражения стрелочных функций для критических/часто используемых callback'ов ✅
#frontend@bookflow
👉 @Bookflow
Для лучшей отладки используйте именованные выражения стрелочных функций для критических/часто используемых callback'ов ✅
#frontend@bookflow
👉 @Bookflow
👍4
Как создать Minecraft на Python? Обзор библиотеки Ursina Engine
Среди любителей Minecraft много энтузиастов: пока одни просто играют, другие запускают целые серверы и пишут модификации. А кто-то идет дальше и разрабатывает собственные песочницы. Последнее достаточно просто сделать на Python.
Под катом делюсь основами работы с библиотекой Ursina Engine и показываю, как с помощью нее создать мир из кубов.
https://habr.com/ru/companies/selectel/articles/704040/
#python@bookflow
👉 @Bookflow
Среди любителей Minecraft много энтузиастов: пока одни просто играют, другие запускают целые серверы и пишут модификации. А кто-то идет дальше и разрабатывает собственные песочницы. Последнее достаточно просто сделать на Python.
Под катом делюсь основами работы с библиотекой Ursina Engine и показываю, как с помощью нее создать мир из кубов.
https://habr.com/ru/companies/selectel/articles/704040/
#python@bookflow
👉 @Bookflow
👍3
Деструктуризация в React. Очевидно, но важно
Деструктуризация, которая появилась в стандарте ES6, уже не вызывает вопросов у многих из нас, есть большое количество статей, раскрывающих ее возможности. В основном, мы все тесно с ней дружим и пользуемся.
Казалось бы, что можно рассказать о том, о чем все и так знают? Но практика и чтение статей на Хабре, показали, что есть некоторые нюансы использования деструктуризации в React, о которых не все из нас знают или просто не задумываются, хотя они и являются очевидными.
Как часто Вам приходилось сталкиваться с подобным кодом?
https://habr.com/ru/articles/804187/
#react@bookflow
👉 @Bookflow
Деструктуризация, которая появилась в стандарте ES6, уже не вызывает вопросов у многих из нас, есть большое количество статей, раскрывающих ее возможности. В основном, мы все тесно с ней дружим и пользуемся.
Казалось бы, что можно рассказать о том, о чем все и так знают? Но практика и чтение статей на Хабре, показали, что есть некоторые нюансы использования деструктуризации в React, о которых не все из нас знают или просто не задумываются, хотя они и являются очевидными.
Как часто Вам приходилось сталкиваться с подобным кодом?
export default function ParentComponent ({ post }) {
const { images, title } = post
return (
<ChildComponent images={images} title={title} />
)
}https://habr.com/ru/articles/804187/
#react@bookflow
👉 @Bookflow
👍4
Input parser - библиотека для парсинга командной строки
https://github.com/gianluisdiana/InputParser
#cpp@bookflow
👉 @Bookflow
https://github.com/gianluisdiana/InputParser
#cpp@bookflow
👉 @Bookflow
👍4
Foreign key sql что это
Foreign key (внешний ключ) в SQL - это столбец или набор столбцов в таблице, который связывается с Primary key (основным ключом) или уникальным ключом в другой таблице. Он служит для установления связи между двумя таблицами и обеспечивает целостность данных, позволяя контролировать ссылочную целостность в базе данных.
Foreign key определяет отношение между двумя таблицами: родительской таблицей (содержащей основной ключ) и дочерней таблицей (содержащей внешний ключ). Связь между ними обеспечивает ссылочную целостность, что означает, что значения внешнего ключа должны существовать как значения в основном ключе в другой таблице.
При использовании внешнего ключа в SQL можно устанавливать правила для обновления и удаления данных в связанных таблицах. Например, можно настроить каскадное удаление, чтобы при удалении записи из родительской таблицы также удалялись связанные записи из дочерней таблицы.
Использование внешнего ключа в SQL повышает целостность данных, обеспечивает надежность связей между таблицами и упрощает работу с данными, позволяя избегать ошибок при внесении изменений в базу данных.
#db@bookflow
👉 @Bookflow
Foreign key (внешний ключ) в SQL - это столбец или набор столбцов в таблице, который связывается с Primary key (основным ключом) или уникальным ключом в другой таблице. Он служит для установления связи между двумя таблицами и обеспечивает целостность данных, позволяя контролировать ссылочную целостность в базе данных.
Foreign key определяет отношение между двумя таблицами: родительской таблицей (содержащей основной ключ) и дочерней таблицей (содержащей внешний ключ). Связь между ними обеспечивает ссылочную целостность, что означает, что значения внешнего ключа должны существовать как значения в основном ключе в другой таблице.
При использовании внешнего ключа в SQL можно устанавливать правила для обновления и удаления данных в связанных таблицах. Например, можно настроить каскадное удаление, чтобы при удалении записи из родительской таблицы также удалялись связанные записи из дочерней таблицы.
Использование внешнего ключа в SQL повышает целостность данных, обеспечивает надежность связей между таблицами и упрощает работу с данными, позволяя избегать ошибок при внесении изменений в базу данных.
#db@bookflow
👉 @Bookflow
👍6
Boxxy
Упаковывает неправильно работающих приложений GNU/Linux
https://github.com/queer/boxxy
#github@bookflow
👉 @Bookflow
Упаковывает неправильно работающих приложений GNU/Linux
https://github.com/queer/boxxy
#github@bookflow
👉 @Bookflow
👍3
Паттерны гонки данных в Go
Uber использует язык Golang (сокращенно Go) в качестве основного языка программирования для разработки микросервисов. Наш монорежим Go состоит примерно из 50 миллионов строк кода (и продолжает расти) и содержит около 2 100 уникальных сервисов Go (и продолжает расти).
https://www.uber.com/blog/data-race-patterns-in-go/
#golang@bookflow
👉 @Bookflow
Uber использует язык Golang (сокращенно Go) в качестве основного языка программирования для разработки микросервисов. Наш монорежим Go состоит примерно из 50 миллионов строк кода (и продолжает расти) и содержит около 2 100 уникальных сервисов Go (и продолжает расти).
https://www.uber.com/blog/data-race-patterns-in-go/
#golang@bookflow
👉 @Bookflow
👍2
Использование Open ID Connect (OIDC) в Terraform для безопасного мультиаккаунтного CI/CD в AWS
В этом посте мы рассмотрим, как можно повысить уровень безопасности, используя Open ID Connect (OIDC) в качестве механизма аутентификации в CI/CD конвейерах для развертывания инфраструктуры на базе Terraform в Amazon Web Services (AWS).
https://hedrange.com/2023/10/07/adopt-open-id-connect-oidc-in-terraform-for-secure-multi-account-ci-cd-to-aws
#devops@bookflow
👉 @Bookflow
В этом посте мы рассмотрим, как можно повысить уровень безопасности, используя Open ID Connect (OIDC) в качестве механизма аутентификации в CI/CD конвейерах для развертывания инфраструктуры на базе Terraform в Amazon Web Services (AWS).
https://hedrange.com/2023/10/07/adopt-open-id-connect-oidc-in-terraform-for-secure-multi-account-ci-cd-to-aws
#devops@bookflow
👉 @Bookflow
🔥3👏1