0. riposte 257 22.04.19 00:59 Сейчас в теме

1C + Python + Django Rest Framework + Vue.js. Опыт несложной full-stack разработки

В этой статье мы рассмотрим путь и основные моменты создания небольшого вэб-сервиса, который мы называем "Онлайн Прайс-лист". Выгрузка из 1С, бэкенд, фронтенд, получение заказов в 1С.

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. Steelvan 22.04.19 10:07 Сейчас в теме
Хорошо что у меня нет возможности ставить минусы, иначе я влепил бы два.
Первый за англицизмы в статье, это просто какой-то русско-английский суржик двоечника. Что в статье, что на сайте.
Второй за символ хероллара в шапке сайте.
2. rintik 15 22.04.19 10:39 Сейчас в теме
(1) Можете пояснить для тех кто плохо понимает англицизмы и суржик, что такое "хероллара"?
CnupT; biz-intel; jaroslav.h; md-grp; Kalam; for_sale; A_Max; +7 Ответить
9. for_sale 798 22.04.19 12:39 Сейчас в теме
(2)
Я тоже долго размышлял над данным суржиковым словом данного суржиконенависника. Даже подумал, было, что это такое имя. Ну типа, "ХероЛара Крофт, расхитительница гробниц". Может, человек не согласен таким отношением к гробницам? Или качество фильмов не нравится (тут я тоже согласен, что ХероЛара Крофт подошло бы лучше). Но потом я поиграл с ударением и решил, что, возможно, это такая рифма на "доллар", картинка с которым и правда нашлась в шапке сайта. Кейс клоузд.
user774630; Alien_job; +2 Ответить
3. Robbi 55 22.04.19 10:41 Сейчас в теме
Все, что в статье касается 1с - прошлый век.
Xml xls ftp зачем об этом всем писать, это чуть-ли не с начала 2000 в ходу
Про ftp в 1С - около 5 лет ежедневных выгрузок фото на ftp сайта раз в полчаса средствами 1С, ни одного сбоя, Самая простая и беспроблемная часть обмена всегда была.
rderepin; +1 Ответить
5. riposte 257 22.04.19 11:22 Сейчас в теме
(3)
Основная причина, по которой мне не понравились механизмы FTP-клиента 1С - отсутствие синхронизации каталогов.
Вторая причина проистекает из первой - долго. Циклы.
Третья - тяжело было соорудить так, чтобы не ломалось. У меня, во всяком случае, не получалось, когда доходило до выгрузки изображений. Нет-нет, а через 1000-другую файлов начинало отваливаться, причем каскадно.

А с WinSCP все получилось очень просто и без бубна.
Тем не менее, как и было замечено, процедуры формирования XML и обмены по FTP уже со всех сторон неоднократно рассмотрены.
11. SShipilov 22.04.19 13:32 Сейчас в теме
(5)
ья - тяжело было соорудить так, чтобы не ломалось. У меня, во всяком случае, не получалось, когда доходило до выгрузки изображений. Нет-нет, а через 1000-другую файлов начинало отваливаться, причем каскадно.

(8)

Господа, зачем прицепились к FTP. Может в текущей реализации это было удобнее всего. Зато какая клевая остальная архитектура. Статья очень познавательная.
Некоторые блоки правда напрашиваются на замену, но это придирки))
Автор, спасибо за хороший пример.
4. fr13 635 22.04.19 11:05 Сейчас в теме
Отлиная работа, автор спасибо!
6. YPermitin 5800 22.04.19 11:56 Сейчас в теме
(0) создан монстр, но читать было интересно!
Stanislav1993; biz-intel; +2 Ответить
7. riposte 257 22.04.19 12:36 Сейчас в теме
(6)
Можно приоткрыть тему монстра? Ну... для саморазвития. Хотя бы тезисно.
YPermitin; +1 Ответить
10. YPermitin 5800 22.04.19 12:39 Сейчас в теме
(7) это была не критика, читать правда было интересно.

Просто когда читаешь статьи про фронтенд, то там столько технологий и фреймворков всегда понапехано, что для этой сферы норма. А для 1С это немного непривычно :)

