1Script.Web. Интернет-приложения на языке 1С

Запросы рынка таковы, что любое современное клиент-серверное приложение должно иметь веб-интерфейс. Почему бы не писать такие приложения на языке 1С? Андрей Овсянкин расскажет о возможностях разработки веб-приложений на базе 1Script, рассмотрит перспективы этого направления и в качестве демонстрации покажет «боевое» веб-приложение на новом движке – кроссплатформенную консоль администрирования парка кластеров 1С.

Я расскажу вам про интернет-технологии и их возможное будущее в мире 1С.

 

Ситуация с интернет-технологиями в 2026 году

Мы живем в удивительное время – сейчас нет таких приложений или устройств, которые бы не работали с интернетом. Интернет-технологии и протокол HTTP – повсюду. Куда ни глянь, в любом месте – везде вы наткнетесь на интернет.

Основной тренд интернет-технологий в 2026 году:

  • Растет популярность концепции микросервисов – маленьких приложений, которые независимы, масштабируемы и т.д. и общаются по HTTP.

  • Создается множество различных интеграционных служб – сейчас в любом чайнике уже есть HTTP-сервер, который позволяет вам управлять чайником с телефона. Это все тоже интернет-технологии.

  • И, что самое интересное, всех этих сервисов нужно все больше и больше – аппетит приходит во время еды. Эта тенденция будет только расти и расти. И скоро уже, наверное, в вилке или в ложке будет стоять какой-нибудь веб-сервер.

 

Потребность в HTTP-приложениях

Как я уже сказал, потребность в HTTP-приложениях растет. Какими они вообще могут быть?

  • Это могут быть сайты;

  • Сервера с веб-интерфейсами;

  • Админские приложения и инструменты – те же Zabbix, Jenkins – у них у всех есть веб-интерфейс.

Современные приложения, как правило, уже не десктопные. Они уже работают в браузере, и в будущем, на мой взгляд, все будет только больше и больше уходить в веб.

Поэтому, если вам в вашей системе 1С нужно что-то сделать интересное, классное, привлекательное для клиентов – вам тоже, скорее всего, придется смотреть в сторону HTTP-протокола и веб-приложений.

  • Например, вам может потребоваться какой-то красивый современный веб-интерфейс к 1С.

  • Или вам может потребоваться какая-то витрина данных для удаленного филиала, где можно заполнить какие-то три поля, чтобы подать заявку в Service Desk. Это может быть всего лишь одна формочка – отправлять эти данные в 1С может быть даже избыточно.

  • Потребность в HTTP-приложениях в любом случае есть, она понятна, вам всегда может потребоваться что-то, что взаимодействует по HTTP. Обычно для таких вещей приходится привлекать сторонние команды разработчиков, которые знают JavaScript, PHP, NodeJS, т.е. какой-нибудь фреймворк, который умеет вашему приложению (например, вашей 1С) отвечать по HTTP-протоколу. Получается, что вам приходится нанимать веберов и зависеть от них, а они начинают хитрить, говорить, что им некогда, что это стоит много денег и т.д.

  • Но мы, как 1С-ники, можем реализовать такие приложения сами – нам для HTTP-приложений не нужны Node.js-еры или питонщики. Цель этого доклада – рассказать о том, как мы можем делать все это сами.

Типичный пример – у бизнеса появляется классная идея сделать слушалку для запросов клиентов, которая будет по HTTP из базы 1С возвращать какие-то JSON-чики. И ваш заказчик просит вас такую сделать.

Вы говорите – я могу сделать HTTP-сервис на 1С, захостим на наших мощностях, все будет отлично.

Вам говорят – нет, он должен хоститься в Амазоне или в облаке Azure, чтобы был доступ по всему миру – как мы туда 1С прокинем? Нам нужно что-то полегче, чем 1С.

Вы говорите – тогда нужно на Python или на NodeJS писать – я это не умею.

Бизнес говорит – ну придумай что-нибудь, ты же 1С-ник, ты должен уметь все.

И мы начинаем думать, какой инструмент веб-разработки нам, как 1С-никам, подошел бы.

 

История разработки OneScript.Web

