Страница для индексации
Перейти на сайт
Фреймворк Sova проектировался как средство для разработки приложений, работающих с БД, а не сайтов. Но результат превзошел ожидания: создавать формы для сайтов на Python удобней, чем на html/JS .

Отличия сайта от приложения:
1. На сайте посетители, - у приложения профессиональные пользователи.
2. Формы сайта ориентированы на чтение, - в приложение на ввод данных.
3. Сайт доступен всем, - приложение как правило доступно в локальной (приватной) сети.
4. Сайт рассчитан на тысячи коротких запросов минуту, у приложения запросов меньше, но почти каждый связан с обращением к БД.
5. У сайта как правило не больше 3 ролей: гость, залогиненый, админстратор. В приложении у пользователей множество ролей с разными правами и разными требованиями к формам.

Еще одно отличие в том, что приложение содержит сотни справочников, которые удобней хранить в памяти. Это ускоряет работу с формами, но исключает многопроцессорность (хотя агенты и сбор отчетов могут стартовать в отдельном процессе или даже на другом сервере) .
Кроме того Сова кэширует формы. При первом обращении для формы создается json-строка , которая сохраняется в словаре с ключом "имя формы CRC32-код" . При последующих обращениях экономится время на формирование json . На клиенте формы тоже кэшируются.
Сайт - это набор страниц, доступ к которым балансировщик может раскидать по нескольким процессам, Сова многопоточна в рамках одного процесса.

Этот сайт сделан на Сове и прекрасно работает. Описание полей " живое ", - можно протестировать работу контроллера. Для онлайн-документации "Sova-online" - хорошее решение.