Еще раз спасибо, пишите еще!
8. smile2009 22.04.19 12:36 Сейчас в теме
Соглашусь, что FTP - прошлый век. Но автор показал нам возможность использования стека современных технологий. Однозначно плюс. Спасибо автору. Ждем новых статей!
12. zqzq 17 22.04.19 15:21 Сейчас в теме
Дизайн сайта конечно жесть :) В стиле WEB-2000. И конечно обязательно нужны мельтешащие видео и слайды в шапке. Лучше уж wordpress как по мне.

Но сама работа добротная проделана, раз всё работает.

В общем, я предложил - мне дали добро. Срок поставили - месяц. Справился за полтора, ибо замену картриджей никто не отменял.
Что-то мне подсказывает, что лучше выбрать специализацию не такую широкую, если про картриджи буквально было.
13. riposte 257 22.04.19 15:31 Сейчас в теме
(12)
В первоначально версии не было блока commercials (той самой полоски с рекламой вверху).
Я пытался объяснить, что добавление всех этих вещей - это уменьшение эффективного пространства самого приложения - таблицы с товарами, да и в принципе лишнее, учитывая предназначение сервиса. Но заказчик был неумолим.
Скорее всего, через пару версий корневая страница будет представлять из себя стандартную для многих магазинов простыню из баннеров, а сам функционал прайса будет вынесен на отдельную страницу безо всяких мельтешащих реклам и каруселей.
14. shard 251 22.04.19 15:53 Сейчас в теме
Предложенный алгоритм выгрузки данных на сайт (получение данных в 1с -> формирование xml и отправка на сайт -> разбор xml на стороне сайта и запись в бд) можно упростить, формируя текст запроса к субд непосредственно в 1с. Т.е. на выходе из 1с не xml, а текст с уже сформированными командами insert, который достаточно сразу отдать на выполнение субд (можно даже планировщиком).
ivan_luzinov; +1 Ответить
16. riposte 257 22.04.19 16:56 Сейчас в теме
(14)
Можно и прямыми запросами к API вносить изменения прямо из 1С. Сформировав нужный блок процедур на самом бэкэнде.
Но от выгрузки xml уже не избавиться.
Эти файлики еще один из клиентов забирает себе на сайт.

(15)
Не знал про него и даже как-то не натыкался. Спасибо, посмотрю.
47. philya 77 24.04.19 08:11 Сейчас в теме
(16) Можно сделать еще шаг. И подключить внешние источники данных к 1с и лить данные в базу данных сайта напрямую из 1с без всяких файликов.
15. bonv 926 22.04.19 16:08 Сейчас в теме
(0)
Если вас интересует, как же происходит общение с бэк-эндом. Очень просто - через ajax и jquery
А почему jquery, а не Axios?
stilet; riposte; +2 Ответить
17. s_vidyakin 22.04.19 17:12 Сейчас в теме
(15) точнее - почему не cheerio+axios
Вообще можно было без питона обойтись, все на node.js сделать, но раз человек знает питон...
+ Можно из 1С сразу через веб-сервис отдавать zip-архив с таблицами в JSON и картинками, на сервере распаковать и раскидать в базу
19. nvv1970 22.04.19 23:14 Сейчас в теме
(17) объясните "танкистам": python - это ацтой? или просто node.js - это топчик? и ни на чем другом писать не стоит...
Пытаюсь сам развиться и подучиваю питон... Может не стоит?
21. s_vidyakin 23.04.19 09:09 Сейчас в теме
(19) Да нет, питон тоже топ) но он больше применяется в BigData, ИИ, обработке данных, научных исследованиях.
Веб тоже можно, но это не мейнстрим, скорее исключение. Вот pinterest, dropbox и инстаграм до сих пор на джанго крутятся.