Сейчас хочется немного истории.

  • В 2014 году я на конференции Инфостарта презентовал любопытный инструмент, который я написал. Этот инструмент я назвал OneScript. На тот момент мне хотелось просто поделиться с сообществом тем, что есть такая любопытная штука, с которой можно делать разные интересные вещи.

  • В 2026 году инструментом OneScript заинтересовались в одном крупном федеральном ритейлере, и мы в этой компании начали активно его применять. Это дало очень большой позитивный выхлоп. Впоследствии инструменты, которые там родились, вышли в мир OpenSource.

  • 2026-2026 год. Продукт начал широко развиваться – родилось большое количество решений, написанных с его помощью. OneScript стал широко известен в сообществе.

  • По состоянию на сегодняшний день «знание OneScript» – это отдельный навык, который можно встретить в резюме.

  • По сути, мы вместе с вами, с сообществом OpenSource-разработчиков 1С, создали внутри нашей отрасли отдельную отрасль «автоматизации автоматизаторов», продвигая в среде 1С-специалистов такую концепцию, как DevOps.

  • Сегодня OneScript, как инструмент, применяется уже в сотнях компаний, причем, как правило, в крупных, потому что им это нужнее. В мелких компаниях не особо нужно себя автоматизировать, а когда баз становится много, там уже без автоматизации никуда.

  • Мы настроены серьезно и будем продолжать расширять наш инструментарий.

И сегодня я так же, как и в 2014 году, хотел бы анонсировать новый продукт на базе OneScript, который называется OneScript.Web. Это рабочее название. Возможно, кто-то предложит более классное, но пока оно такое.

  • Как я уже говорил, потребность в HTTP-приложениях огромна, рынок требует, чтобы они были.

  • Нам нужно научиться писать их самим, чтобы не зависеть от каких-то сторонних веб-разработчиков – мы можем делать это сами.

  • Причем, это не только сайты, это, скорее, веб-приложения или какие-то REST-сервисы, но и сайты в том числе.

  • Самое главное, что теперь появился инструмент написания веб-приложений на языке 1С.

 

Архитектура фреймворка 1Script.Web

Как я уже говорил, OneScript.Web сделан на базе уже известного инструмента OneScript.

Архитектурно он основан на кроссплатформенном веб-фреймворке от Microsoft ASP.NET MVC – поэтому, благодаря новому .NET Core, абсолютно кроссплатформенный, будет работать на любых linux-системах и даже в докер-контейнерах.

Иными словами, OneScript.Web – это MVC-фреймворк, которым можно управлять с помощью кода 1С.

 

Подход MVC

Как работает протокол HTTP? У вас есть некий браузер, в котором клиент в адресной строке что-то вбивает, этот запрос уходит на сервер, там он обрабатывается, и обратно в браузер возвращается ответ. Так работают абсолютно все HTTP-приложения.

И подход MVC – это такой подход к проектированию веб-приложений, когда внутри этого «черного ящика»-сервера обработка HTTP-запроса поделена на три части – модель, контроллер и представление (Model, View и Controller), каждая из которых отвечает за свою осмысленную деятельность.

Если упрощать и возвращаться к 1С, то:

  • Модель – это предметная область, метаданные, то, чем наше приложение вообще занимается. Это какие-то описания реального мира – контрагенты, номенклатура, что угодно.

  • View – это представления, формочки, то, что видит на экране пользователь.

  • А Controller – это входная точка обработки, с которой все начинается. Чаще всего, это либо HTTP-сервис, либо обработчик команды в модуле формы. Прямого аналога в мире 1С нет.

 

URL – основа навигации по приложению

Взаимодействие с удаленным веб-приложением всегда строится вокруг URL – именно он является «точкой входа» для получения от приложения какой-то информации.

Как правило, URL выглядит следующим образом: есть имя сервера, и дальше через какие-то сегменты (разделы) вы осуществляете навигацию внутри приложения.

Эти сегменты URL можно представить как некие классы внутри приложения, у которых есть методы. То есть, какой-то клиент по этому адресу может запросить у определенного класса вашего приложения вызов определенного действия.

Как вы можете ответить на этот запрос в приложении, написанном на OneScript.Web?

Чтобы запрос по этому адресу смог обрабатываться в вашем коде 1С, вам нужно просто добавить в ваше приложение модуль с соответствующим названием и реализовать в нем обработку этого метода. Например, вы можете создать в модулях приложения контроллер обработки заказа – файл orders.os с методом Details и каким-то параметром этого метода.

