Size: a a a

Яндекс.Диалоги (сообщество разработчиков)

2019 June 09

OK

Oleg Korshunov in Яндекс.Диалоги (сообщество разработчиков)
Там нагрузка копеешная...
источник

p

popstas in Яндекс.Диалоги (сообщество разработчиков)
у меня нагрузка - пара запросов в неделю )
источник

s

skysilver in Яндекс.Диалоги (сообщество разработчиков)
Oleg Korshunov
Пока у себя.
Публичный у себя?
источник

OK

Oleg Korshunov in Яндекс.Диалоги (сообщество разработчиков)
skysilver
Публичный у себя?
Да
источник

s

skysilver in Яндекс.Диалоги (сообщество разработчиков)
popstas
у меня нагрузка - пара запросов в неделю )
Это для приватного. ) Для публичных самую "малость" побольше будет.
источник

p

popstas in Яндекс.Диалоги (сообщество разработчиков)
ну смотря какие, у меня 2 навыка, там наверное по 50 запросов в день. Конечно, у того, кто сделает первого публичного провайдера, может быть и малость побольше
источник

OK

Oleg Korshunov in Яндекс.Диалоги (сообщество разработчиков)
Он пока с демо девайсами. Подходит только поиграться... И пока скрипты без девайсов не работают...
источник

OK

Oleg Korshunov in Яндекс.Диалоги (сообщество разработчиков)
popstas
ну смотря какие, у меня 2 навыка, там наверное по 50 запросов в день. Конечно, у того, кто сделает первого публичного провайдера, может быть и малость побольше
Кого первого опубликуют...
источник

OK

Oleg Korshunov in Яндекс.Диалоги (сообщество разработчиков)
Даже несколько тысяч обработать не сложно
источник

NK

ID:401457671 in Яндекс.Диалоги (сообщество разработчиков)
Здравствуйте, я разрабатываю навык для Алисы на основе примера из документации(Python). Проблема такая, после того как навык был выложен в каталог(навык приватный), начались проблемы со словарем sessionStorage. Иногда получается так, что словарь перезаписывает свои значения, привязанные к ключу(user_id) или удаляет ключ вовсе(если в тестовом режиме пользователь напишет сообщение, то работа может быть продолжена. При этом ключ в sessionStorage либо вернесться к значения до удаления ключа, либо получит новые которых у него перед удалением ключа не было). Это происходит случайным образом, программа может отработать полностью правильно или вывести ошибку в самом начале работы навыка. Запросы "ping", от Алисы у меня отделяются на самом раннем этапе таким образом, чтобы  переменная sessionStorage не затрагивалась. Когда я решил запустить на прошедшем модерацию черновике навык из документации, выяснилось, что там таже ситуация. И там и там получается то, что теряется словарь sessionStorage, весь или его часть. Вот ссылка на этот пример: https://github.com/yandex/alice-skills/blob/master/python/buy-elephant/now/api.py.
источник

ВБ

Вадим Бажов... in Яндекс.Диалоги (сообщество разработчиков)
колонка не разавторизуется автоматом по короткому таймауту?
источник

ВБ

Вадим Бажов... in Яндекс.Диалоги (сообщество разработчиков)
через что вообще общаетесь с навыком? колонка или яндекс браузер с алисой? попробуйте и там и там
источник
2019 June 10

AS

Alexey Starikov in Яндекс.Диалоги (сообщество разработчиков)
Вопрос к Админам, публичные навыки  умного дума планируется модерировать и публиковать, или вы их пока придерживаете ?
источник

VB

Vitaly Bogomolov in Яндекс.Диалоги (сообщество разработчиков)
ID:401457671
Здравствуйте, я разрабатываю навык для Алисы на основе примера из документации(Python). Проблема такая, после того как навык был выложен в каталог(навык приватный), начались проблемы со словарем sessionStorage. Иногда получается так, что словарь перезаписывает свои значения, привязанные к ключу(user_id) или удаляет ключ вовсе(если в тестовом режиме пользователь напишет сообщение, то работа может быть продолжена. При этом ключ в sessionStorage либо вернесться к значения до удаления ключа, либо получит новые которых у него перед удалением ключа не было). Это происходит случайным образом, программа может отработать полностью правильно или вывести ошибку в самом начале работы навыка. Запросы "ping", от Алисы у меня отделяются на самом раннем этапе таким образом, чтобы  переменная sessionStorage не затрагивалась. Когда я решил запустить на прошедшем модерацию черновике навык из документации, выяснилось, что там таже ситуация. И там и там получается то, что теряется словарь sessionStorage, весь или его часть. Вот ссылка на этот пример: https://github.com/yandex/alice-skills/blob/master/python/buy-elephant/now/api.py.
Я думаю, что проблема может быть в том, что для хранения данных user_id используется словарь sessionStorage в оперативной памяти экземпляра приложения.
Если приложение развернуто и настроено на использование нескольких копий (например в gunicorn кол-во workers > 1), то запросы от Алисы с одним user_id могут попадать на разные копии приложения.

Вариантов решения может быть два.

1. Настроить развернутое приложение на использование одной копии (плохо с т.з. производительности, но не требует изменений в коде)

2. Использовать для данных user_id общее для всех экземпляров приложения хранилище. Например, memcached или какую-то базу данных.
источник

NK

ID:401457671 in Яндекс.Диалоги (сообщество разработчиков)
Vitaly Bogomolov
Я думаю, что проблема может быть в том, что для хранения данных user_id используется словарь sessionStorage в оперативной памяти экземпляра приложения.
Если приложение развернуто и настроено на использование нескольких копий (например в gunicorn кол-во workers > 1), то запросы от Алисы с одним user_id могут попадать на разные копии приложения.

Вариантов решения может быть два.

1. Настроить развернутое приложение на использование одной копии (плохо с т.з. производительности, но не требует изменений в коде)

2. Использовать для данных user_id общее для всех экземпляров приложения хранилище. Например, memcached или какую-то базу данных.
Спасибо за совет, сегодня ночью как раз реализовал запись и чтение данных из json файла. Вроде помогло, новых проблем не встретил.
источник

VB

Vitaly Bogomolov in Яндекс.Диалоги (сообщество разработчиков)
ID:401457671
Спасибо за совет, сегодня ночью как раз реализовал запись и чтение данных из json файла. Вроде помогло, новых проблем не встретил.
Собственно, это второй вариант решения проблемы. Файл - общее хранилище для всех экземпляров приложения.
источник

ДП

Денис Пешехонов... in Яндекс.Диалоги (сообщество разработчиков)
Вроде бы есть какой-то метод передачи информации между потоками как раз в gunicorn
источник

VB

Vitaly Bogomolov in Яндекс.Диалоги (сообщество разработчиков)
ID:401457671
Спасибо за совет, сегодня ночью как раз реализовал запись и чтение данных из json файла. Вроде помогло, новых проблем не встретил.
Кстати, если будете использовать для развертывания облачную платформу, которая при масштабировании нагрузки позволяет запускать несколько копий виртуальной машины, то у кажддой вм будет своя файловая система, соотв. своя копия файла json и проблема повторится на новом уровне :)

мемкеш или бд все таки более надежно.
источник

VB

Vitaly Bogomolov in Яндекс.Диалоги (сообщество разработчиков)
Денис Пешехонов
Вроде бы есть какой-то метод передачи информации между потоками как раз в gunicorn
есть, но этот как раз организация глобального хранилища. по мне довольно извратный.
источник

SS

Stas Serebrennikov in Яндекс.Диалоги (сообщество разработчиков)
есть поидее еще вариант, настроить nginx на проксирование по user_id
источник