Можно и наоборот, написать все на питоне, кроме Vue на клиенте, в питоне есть библиотека beautifulSoup4 типа cheerio для работы с html, сам сайты парсил ей
22. nvv1970 23.04.19 10:22 Сейчас в теме
(21) спасибо за разъяснения
питон начал учить ради аналитического интереса, в копилку и в помощь 1с, sql, bash, ps, oscript и т.п., да и просто ради разминки мозга. Уж больно синтаксис хорош ))
Вот и думаю, где в жизни мне он реально понадобится... Понадобится ли... За рамки бэкенда вылазить не планирую. А учить все языки на свете - моск лопается. Да и возможности для этого есть только при работе на предприятиях, когда за время можно не отчитываться. ((
24. riposte 257 23.04.19 10:34 Сейчас в теме
(22)
Ботов на нем удобно писать. И для телеграма, и для прочих мессенджеров\сервисов.
Ну и, собственно, эти боты могут применяться в самых разных сферах.
Сам хочу написать бота в телеграм под заббикс с пачкой скриптов на примитивные операции по управлению серверами - рестарты служб, перезагрузки и т.д. Но хотелок, как всегда, больше чем времени.
ivan_luzinov; Kalam; acanta; +3 Ответить
30. nvv1970 23.04.19 11:31 Сейчас в теме
(24) А как вам такое:
Например, реализуем некую примитивную игру, которую можно разделить на серверную и клиентскую части (общаемся удаленно по API - http-сервису). Пусть, условно, это будет карточная (дурак, 1000 и т.п.).
Цель - развлечение и тренировка реализации. Сервер общий, клиенты - разные (живые или битва ботов).
Все очень быстро и легко реализуется на 1С. Но... в интернет официально не выставишь... Лицензии )
Вот и думаю потренироваться питоном...
18. smirnovserg.s@gmail.com 22.04.19 19:23 Сейчас в теме
Автор, молодец!
Тоже ковыряю тему подобных интеграций Python + 1C и как раз публикация в тему.
Кстати, твой проект можно и на гитхаб залить ;-)
stilet; nvv1970; +2 Ответить
20. user1209201 23.04.19 08:09 Сейчас в теме
Я вообще рад за автора, если внедрение прошло и клиент получил инструмент. Даже полмиллиона можно ставить в ценник, так как гарантия стоит тоже денег, и не только во времени плотного сидения в отпуске дело, а в том, что менеджеры смогут удобнее барыжить ещё три-четыре квартала, пока можно плотно сидеть над решением без 1с, если на него будет заказ, а если не будет, то эти четыре квартала превратятся в, страшно сказать, ...? Четырнадцать?
23. Diversus 2029 23.04.19 10:34 Сейчас в теме
(0) Ваша модель имеет несколько серьезных недостатков:

1. Длинная цепочка и сложность взаимодействия
Есть старое доброе правило: чем больше в цепи разных звеньев, тем цепь становится не надежнее и если появится слабое звено, то цепь порвется. В вашей последовательности, если что-то отвалится, то весь механизм перестанет работать. Это плохо и это минус.
2. Только вы адекватно сможете поддерживать эту систему
Для работодателя это плохо. Если вы завтра захотите уйти из фирмы, то фирма может пострадать от того, что не будет специалистов, которые смогут восстановить работу или что-то дописать. Для вас это хорошо, для работодателя плохо. И после вас придет какой-нибудь разработчик и скажет, что все надо переписать и что он удивляется как это все работает до сих пор.
3. Оперативность
Ее просто нет. Выгрузка раз в день всех позиций может быть не достаточной. Зачем-то менеджерам нужна по сути самостоятельно запускать загрузку нужного заказа. Это время.

Зачем столько сложностей? У Вас может быть законный вопрос: "ну вот ладно, ты Виталий, тут критикуешь, а что можешь по существу сказать?". Вопрос правильный и сказать мне есть что.

Почему не написать в базе HTTP-сервис, который бы все это делал? При этом: все было бы оперативно, в одной базе, могло дописаться любым 1С-ником.
Я столкнулся с подобной проблемой, для нашего решения Управление IT-отделом 8 необходимо было сделать личный кабинет пользователей для создания заявок из веба. По сути - это ваша задача, только надо не заказы вносить сторонним пользователям, а задания в техподдержку, но тут нужна оперативность.
Как поступил я?
Я пошел по другому пути. Сделал возможность вносить HTML-файлы, файлы стилей, картинки, js-скрипты в отдельный справочник. Создал HTTP-сервис, который определял какой файл нужно показать в данный момент и отдаю по HTTP данные построенные в 1С.
Как выглядит скриншот результата можно увидеть во вложениях:

Получилось то, что хотел и можно посмотреть видео как оно работает:
https://youtu.be/yEjMlcnH3Vk