Все это довольно гибко настраивается, для этого существует схема шаблонизации:

  • Вы задаете в приложении один или несколько шаблонов маршрута, по которым ваше приложение будет отвечать.

  • Все варианты настройки шаблонов маршрутов я описывать не буду – их очень много.

  • Если в адресной строке будет вбит URL, который не совпадает с шаблоном, программа будет автоматически отвечать «404 Не найдено».

  • А в случае совпадения с шаблоном запрос будет попадать в ваш код – в соответствующий метод контроллера.

Вот так это работает.

 

Инициализация приложения

Как происходит инициализация приложения?

Вспомним картинку с браузером – HTTP-запрос пролетает некий конвейер. Пришел запрос, как-то обработался, и возник ответ. За то, как этот запрос обрабатывается, отвечает конвейер обработки запроса.

Этот конвейер состоит из кубиков, которые по-английски называются Middleware (софт, который посередине). Я не знаю, как перевести это слово на русский, дам шоколадку тому, кто скажет хороший перевод этого слова на русский язык.

Так вот, путь обработки запроса строится из блоков, кубиков конвейера.

  • Например, приходит HTTP-запрос.

  • Если в нем есть обращение к какому-то статическому файлу на диске, этот файл сразу отдается клиенту. Например, пришел запрос к картинке, которая есть на диске – она отдается клиенту.

  • Дальше проверяется логин-пароль.

  • И, если запрос попадает в шаблонный URL, клиенту возвращается ответ.

Как настроить такой конвейер?

  • В фреймворке есть модуль приложения, и в нем, как в настоящей 1С, есть инициализирующая процедура «ПриНачалеРаботыСистемы».

  • В ней вы можете набрать конвейер, просто вызывая методы приложения, как блоки/кубики, в нужном порядке.

На скриншоте показано, как с помощью кода построить конвейер, который был описан на предыдущем слайде.

Первые две строчки я могу поменять местами. Например, мы не хотим отдавать картинки кому попало, мы хотим, чтобы всегда спрашивался пароль, а только потом отдавались картинки. Тогда мы первые две строчки просто поменяем местами, чтобы у нас сначала спрашивался пароль.

Тогда конвейер будет выглядеть следующим образом:

  • Сначала авторизация;

  • Потом проверка на отдачу статики;

  • И затем бизнес-логика.

Конвейер обработки можно строить любым образом – например, мы можем вообще выкинуть весь этот MVC и просто отдавать статические файлы по паролю – тогда мы можем построить конвейер так, как на слайде.

Соответственно, в процедуре «ПриНачалеРаботыСистемы» мы решаем, что вообще будет делать наше веб-приложение – будет ли в нем нужна авторизация, маршрутизация и пр.

 

Вызов методов приложения. РезультатДействия

А что же такое Контроллер? Это, как я уже говорил, входная точка, которая обрабатывает запрос.

По сути, это модуль 1С, у которого есть экспортные методы. Все экспортные методы вашего модуля-контроллера доступны извне – внешняя система по URL может вызвать любой экспортный метод вашего контроллера.

Например, метод-действие Details возвращает некое представление – вьюшку «КарточкаТовара». Это – экспортный метод, который вызывается по URL в браузере.

Запрос приходит в контроллер, в нем выполняется некое действие и возвращается результат этого действия, как отдельный объект.

Что такое «Результат действия»? Это – базовый тип для различных вариантов ответа клиенту. Нам необязательно отвечать клиенту именно HTML-страничкой:

  • Мы можем отдать ему с сервера какой-то файл на скачивание;

  • Мы можем ответить ему каким-то JSON или XML;

  • Мы можем просто возвращать коды ошибок – «Не найден», «Не авторизован» и т.д.

HTTP-приложения традиционно отвечают разным типом содержимого. Для каждого из таких типов содержимого в системе предусмотрен отдельный объект:

  • РезультатДействияСодержимое;

  • РезультатДействияФайл;

  • РезультатДействияПредставление;

  • РезультатДействияКодСостояния и т.д.

Контроллер должен вернуть один из таких результатов действия. Это сделано для разделения ответственности, потому что формирование и отправка ответа – это разные действия.

 

