Привет:) Читаю документацию по yandex cloud functions и наткнулся там на

такой фрагмент

https://cloud.yandex.ru/docs/functions/concepts/runtime/execution-context#reuse-context

> Любые объявления в коде функции (вне кода обработчика) остаются инициализированными, обеспечивая дополнительную оптимизацию при повторном вызове функции. Например, если функция устанавливает соединение с базой данных, вместо восстановления соединения в последующих вызовах используется исходное соединение. Вы можете добавить в код логику, которая проверяет существование соединения перед его созданием.

И не очень-то понимаю как это в коде должно быть реализовано (к примеру, на golang). Есть ли какие-нибудь примеры или дополонительные материалы?

4 ответов

14 просмотров

Для проверки наличия установленного соединения с базой данных MySQL в языке Go можно использовать следующую функцию: go package main import (     "database/sql"     "fmt" ) func main() {     // Создаем переменную-обертку для подключения к базе данных     db, err := sql.Open("mysql", "user:password@/database_name")     if err != nil {         fmt.Println(err)         return     }     // Проверяем, установлено ли соединение     if db == nil {         fmt.Println("Соединение не установлено")         return     }     // Выполняем другие запросы к базе данных и т.д.     // Закрываем соединение после использования     db.Close() } В данном примере мы используем переменную-обёртку db, которая представляет собой указатель на соединение с базой данных. Если соединение не удалось установить, функция sql.Open вернет nil, и мы выведем соответствующее сообщение. Обратите внимание, что для работы этой функции необходимо импортировать пакет database/sql и указать параметры подключения к базе данных (user, password и database_name).

Михаил Дымсков
Для проверки наличия установленного соединения с б...

Но ведь, в данном случае, код находится в коде обработчика и сохранения не будет, разве не так? В случае с питоном более-менее понятно: там все, что нужно кешировать, можно хранить в глобальных переменных

Михаил
Но ведь, в данном случае, код находится в коде об...

Советую спросить в чате, который посвящен serverless: https://t.me/YandexCloudFunctions/

Похожие вопросы

Обсуждают сегодня

Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Объясните, пожалуйста, почему компилятор ругается на использование в условии неинициализированной переменной: int x; Task.Run(async () => { x = await somefunc(); }).Wait...
Александр
5
Ребят, подскажите, пожалуйста, почему в префиксе к ассетам, которые генерируются через фильтр | theme в шаблоне, стал вдруг появляться index.php? Вот так выглядит ссылка на а...
Виталий
1
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
1. https://www.kaggle.com/code/ahmadrezagholami2001/housing-estimation-linear-regression 2. https://www.kaggle.com/code/ahmadrezagholami2001/uncovering-quality-in-wines-logis...
Ahmadreza
1
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Карта сайта