Если тема интересная могу отдельную статью написать.
Прикрепленные файлы:
kuzyara; user774630; kote; eeeio; riposte; acanta; +6 Ответить
25. herfis 285 23.04.19 10:56 Сейчас в теме
(23) Не до конца понятна фраза "Создал HTTP-сервис, который определял какой файл нужно показать в данный момент".
Это типа мини-вебсервер получился?
Ну а диплоймент из 1С - это такое... Не сказать, что киллер-фича.
26. Diversus 2029 23.04.19 10:58 Сейчас в теме
(25)
Не до конца понятна фраза "Создал HTTP-сервис, который определял какой файл нужно показать в данный момент".
Это типа мини-вебсервер получился?

Да, получается так. Apache или IIS присылает запрос, этот запрос разбирается, строится страница и выдается HTTP-ответ.
Причем странички можно изменять "на лету" в режиме предприятия.
27. herfis 285 23.04.19 11:18 Сейчас в теме
(26)
Причем странички можно изменять "на лету" в режиме предприятия

Каким именно образом? При записи "пушатся" на сервер через какой-то API вашего сервиса? Или каким-то более "рабоче-крестьянским" методом?
29. Diversus 2029 23.04.19 11:28 Сейчас в теме
(27)
Каким именно образом? При записи "пушатся" на сервер через какой-то API вашего сервиса? Или каким-то более "рабоче-крестьянским" методом?

По сути, вся логика построения странички вынесена в справочник в поле "Алгоритм заполнения". Там код на языке 1С, этот код строит страничку при поступлении запроса. Если этот алгоритм заполнения мы поменяем в режиме предприятия, то изменения применяться сразу же и сервис начнет отдавать новый результат.
Этот код так же может взаимодействовать с остальными частями конфигурации.
Например, есть веб-форма новое задание, пользователь нажимает на кнопку "Отправить", HTTP-сервису передается POST-запрос, который он обрабатывает, читает значения реквизитов и создает новое задание кодом на 1С (закладка "Алгоритм заполнения").
31. riposte 257 23.04.19 11:32 Сейчас в теме
(23)
Кстати, не знал что 1С так может. В свое время дико раздражал факт, что нельзя предоставить нелицензируемый доступ к какой-то базе через вэб, а только вэб-клиент и лицензия под него с ключа или сервера.

Если тема интересная могу отдельную статью написать.

Интересная, жду статью.
58. утюгчеловек 15.08.19 09:56 Сейчас в теме
(31) Формально http-соединения к 1С лицензируются)
32. TODD22 18 23.04.19 11:33 Сейчас в теме
(23)
Почему не написать в базе HTTP-сервис, который бы все это делал?

1. Потому что этот сервис в базе 1С. Со всеми вытекающими из этого проблемами.(клиенты будут часто запросы отправлять, за дидосят базу)
2. У Джанго есть много разных полезных модулей которые на 1С скорее всего придётся писать самому.
35. Diversus 2029 23.04.19 11:43 Сейчас в теме
(32)
Потому что этот сервис в базе 1С. Со всеми вытекающими из этого проблемами.(клиенты будут часто запросы отправлять, за дидосят базу)

Нагрузка на сервер 1С HTTP-сервисами минимальная. Надо понимать, что это не полноценный сеанс работы с 1С + есть возможность кэшировать подключения пользователей средствами 1С... Т.е. можно настроить так, чтобы новые запросы не делали новые сеансы (на какое-то время), а использовали пул подключений. Так что не за дидосят...

У Джанго есть много разных полезных модулей которые на 1С скорее всего придётся писать самому.

Дак используйте Джанго в связке, кто мешает? Повторюсь, мы в своем проекте используем Bootstrap + JQuery + chart.js и никто не мешает использовать ваш Джанго. Заливайте в справочник папочку с Джанго. Добавляете странички, которые используют этот фреймворк Джанго, из 1С это все отдается и вуаля, Джанго освобожденный! :)
36. riposte 257 23.04.19 11:45 Сейчас в теме
(35)
А другой программист, когда придет, разберется, как это все работает? )
Ладно, шучу. Ждем статью.
acanta; TODD22; +2 Ответить
56. Diversus 2029 13.05.19 11:10 Сейчас в теме
37. TODD22 18 23.04.19 11:45 Сейчас в теме
(35)Зачем его "заливать" в 1С?
39. Diversus 2029 23.04.19 11:47 Сейчас в теме
(37) Можете в тексте странички использовать CDN-ссылки на скрипты, но для возможности использовать в локальной сети, которая может быть без доступа к интернету лучше "залить".
40. avk72 72 23.04.19 11:56 Сейчас в теме
(23) То, что Вы предлагаете, не всегда применимо по нижеследующим причинам:
1. Не всегда есть возможность разместить 1с на стороннем хостинге.
У автора веб сайт функционирует независимо от 1с и может работать автономно, в качестве веб витрины предприятия. Поэтому, я бы на его месте, также бы делал веб сайт с собственным бекэндом. Да, необходимо организовывать обмены, но основной плюс в том, что мы на выходе имеем две слабосвязанные системы, которые могут работать независимо друг от друга.
2. 1с требует периодического останова на регламентные операции и прочее.

3. Конфиденциальность.
Обычно, базы 1с размещают на внутренних серверах компании, потому, что не все что есть в базе должно быть публично.

2. Только вы адекватно сможете поддерживать эту систему

Я не уверен, что обыкновенный одинэсник разбирается в javascript и может исправить при необходимости выдачу контента через http сервис.
Можеть быть, для управления IT отделом, Ваш подход вполне применим, но для веб витрины все же предпочтительней отдельное веб приложение с собственным бекэндом и базой данных.

(0) Автору хочется пожелать удачи. Сайт вполне неплох. Молодец.
41. Diversus 2029 23.04.19 12:06 Сейчас в теме
(40) Да, вы правы. Есть плюсы, есть минусы того, или иного подхода.
Решение, которое реализовали мы - это "нативный" подход. У автора свое видение и свое восприятие ситуации, которую надо решить в определенном месте с конкретными условиями, но как сказал выше автор, он не знал, что так можно.
Безусловно то, что автор реализовал такую задачу - это отлично и он молодец! С этим никто и не спорит.
28. riposte 257 23.04.19 11:19 Сейчас в теме
1. Критичное звено - это этап выгрузки и последующей загрузки. Если оно даст сбой, информация в базе будет неполной или неактуальной. Этот этап будет в ближайшее время пересмотрен, т.к. на момент создания не было четкого понимания возможностей rest api.
2. Ну тут можно практически про что угодно так сказать. Написал обработку, которая что-то делала, а через два года она сломалась и нет программиста 1С, который может с полпинка в ней разобраться и поправить. Как бы, если отваливается выгрузка или падает бэкенд, то в любом случае нужен будет специалист, чтобы это починить.
Другое дело, когда написано по-китайски или лапшой. Я надеюсь, что у меня не настолько сложный и непонятный код. По поводу "другой разработчик, все переписать" - да и пусть себе переписывает. Если другой разработчик преследует цель сделать как ему нравится или как он считает нужным, он найдет аргументы в пользу "все фигня, надо по другому".
3. Задачи постоянной выгрузки или полной интеграции не стояло. Цены в УТ устанавливаются на день и не так часто, актуальность оперативных остатков с точностью до минуты тоже не является обязательным фактором. Итоговый заказ, сформированный на сайте, не факт что будет реализован именно так, как придет. Что-то уже в резервах, что-то будет предложено из альтернатив, что-то пойдет в допоставку - это уже работа отделов. Требование к менеджеру вручную загружать и обрабатывать заказ скорее организационное, нежели из-за лени реализовать автоматическое формирование заказа. "Не заметил уведомление, забыл и т.д." А так менеджер берет номер заказа и обрабатывает его сразу до этапа согласования и выставления счета.

По поводу вэбклиента на базе 1С.
Немного непонятно, это что-то вроде реализации шаблонизатора Jinja? Было бы неплохо, конечно, использовать непосредственно 1С как источник данных и бэкэнд, но узким местом в нашем случае будет доступность самого сервера, который нельзя разместить вне офиса, не такой широкий канал, и физически он всего один. Плюс даунтаймы из-за периодических проблем с электричеством или из-за того, что с сервером возникли проблемы. Крайне редко, конечно, но случается. Обеспечить хорошую доступность и аптаймы 24/7/365 мы не можем.