Как верстать страницы?

Итак, самое интересное – как же верстать HTML-страницы?

Понятно, что мы можем ответить XML-кой, но интересно строить еще и интерфейс – красивые формы, чтобы там все было модно-молодежно и т.д. И это – самая сложная часть, потому что мир фронтэнда крайне разнообразен.

  • Существуют тысячи фреймворков и способов формирования веб-интерфейса (HTML-интерфейса). И выбрать какой-то, который был бы прост для вхождения 1С-ников, достаточно сложно – потому что все это выглядит очень низкоуровневым. Вообще, HTML и CSS – это, по сути, язык ассемблера, они очень низкоуровневые, очень избыточные. И мыслить в терминах HTML и CSS – это трудоемко. Нужно что-то более высокоуровневое.

  • Например, уже сейчас с помощью различных JS-фреймворков типа React, Angular и пр. вы можете строить Single Page Application, передавая им на вход JSON-чики, сформированные с помощью Oscript.Web, а какие-то JavaScript-еры вам будут писать интерфейс на Angular.

  • Как я уже говорил, рынку требуется построение фронтэнд-а для 1С. Поэтому мы в «Серебряной пуле» ведем свои исследовательские работы по теме «Фронтэнд для 1С-ников» – об этом вчера рассказывал Алексей Лустин.

  • Также есть доклад Игоря Антонова, который рассказывал, как строить интерфейсы для 1С на React – вы также можете применить его наработки.

И сейчас движок OneScrip.Web предлагает для верстки страниц родной ASP-шаблонизатор, который называется Razor. Он достаточно простой, легковесный и мощный, представляет собой HTML-страницу с вкраплениями кода на C#. Поскольку это родной движок от Microsoft, в него ничего дополнительно не прикручено, поэтому русскоязычная документация, которая есть на сайте Microsoft полностью соответствует тому, что вы можете делать с веб-движком OneScript с помощью Razor.

Выглядит он следующим образом – на слайде показан пример вьюшки из веб-консоли администрирования кластера 1С, которую я покажу в конце своего доклада.

В эту вьюшку передается некий объект языка 1С, который нужно вывести, например, это может быть таблица значений или структура.

И дальше внутри Razor-овской вьюшки вы можете работать с этим объектом, как со структурой – через @ можете обращаться к методам класса 1С, перебрать строки, колонки с помощью цикла «Для каждого из» – что угодно.

Сейчас развитие фреймворков, особенно WebAssembly, идет семимильными шагами.

  • Мы уже можем уйти от HTML и верстать так, как показано на слайде – создавать высокоуровневые компоненты – командные панели, кнопки. Такое можно делать на React или на Blazor.

  • Можно пойти еще дальше и сделать это все через «Новый ВебФронт», о котором рассказывал Алексей.

Вариантов, которые можно было бы применить, очень много. Пока что мы не выбрали какой-то идеальный. Поэтому так же, как это было с обычным OneScript, с OneScript.Web мы тоже рассчитываем на то, что сообщество OpenSource подскажет нам наиболее правильный путь.

 

Работающие приложения. Odminus

Какие уже существуют работающие приложения, которые можно пощупать?

  • Во-первых, существует хранилище готовых пакетов OneScript – то самое облачное хранилище пакетов, с которого мы все, как девопсеры (те, кто занимается DevOps для 1С), скачиваем готовые приложения. У нас есть консольный пакетный менеджер opm, мы набираем в нем «opm install ЧтоНибудь» – и с этого сайта hub.oscript.io скачивается какой-то пакет. Веб-интерфейс хаба пакетов написан на движке OneScript.Web.

  • Кроме того, мы у себя внутри разрабатываем Личный кабинет клиента «Серебряной пули», тоже на OneScript.Web.

  • И существует еще одна почти готовая разработка, которую можно щупать и смотреть – административная консоль кластера 1С. Называется она Odminus. Название канонично написано через «о», потому что правильный «одмин» всегда пишется через «о».

Что такое Odminus?

  • Это – та самая «Административная консоль управления серверами в кластере 1С», но только в браузере.

  • При этом, за счет того, что она использует сервер администрирования RAS, она еще и не зависит от версий платформы.

  • И, самое главное – не требует регистрации COM-компонент. Зачем я вообще начал ее писать? Потому что каждый раз, когда мне нужно было посмотреть сеансы на сервере или завершить какой-то сеанс, мне приходилось перерегистрировать COM-оснастку, потому что сервер, на котором находится нужный мне сеанс – другой версии. Я выходил из себя из-за того, что мне приходилось делать какие-то лишние телодвижения, чтобы что-то поправить. Поэтому я разработал эту веб-консоль. Теперь, чтобы сделать что-нибудь с кластером, мне достаточно просто зайти на страничку в браузере – ничего не устанавливая и не настраивая.

  • Код открытый, его можно дорабатывать – он написан на 1С. Эту веб-консоль уже сейчас можно брать и дописывать исключительно средствами языка 1С, не изучая вообще никаких PHP.

Выглядит она следующим образом. У приложения в браузере есть статический URL – на главной странице система выводит вам список агентов кластеров, которые вы сюда сами добавили – ваш серверный парк кластеров 1С.

Можно зайти на страницу агента кластера – он покажет, где он хостится, какой у него сетевой порт. Это – честная HTML-ная веб-форма – здесь все, как положено.

Вот так выглядит устройство этого кластера – информационные базы, менеджеры и т.д. Все можно посмотреть.

Можно добавить какой-то рабочий сервер, поработать с объектами кластера.

Можно прямо в браузере отрегулировать интервал перезапуска и лимит по памяти.

Бекэндом для приложения Odminus является код на 1С, реализующий обертку к стандартной консольной утилите от фирмы 1С, которая называется RAC (Remote Administration Client).

Я даже не писал эту обертку сам, ее написал Артем Кузнецов – OpenSource рулит. Я просто скачал с хаба opm готовый пакет, который вы уже сейчас можете использовать. С помощью этой обертки я получил готовую объектную модель для управления своими серверами, чтобы просто писать: Кластер.Серверы(), ИнформационнаяБаза.Сеансы() и прочее.

Я просто взял готовое решение и, вызывая его методы в контроллерах своего приложения, рисую такие веб-формочки. В приведенном на слайде куске кода я получаю кластер по ID, передаю объект кластера в формочку, и она рисуется.

Даже без веб-движка, если вам нужно как-то порулить вашим кластером, вы можете скачать эту библиотеку и в объектной модели работать с кластером 1С без COM, на Linux, без регистрации версий и т.д. Я рассказываю это к тому, что в экосистеме пакетов OneScript уже сейчас представлено очень большое количество инструментов, с которыми можно работать.

 

Выгоды и перспективы

Зачем все это нужно?

  • Это все нужно для того, чтобы быстро выводить свое решение на рынок. Если у вас или у вашего бизнеса есть некая идея, но вы понимаете, что вам придется для ее реализации пойти покланяться в ножки команде веб-разработчиков – попросить их сделать для вас маленький HTTP-сервис, который будет что-нибудь отвечать. Чтобы этого избежать, остаться в рамках той же команды и решить свою задачу, не завися не от кого и не прося никого – можете воспользоваться инструментом OneScript.Web. Он даст вам быстрый старт уже имеющейся командой, независимо от смежников.

  • Более того, вам не потребуется лицензия 1С на эти серверы. В 1С каждый HTTP-вызов требует лицензию, а OneScript.Web не требует никаких лицензий. Развернули его на сервере и точно так же отвечаете по HTTP, по REST, какими угодно файликами. Никаких лицензий при этом не требуется.

  • Программируете вы все равно на 1С. Это – тот же самый язык 1С, только несколько библиотечек добавлено сверху.

  • Тут еще и удовольствие, что вы изучаете что-то новое, модное. Как я уже говорил, в каждой кофеварке сегодня стоит веб-сервер. OneScript.Web тоже сделан на базе очень легковесного, контейнеризируемого веб-сервера от Microsoft – Kestrel. Если вы вдруг делаете умную кофеварку с HTTP-сервисом, которым хотите управлять с телефона, вы можете залить в нее код на 1С, и он будет работать, потому что занимает очень мало места. OneScript.Web использует новое ядро ASP.NET от Microsoft, которое как раз заточено под такие легковесные приложения. Поэтому вы можете программировать кофеварки на 1С и оставаться при этом в тренде. Это очень круто, на мой взгляд.

 