Хотелось бы заменить стэк XML->FTP->DB на что-то типа DRF<-1C API или 1C->DB API. Где-то натыкался на реализацию REST-запросов к 1С, сяду этим заниматься, обязательно найду. Но отдавать HTML самой 1С... видится мне менее надежным, нежели когда 1С отдает JSON, а рисованием страниц занимается обычный JS-фреймворк.
33. Diversus 2029 23.04.19 11:36 Сейчас в теме
(28)
Но отдавать HTML самой 1С... видится мне менее надежным, нежели когда 1С отдает JSON, а рисованием страниц занимается обычный JS-фреймворк.

А кто сказал, что рисованием страниц занимается 1С? :) 1С отдает HTTP-файлы (html, js, css, картинки и прочее), а в этих файлах могут быть любые данные, в том числе и страницы фреймворков, скрипты и прочее. Например, наш проект для вывода данных использует Bootstrap + JQuery + chart.js Т.е. 1С нам нужна именно для генерации полезного кода, все остальное отдается браузеру как есть. Есть шаблон заполнения странички, есть алгоритм заполнения недостающих частей страницы, алгоритм выполняется 1С. Итоговый результат отправляется пользователю.
И да - это в какой-то мере и шаблонизатор.
34. riposte 257 23.04.19 11:42 Сейчас в теме
(33)
Тогда вопрос по нагрузке. Сколько активных клиентов может выдержать 1С, сохраняя комфортную работу всех остальных локальных пользователей?
Кто-то уже спрашивал вроде про ддос и прочие прелести заваливания сервера мусорными запросами.
38. Diversus 2029 23.04.19 11:46 Сейчас в теме
(34) ответ в (35) единственное дополню.
Вот ссылка на повышение производительности http://v8.1c.ru/o7/201604service/index.htm
42. avk72 72 23.04.19 12:30 Сейчас в теме
(0) Я тоже смотрел в строну фреймворка Vuetify и вообще разработки на Vue, но мне не хватило некоторых компонентов:
Селектора с возможностью выбора из дерева.
Пошагового селектора, когда выбираем сначала, например, страну, а затем город в этой стране.
Некоторых других вещей.
После долгой переписки с разработчиками, пришел к выводу, что проще самому сделать эти компоненты. чем ждать, пока их реализуют.

Список товаров, думаю, можно сделать с VDataIterator и показывать отдельными карточками. Так наверное лучше выглядеть будет.
43. riposte 257 23.04.19 12:44 Сейчас в теме
(42)
VDataIterator используется при отрисовке на малых экранах. (XS, SM). Можете проверить, уменьшив окно браузера.
45. s_vidyakin 23.04.19 15:45 Сейчас в теме
46. avk72 72 23.04.19 16:08 Сейчас в теме
(45) Там возникли проблемы с наползанием элементов друг на друга и со скрытием меню во время выбора.Я уже не помню точно. Я и другие смотрел варианты. Предпочтительно, чтобы все компоненты были реализованы в одном фреймворке и имели более менее согласованный стиль оформления. В итоге сделал кастомный билд Vuetify с нужными компонентами. Их пришлось делать собственноручно. Сейчас думаю, как бы все это оформить отдельной библиотекой. Но все упирается во время.
У автора были две недели. А у меня с этим сложности....
44. Kalam 105 23.04.19 14:17 Сейчас в теме
Автор красавчик. Если был бы такой же запрос, тоже бы так сделал.
Работа конечно проделана большая и всё, имхо подобрано и сделано удачно, ну да с обменами можно было бы подумать, но сроки не дали ))
Тоже думал что-то такое с прайсами и заказами сделать, но времени нет, всё так же как и с ботами под телегу для заббикса ;)
48. baracuda 2 25.04.19 11:17 Сейчас в теме
Добавил в закладки спасибо, я проделывал уже такое.
правда данные на сайт лил простым POST запросом с JSON данными. Отрабатывает на ура, и файлики не нужны.
49. herfis 285 26.04.19 09:21 Сейчас в теме
Интересно было прикоснуться к питоновой инфраструктуре, спасибо.
50. user778014 6 28.04.19 00:50 Сейчас в теме
А вот добавил бы господин Нуралиев в 1с доступ к html верстке и лицензирование 1c по ядрам, так и не нужна бы была вся эта приблуда с Python, Django, Vue.js и прочая лабудистика
51. _Z1 38 29.04.19 11:49 Сейчас в теме
(50) Не очень понятно чем это поможет.Ведь в данном решении все таки два сервера
один это сервер где приложение 1с
Второй сервер это VPS хостинге.

Предположим что у Вас нет цен за Лицензию 1c.
Вы хотите совместить эти два сервера и пустить внешних клиентов в свою внутреннюю сетку ?
или Вы хотите на втором сервере который снаружи полностью написать сайт на 1с ?
55. riposte 257 01.05.19 00:48 Сейчас в теме
(50) https://infostart.ru/public/305854/
Если так хочется, можно делать из сервера 1С бэкенд. Но Фронт на базе того же 1С уже будет слишком.
Тем не менее, вэб-сеансы будут нуждаться в лицензировании.
А вот когда 1С выступает просто источником данных и иницатором обмена с бэкендом через регламентное\фоновое задание - лицензия не требуется (кроме лицензии на сервер 1С).
Сохраняется безусловная безопасность самой базы 1С, т.к. прямого доступа к ней из интернета нет. В СУБД на бэкенде присутствует только выгруженная информация, необходимая для работы приложения, поэтому она не критична сама по себе. Ну и падение 1С не останавливает работу сайта, как падение сайта не останавливает работу 1С. Разделение задач и сред выполнения таки повышает в целом стабильность системы. По аналогии и с серверами - не пихают все в одну ОС, а создают несколько серверов, каждый выполняющий свои 1-3 задачи. Создание комбайнов, которые "делают все" чревато остановкой работы всего при их отказе.
А еще для повышения доступности и отказоустойчивости можно организовывать региональные кластеры практически всего и вся. Но это уже для энтерпрайзов уровня страны\мира.
_Z1; acanta; +2 Ответить
63. user1255028 10.09.19 11:30 Сейчас в теме
(55)
Судя по https://its.1c.ru/db/v8313doc#bookmark:adm:TI000000304
Лицензии на любые интернет-сервисы не требуются.
52. user778014 6 29.04.19 12:34 Сейчас в теме
Да разные варианты можно сделать. И первый и второй. Сейчас на 1с этот вариант не пройдет так как лицензирование нужно на каждое подключение, а у вас непонятно сколько пользователей будет заходить на сайт, плюс на 1с невозможно написать свой произвольный веб интерфейс.

Просто я о том что легким движением 1С руки, можно бы было сделать ненужными всю эту какафонию технологий
53. acanta 74 29.04.19 12:43 Сейчас в теме
54. user778014 6 29.04.19 13:52 Сейчас в теме
(53) В принципе даже просто добавив лицензирование по ядрам уже можно бы было использовать 1с в различных вебсервисах более активно
57. albert.goncharov 83 28.07.19 13:34 Сейчас в теме
Не смотрел, но сам подход абалденный!
59. silberRus 66 15.08.19 12:04 Сейчас в теме
Не смотрел, не могу ничего сказать.
но когда вижу rest и ftp рядом - не понимаю, зачем.
60. riposte 257 15.08.19 14:32 Сейчас в теме
(59)
Один из клиентов забирает отведенные ему файлики выгрузки на свой сайт.
С оформления для него этой выгрузки все и началось.
А раз это уже было сделано, то рядом делать выгрузку через API не стал.
Так то да, обновлял бы через запросы. Оно и напрашивается.
61. andron58 19.08.19 12:14 Сейчас в теме
А почему через ту же Django POST'ами инфу не заливать в БД (либо xml скармливать DJANGO, без использования FTP, 21 век же, ну)
62. andron58 19.08.19 12:16 Сейчас в теме
(61) понятно, увидел ответ выше
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Белгород
зарплата от 50 000 руб. до 60 000 руб.
Полный день

Программист 1С
Новосибирск
зарплата от 50 000 руб. до 80 000 руб.
Полный день

Программист, аналитик, эксперт 1С
Санкт-Петербург
По совместительству

Технический лидер, архитектор 1С, руководитель проектов
Санкт-Петербург
зарплата от 150 000 руб.
Полный день

Ведущий 1С консультант по БГУ
Омск
зарплата от 50 000 руб. до 95 000 руб.
Полный день