**********************

Данная статья написана по итогам доклада, прочитанного на конференции INFOSTART EVENT 2026 EDUCATION. Больше статей можно прочитать здесь.

В 2026 году приглашаем всех принять участие в 7 региональных митапах, а также юбилейной INFOSTART EVENT 2026 в Москве.

Выбрать мероприятие.

32 Comments

  1. tusv

    Когда то игрался с v7script.dll Елы палы работал и без 1с

    Reply ↓
  2. blackhole321

    Отладчик в наличии?

    Reply ↓
  3. FreeArcher

    Может я пропустил, но что будет web сервером выступать IIS или Nginx+PHP тоже можно, какие модули потребуются?

    У вас нет образа docker (раз его упоминали) чтобы развернуть быстро и посмотреть действительно это того стоит?

    Reply ↓
  4. insurgut

    Что-то я с типичным примером не понял — а что мешает HTTP-сервис 1С поднять, который будет доступен «по всему миру»?

    Reply ↓
  5. ltfriend

    (3) причём тут вообще PHP? А пропустили последний пункт в конце статьи из списка «Зачем все это нужно?». Как я понял, сделано это все на .net core, а там используется свой кроссплатформенный веб-сервер Kestrel. В итоге, как в статье и было сказано, можно использовать хоть на кофеварке. Доп. софта ни какого не нужно. Как вариант, можно дополнительно использовать nginx в качестве обратного прокси для повышения производительности.

    Кстати вопрос к автору: как с производительностью?

    Reply ↓
  6. azhilichev

    Был на Хакатоне-2019 от «Серебряной пули». Алексей Лустин на мастер-классе показывал пример разработки на 1Script.Web. Прикольно. Но нужна документация.

    Reply ↓
  7. azhilichev

    (4) Наверное, ограничения по лицензиям 1С.

    Reply ↓
  8. sikuda

    (3) Для любителей PHP лучше транслятор 1С-PHP php1c.ru 😉

    Reply ↓
  9. FreeArcher

    (4) Как я понял это замена прослойки (проксирующего веб сервера, например php, не важно). Т.е. фронтенд пишется на JS, но из JS достучатся до http сервиса 1С с авторизацией проблематично. А например из PHP вобще без проблем. Т.е. как работаю личные кабинеты в интернет магазинах например: JS=>PHP=>1C и обратно. По скольку на PHP писать 1С-ники не хотят, они могут заменить эту прослойку на 1Script.Web.

    Пусть автор поправит.

    (5) Спасибо за пояснения.

    (6) Кстати я уже попробовал пример из другой статьи работает. Вот только после изменения кода приходится перезапускать 1Script.Web, не привычно. Ну и конечно, вроде бы от знания PHP избавляет, но боюсь на начальном этапе потребуется знать С# разбираться в исходниках, решать какие то вопросы и расширять функционал.

    Reply ↓
  10. JohnyDeath

    (3) Советую ознакомиться с подробным примером от автора: https://infostart.ru/public/783435/

    Reply ↓
  11. FreeArcher

    (7) Не понятно в чем ограничение? Лицензия задействуется только на момент соединения, это меньше секунды. Как правило через http сервисы делают для личных кабинетов, где количество одновременно работающих пользователей очень небольшое. А если ещё использовать схему когда раз получаются данные и потом просто используются, то лицензия и вовсе не надолго занята будет. Вобщем это не должно быть проблемой.

    Reply ↓
  12. YPermitin

    (11) Вы говорите про технический аспект лицензирования.

    А есть само лицензионное соглашение, где явно сказано, что лицензий нужно столько, сколько клиентов будет подключаться.

    Так что придется в этом случае лицензии все же покупать и договариваться с фирмой «1С».

    Пруф: http://v8.1c.ru/predpriyatie/questions_licence.htm#mvv

    Reply ↓
  13. FreeArcher

    (12)

    В соответствии с действующим Лицензионным соглашением, организация должна приобрести такое количество клиентских лицензий, сколько в действительности пользователей одновременно работают с системой «1С:Предприятие 8».

    Так одновременно будет работать 1-2 клиента по 1 секунде, на них и будет выдана лицензия. И при использование 1Script.Web ничего не меняется ведь, схема забора лицензий такая же, что и если бы запирал сервер на PHP или на чем то другом.

    Reply ↓
  14. YPermitin

    (13)

    Так одновременно будет работать 1-2 клиента по 1 секунде, на них и будет выдана лицензия. И при использование 1Script.Web ничего не меняется ведь, схема забора лицензий такая же, что и если бы запирал сервер на PHP или на чем то другом.

    Лицензия выдается на пользователей, а не на клиентов и соединения.

    Если нет доверия к моим словам, то Вы можете написать в саппорт фирмы «1С», описав ситуацию.

    Возможно, их ответ Вас очень удивит.

    Reply ↓
  15. FreeArcher

    (14) Да я не то что не доверяю, я хочу понять. Просто нельзя учесть сколько пользователей работают в момент времени.

    Да и что значит пользователей. Например их всего 1000. Сегодня работает 10 сколько нужно лицензий? 10 верно ведь?

    Так получается если из этих 10 в данную секунду работает только 1, то и нужно 1 лицензию?

    Это в компании число пользователей условно постоянно, а как только выходим в веб оно становится постоянно меняющимся.

    Reply ↓
  16. acanta

    (15) точно. Представим себе Гугл, который взимает плату с владельца сайта в интернете за каждого пользователя, который на него зашёл из поисковика.

    Причем для доступа пользователя требуется внесение аванса в пользу гугля от владельца сайта.

    При отсутствии аванса Гугль не открывает страницу результата поиска и пишет пользователю сообщение что у владельца сайта закончились деньги.

    Внесённый аванс наш Гугль не возвращает, но если владелец хочет сделать ещё один сайт, то можно получить скидку при условии замены старого сайта на новый.

    Reply ↓
  17. YPermitin

    (15) вот тут то и нужно идти в фиому 1С для обсуждения сотрудничества.

    Ситуация схожа с лицензированием мобильной платформы. Почти.

    Reply ↓
  18. Evil Beaver

    (9)

    после изменения кода приходится перезапускать 1Script.Web, не привычно

    Платформу 1С тоже приходится перезапускать после изменения кода, и ничего. В девелопе уже лежит fast-reload версия для контроллеров, но она только в исходниках.

    Т.е. как работаю личные кабинеты в интернет магазинах например: JS=>PHP=>1C и обратно. По скольку на PHP писать 1С-ники не хотят, они могут заменить эту прослойку на 1Script.Web.

    Ну так тоже можно, а можно и JS не писать, а делать олдскульный HTML с минимумом jQuery/bootstrap, тогда кубиков будет два: OsWeb=>1C

    боюсь на начальном этапе потребуется знать С# разбираться в исходниках, решать какие то вопросы

    Не бойтесь. C# это такой же 1С, только на английском. Все классы похожи на 1С. И потом, изучив C# вы автоматически изучите синтаксис JavaScript, PHP, Java, Groovy и C++ Радикальный рост компетенций и зарплаты в перспективе!

    И все это легко, т.к. там учить то и нехер, на самом деле. Одну-две книжки в метро зачитать.

    Бесплатный секрет вот вам рассказал, если чо.

    Reply ↓
  19. Glebis
    Midleware. Шоколадка за лучший перевод на русский.

    Софтосредник.

    Где могу забрать шоколадку?

    Reply ↓
  20. YPermitin

    (19) прокладка или костыль еще можно перевести 🙂

    Reply ↓
  21. Darklight

    (19)»Посредник» проще (ну или «Посредник бизнес логики» — но это уже слишком длинно), ну можно ещё «Сервиспосредник»

    Reply ↓
  22. Darklight

    (12)Да, с лицензированием web-среды в 1С всё очень туго. Увы. В этом плане — OneSncript.Web — это как глоток свежего воздуха свободы. Но, чтобы был целый зелёный сад свежего воздуха тут конечно в комплекте должен быть и фроентэнд и бакэнд, понятный 1С-снику (об этом я ниже в отдельном комментарии надписал, т.к. это уже за рамками данного контекста).

    Ещё в пользу OneScript.Web — развернуть его в стороннем облаке гораздо дешевле и проще чем, чем всю платформу 1С (в силу его легковестности, кроссплатформенности и, главное, независимости от установки лицензионных ключей — которые ставить в облаке очень сложно). В общем — проморгала 1С целый рынок, ну есть конечно 1С-Битрикс — но это всё-таки уже для крупных компаний, это не дешёвое решение, и требующее отдельно обученных специалистов. Да и в облаков с развёрнутым 1С-Битрикс не та уж много существует и не дёшёвы они (ну я предполагаю — не ручаюсь за достоверность — не сталкивался лично).

    Reply ↓
  23. Darklight
    Reply ↓
  24. SkyHunter
    Бизнес говорит – ну придумай что-нибудь, ты же 1С-ник, ты должен уметь все.

    Опять исход от неверной посылки, что 1Сник должен уметь всё, быть этаким человеком-оркестром. Опять это желание сэкономить на количестве спецов.

    А правильный ответ — этим должны заниматься специально обученные люди, использующие нативные, проверенные годами и опытом инструменты.

    Reply ↓
  25. ArchLord42

    (5) запросы обрабатываются примерно с такой же скоростью как и чистый asp.net core. Производительность oscript в целом приблизительно равна c#, но не во всех случаях)

    Reply ↓
  26. Elisy

    Подход интересный. Инструмент полезен для мелких ненагруженных систем.

    К сожалению, не может конкурировать со связкой Asp.Net MVC + 1С.

    Что произойдет при увеличении нагрузки? 1С станет слабым звеном.

    Вижу нерешаемые структурные проблемы

    1. Сам по себе скрипт 1С медленный.

    2. Нет многопоточности

    3. Коммьюнити раз в 100000 меньше, чем у C# Asp.Net MVC.

    Что планируется делать с частыми задачами Asp.Net MVC? Переписывать средствами 1С?

    1. OAuth авторизация

    2. Обработка ошибок 404, 500

    3. Кэширование

    4. Сокеты

    5. Настройка допустимых сиволов URL, максимального тела запроса,

    6. https- www-редиректы

    7. Bundle-минифицирование css и js

    8. Управление заголовками

    Reply ↓
  27. Evil Beaver
    Сам по себе скрипт 1С медленный

    Можно замеры конкретных кусков кода 1Script в сравнении с 1С, на основании которых вы сделали такой вывод? 1Script не медленнее 1С.

    Нет многопоточности

    Откуда такой вывод? В Node.js, кстати говоря, ее тоже нет. И ничего, пишут промышленные сервера 🙂 А в 1Script.Web есть потоки на уровне Kestrel.

    Что планируется делать с частыми задачами Asp.Net MVC

    1. OAuth авторизация

    2. Обработка ошибок 404, 500

    3. Кэширование

    4. Сокеты

    5. Настройка допустимых сиволов URL, максимального тела запроса,

    6. https- www-редиректы

    7. Bundle-минифицирование css и js

    8. Управление заголовками

    Планируется дать примерно те же средства, которые дает платформа 1С. Что-то позволить, а что-то спрятать в платформу/опции Kestrel

    Reply ↓
  28. Perfolenta

    (25) ну, это вы серьезно загнули, на счет производительности сравнимой с C#….

    Reply ↓
  29. shiaju

    (27) «Не медленнее 1С» вовсе не означает «быстрый», к сожалению. Я тут на днях попробовал шутки ради решить пару задач с https://projecteuler.net и, в общем, сильно удивился, насколько 1С неэффективно считает.

    Reply ↓
  30. jif

    (18)

    Бесплатный секрет вот вам рассказал, если чо.

    Добрый день, Андрей. Подскажите пожалуйста литературу по C# для начала изучения! С каких материалов, по Вашему мнению, стоит начать ? Спасибо!

    Reply ↓
  31. alyaev.a.v

    В чем может быть проблема?

    Необработанное исключение: ScriptEngine.Compiler.CompilerException: {Модуль C:WORKOneScriptodminusmodelsmodulesАдминистрированиеАген­та.os / Ошибка в строке: 3 / Библиотека не найдена logos}

    Все стандартно установлено,логос установлен, другие проекты работают.

    Reply ↓
  32. Necessitudo

    (18) Андрей — а если C# учить просто, то зачем был придуман OneScript, хотя уже есть PowerShell?

    Reply ↓

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *