Имя: Пароль:
1C
1С v8
Интернет-магазин на 1С — webstore-on-1c.ru :)

, ,
0 Звездочёт
 
16.02.17
16:45
Продолжаем осваивать новую технологию http-сервисов от фирмы 1С :) Напомню, она позволяет создавать полноценные веб-сайты на движке 1С.

Рабочий макет интернет-магазина:
http://webstore-on-1c.ru

Сайт работает на типовой конфигурации 1С, в частности управление торговлей 10.3. Может работать, естественно, на любой конфигурации, где есть что продавать :)

Доработка конфигурации составила всего один общий модуль (содержит в себе весь функционал сайта) и простейший объект http-сервисов. Весь код на встроенном языке 1С, никаких компонент и прочей ерунды. Только встроенные возможности платформы 1С 8.3 :)

Данная разработка предназначена для изучения и освоения новой актуальной технологии от фирмы 1С. Показывает, как небольшими усилиями можно получить многофункциональный веб-сайт:
http://webstore-on-1c.ru

Реализованный функционал:
• Страница списка товаров. Сортировка. Отбор по категориям.
• Страница товара.
• Корзина.
• Оформление заказа. Отправка сообщения о заказе на почту (с копией администратору).
Немного доработать и готов полноценный интернет магазин!

Кто пропустил предыдущее обсуждение, может почитать тут:
Bootstrap на 1С 8.3 :)
248 Звездочёт
 
06.03.17
17:00
(246) >> А по содержанию по моим ставкам будет совсем не то, что в (0)
Понятно. От 100, но сразу много )
249 Юрий Лазаренко
 
06.03.17
17:05
(248) Больше - не значит лучше.
250 shamashs
 
07.03.17
15:11
Вопрос к ТС, как реализована выгрузка товаров, выгружаются ли каталог товаров в режиме онлайн, т.е. в какой момент происходит выгрузка нового добавленного товара, обновляется ли на текущий момент файлы из 1с, т.е. добавили картинку к товару, идет ли выгрузка из 1с? Как происходит выгрузка остатков и цен, все происходит с помощью веб сервисов?

Архитектура не совсем понятна, есть промежуточная база данных куда складируются данные и выводятся пользователю? Как обычных им, или данные при каждом обновлении странички тянутся из 1с?
251 Вафель
 
07.03.17
15:11
(250) ты ничего не понял.
никакиз выгрузок!!!
253 shamashs
 
07.03.17
15:14
баз данных сколько? (251) 1с и все?
258 Звездочёт
 
07.03.17
18:59
(253) да, одна )
259 Звездочёт
 
14.03.17
13:42
Только сядешь программировать и кто-нибудь рядом:
http://coub.com/view/s3s8e
260 Звездочёт
 
27.03.17
14:22
Удивительно, как много людей думаю, что если интернет-магазин будет работать на 1С, то все равно надо куда-то что-то выгружать :)
Нет, не надо. Просто вводите данные в 1С и всё сразу на сайте. Мгновенно. Без вмешательства операторов и специалистов :)
261 lucbak
 
27.03.17
14:25
(260) Все читать лень, что на счет лицензий?
262 ГеннадийУО
 
27.03.17
14:26
(260) Что, и цены на сайте в реальном времени меняться будут? А клиент не офигеет - зашел на сайт - одна цена, а через минуту другая?
263 Юрий Лазаренко
 
27.03.17
14:59
(261) Сейчас кто-нибудь напишет, что достаточно одной люцухи, но это не так. Любой прямой доступ одного пользователя к базе 1С - это одна лицензия. 100 пользователей одновременно на сайте = 100 лицензий.
264 Юрий Лазаренко
 
27.03.17
15:01
+(263) Не говоря уже о том, что на одной лицензии практически невозможно обеспечить параллельную нетормозную работу сайта для двух и более посетителей одновременно.
265 Звездочёт
 
27.03.17
15:48
(262) >> одна цена, а через минуту другая
ну если только ему так повезло, что он перед сменой ценников зашел в магазин )
смотрит на товар - одна цена. на его глазах ценник достают и ставят другой )
266 Вафель
 
27.03.17
15:49
(262) В туризме например цены иногда меняются раз в 15 мин
267 lucbak
 
27.03.17
15:52
(263) Дорогой сайтик получается... не дай бог еще популярный будет - разорит владельца :)
268 Юрий Лазаренко
 
27.03.17
15:54
(267) Не, достаточно сделать промежуточную БД, с которой будут работать пользователи, и проблема лицензий решается. Как у metadata.js, например.
269 Звездочёт
 
27.03.17
15:57
(263), (264) Юрий, Вы продолжаете вводить людей в заблуждение :) Предыдущее обсуждение (второе по счету) закончилось также безрезультатно (100), (101), (106), (107).
Напомню, эту информацию Вы устно уточнили у неизвестных лиц.
270 Юрий Лазаренко
 
27.03.17
16:12
(269) Хорошо-хорошо, я не настаиваю.
271 Звездочёт
 
27.03.17
16:17
(270) не настаиваете, но все время об этом пишите ) уже третий раз. Это только в моих ветках.
Стоит попытаться разобраться в сути, как Вы сразу умываете руки )
272 Юрий Лазаренко
 
27.03.17
16:35
(271) Я во всех ветках это пишу. Если просят подробностей, то даю ссылку на сайт 1С, пункт 59: http://v8.1c.ru/predpriyatie/questions_licence.htm#mvv
273 Cyberhawk
 
27.03.17
16:36
А технически что с лицензиями? HTTP-соединения (что будут отображаться в списке сеансов) на время работы сеанса будут отжирать одну лицензию, так? А мультиплексированию это дело плохо поддается (ну т.е. вроде нельзя настроить так, чтобы каждое новое параллельное ХТТП-соединение стартовало в отдельном сеансе с новым соединением, а не ждало, пока освободится соединение из пула)...
274 Юрий Лазаренко
 
27.03.17
16:40
(273) ". вроде нельзя настроить так, чтобы каждое новое параллельное ХТТП-соединение стартовало в отдельном сеансе с новым соединением"

<pool size="1"/>
в default.vrd.
275 Юрий Лазаренко
 
27.03.17
16:41
+(274) Но тогда каждый новый сеанс в браузере будет открываться долго, пока открывается новый сеанс в 1С.
276 Cyberhawk
 
27.03.17
16:44
(275) А если не в браузере, а просто зовется веб-/хттп-сервис, то тоже ведь долго будет?
Я же больше рассуждал тут (про невозможность управлять), когда в настройках пула стоит дохрена соединений, и делаешь, например, в 50 параллельных фоновых заданиях вызов веб-/хттп-сервиса и смотришь в консоли сервера - там вяло одновременно 2-8 сеансов WS-/HTTP-соединения, и становится все это досадно...
277 Cyberhawk
 
27.03.17
16:44
+(276) Получается, что из 50 одновременных выполняются только где-то 5, а остальные ждут, и так по очереди...
278 Юрий Лазаренко
 
27.03.17
16:46
(276) "А если не в браузере,"
А какая ему разница, из браузера запрос пришел или напрямую откуда-то.

"а остальные ждут, и так по очереди..."
При наличии свободных лицензий ждать не будут.
279 Cyberhawk
 
27.03.17
16:48
"При наличии свободных лицензий ждать не будут" // Т.е. ты вживую видел, как одновременно в списке сеансов (не соединений) работали больще, например, 10 WS-/HTTP-соединений? Спасибо за наводку с лицензиями, проверю на досуге...
280 Юрий Лазаренко
 
27.03.17
16:51
(279) Ну вообще-то да )
281 Юрий Лазаренко
 
27.03.17
16:52
У меня сейчас как раз задача как можно больше подключений от браузера вместить в один сеанс 1С. Даже свою собственную подсистему для нагрузочного тестирования написали (почти написали - процентов 15 работы осталось). Тестим возможности 1С на больших нагрузках.
282 Звездочёт
 
28.03.17
14:58
(276) >> в 50 параллельных фоновых заданиях вызов веб-/хттп-сервиса
У вас одни базы 1С вызывают другие?
что за "фоновые задания", вызывающие "веб-" и "хттп-" сервисы?
283 Адинэснег
 
28.03.17
15:40
пришли роботы яндекса/гугла и положили сайтег... ИМ на 10к товаров...
284 mehfk
 
28.03.17
15:47
Не каждый одинэсник может знать, что http и web сервисы не используют клиентских лицензий, если используется сервер 1с:предприятия, мало кто может это знать.
285 Юрий Лазаренко
 
28.03.17
16:02
(284) И что теперь, при работе через http-сервисы лицензии совсем модно не покупать?
286 eks1985
 
28.03.17
16:40
(284) Лицензионное соглашение открой и почитай на досуге, много чудных открытий сделаешь. Что там 1с технически использует и как - дело вообще десятое.
287 mehfk
 
28.03.17
16:41
(286) Рассказывай, не томи.
288 mehfk
 
28.03.17
16:41
(285) Перечитай сообщение еще раз.
289 eks1985
 
28.03.17
16:43
(287) Глаза поднять на пару постов выше не судьба?

http://v8.1c.ru/predpriyatie/questions_licence.htm#mvv
290 mehfk
 
28.03.17
16:45
(289) Напиши текстом, дорогуша.
291 eks1985
 
28.03.17
16:47
(290)

59.    Организация предоставляет доступ к веб-сервисам, реализованным в "1С:Предприятии 8". Какое количество и каких лицензий необходимо приобрести Организации?

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

См. также ответы на вопросы 31, 32, 56, 57.
292 mehfk
 
28.03.17
16:52
Что такое "рабочее место" в случае использования веб-сервиса веб-сайтом?
293 eks1985
 
28.03.17
16:56
Компьютер, телефон, микроволновка, что угодно, дергающее веб сервисы 1с-ки
294 mehfk
 
28.03.17
17:00
(293) Тогда выходит что если компьютер, телефон, микроволновка, что угодно, непосредственно не дергает веб сервисы 1с-ки, то соответсвенно рабочим местом не явлется?
295 eks1985
 
28.03.17
17:08
(294) Молодец, делаешь успехи.
В (268) Юрий об этом уже писал

>> Не, достаточно сделать промежуточную БД, с которой будут работать пользователи, и проблема лицензий решается. Как у metadata.js, например.
296 mehfk
 
28.03.17
17:20
(295) Дорогуша, как правило сайты работают так, чтобы не конечный ПК к веб-сервису обращался.
297 mehfk
 
28.03.17
17:21
И все твои поползновение не более чем пук в лужу.
298 Вафель
 
28.03.17
17:39
(296) так это нужно какуюто прослойку писать типа сервера приложений. но тут то ее нет
299 Юрий Лазаренко
 
28.03.17
18:14
(296) А вот ТС презентует в (0) исключение из правила. ТС молодец, несомненно, но в текущем варианте исполнения на каждого посетителя сайта необходимо купить лицензию.
300 mehfk
 
28.03.17
18:22
(300)
301 mehfk
 
28.03.17
18:23
(299) Ну тогда это шляпа.
302 Cyberhawk
 
28.03.17
19:07
(284) Ну вот, значит (278) "При наличии свободных лицензий ждать не будут" не в тему?
303 eks1985
 
29.03.17
15:08
Пообщался с представителем 1с, который ведет корпоративный блог 1с на Хабре.

Мой вопрос:

Здравствуйте, в свете существование в платформе таких отличных вещей как веб сервисы и http сервисы многие 1с-ники считают что на 1с можно «писать сайты» и купить для этого надо только одну лицензию независимо от количества пользователей сайта. Для себя я четко понимаю, что это не так, все четко написано в лицензионном соглашении (мультиплексирование), но 1с-ники верят только официальной позиции важных людей из 1с. Вот в ветке на мисте развернулась дискуссия, является ли такой вид использования — нарушением лиц соглашения: Интернет-магазин на 1С — webstore-on-1c.ru :). И очень часто данный вопрос всплывает в других обсуждениях на форумах.
Могли бы вы дать какой-либо комментарий по данному вопросу, который можно предъявить «массам»?

Его ответ:

Здравствуйте!

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

Подробнее тут, пункт 59.

http://v8.1c.ru/predpriyatie/questions_licence.htm#mvv
304 Юрий Лазаренко
 
29.03.17
15:17
(303) Полагаю, сейчас ТС запросит ФИО представителя 1С )
305 eks1985
 
29.03.17
15:31
(304) Ну да, со сканом паспорта, что-то я об этом не подумал =)
306 Звездочёт
 
29.03.17
17:54
(303) Отлично ) это уже что-то! ) Любопытно, кто у них там отвечает )
(304), (305) юмор оценил )
307 eks1985
 
29.03.17
18:12
(306) Петр Грибанов, технологический евангелист фирмы «1С»
Вот он https://www.youtube.com/watch?v=adByHP-nY68
308 mehfk
 
29.03.17
18:21
(303) Евангелист не может ответить на вопрос, сколько, например, нужно клиентских лицензий на дисконтном сервере? Если доступ к нему осуществляется только через веб сервисы из других 1с баз данных, на которых работают пользователи и уже приобретены все необходимые лицензии?
309 Звездочёт
 
29.03.17
18:57
(303) Есть ссылка на пост? Может тебе дали дежурный ответ? :)
310 eks1985
 
29.03.17
19:02
(309) Это не пост, переписка в личке, сами можете ему написать - я думаю не укусит.

https://habrahabr.ru/users/PeterG/
311 eks1985
 
29.03.17
19:03
(308) Сам можешь спросить, лично я вопроса не понял, зачем покупать доп лицензии если "уже приобретены все необходимые лицензии"
312 Asmody
 
29.03.17
19:18
(311) Еванглист не может себе представить базу 1С, с которой пользователи интерактивно не работают?
313 eks1985
 
29.03.17
19:48
(312) Почему не может? Может наверное, его ответ не был привязан к "интерактивной работе". Сколько одновременных коннектов к базе - столько и лицензий, вот такая простая логика. При этом в обратную сторону можно, запускай 150 фоновых заданий и пущай они хоть эксель файлы сохраняют, хоть в облака пишут.
314 Звездочёт
 
29.03.17
19:56
(310) >> Это не пост, переписка в личке...
Ясно :) Это тоже устный ответ.
315 Юрий Лазаренко
 
29.03.17
20:28
(313) Ну еще бы за фоновые задания платить. Их иногда несколько десятков одновременно крутится.
316 eks1985
 
29.03.17
20:37
(314) ахах, устный конечно и печати синей нету.

Начальник звонит секретарше:
- У меня остро встал вопрос!
Она отвечает:
- Я сейчас немогу, у меня месячный отчет!
После некоторого раздумия заходит в кабинет:
- Могу оформить задним числом или в устной форме!
- Да уже не надо, я от руки набрасал!
317 eks1985
 
29.03.17
20:41
(315) Ну за передачу информации с сервера же предлагают платить, как по мне это даже более дико чем платить за фоновые задания  =)

https://wonderland.v8.1c.ru/blog/peredacha-informatsii-s-servera/
318 Волшебник
 
модератор
29.03.17
20:47
eks1985, просьба не публиковать здесь Вашу личную переписку с фирмой 1С или её представителями. Это нарушение правил форума.
319 mehfk
 
29.03.17
20:52
(318) Он же явно спросил "Могли бы вы дать какой-либо комментарий по данному вопросу, который можно предъявить «массам»".
320 Волшебник
 
модератор
29.03.17
20:56
(319) Это всё равно остаётся его личной перепиской, которую он может извратить по собственной прихоти, а слова выдать за цитату представителя фирмы 1С, за что мне будет претензия.
321 mehfk
 
29.03.17
21:02
(320) Значит автору цитат ил личной переписки надо притащить "Евангелиста" сюда, чтобы он сам ответил на эти вопросы?
322 eks1985
 
29.03.17
21:05
(318) ок
323 Юрий Лазаренко
 
29.03.17
21:09
(317) Думаю, в данном случае 1С планирует освоить дополнительные деньги на крупных клиентах. Мелким с небольшими базами и малым количеством пользователей уведомления от сервера вряд ли сделают погоду. А крупные для оптимизации вполне будет готов заплатить. Поэтому и идет все это отдельной коробкой.
324 Волшебник
 
модератор
29.03.17
22:21
(321) Ну например так.
325 SvenSoft
 
29.03.17
22:53
У всей этой затеи есть несколько два глобальных минуса:
1.
> Может работать, естественно, на любой конфигурации, где есть что продавать :)
Тут нужно начать с того, что Http-сервисы доступны только начиная с платформы 8.3.5.1068, а это значит что конфигурация должна иметь "Режм совместимости" не ниже 8.3.5 - а большинство типовых конфигураций перевести в этот режим будет ОЧЕНЬ болезнено, а иногда практически невозможно.
Это большая проблема с веб-сервисами!

2. Самое главное - сервер 1С, на базе которого будет построен сайт должен быть онлайн 24/7 - иначе продвигать сайт в SEO (а это очень дорогое удовольствие) будет бесполезным занятием (деньги на ветер), потому что поисковики из-за 404-ых 500-ых ошибок (из за недоступности 1с сервера) будет просто выбрасывать проиндексированные страницы из своей базы.
      
Звездочёт, если я не прав, поправьте меня.
326 Звездочёт
 
29.03.17
23:32
(325) п.1. древние конфигурация я не рассматриваю. Имелось ввиду, что будет работать как на УТ 10.3, КА 1.1, УПП 1.3, так и на УТ 11, КА 2.0, УП 2.2. Или самописные.
327 Звездочёт
 
29.03.17
23:44
+(325) п.2. Конечно, резонное замечание.
У двух моих клиентов базы 1С и так работают 7х24 :)
Если кто-то хочет дополнительные возможности/функционал, чем-то надо за это заплатить. Временем, деньгами, вычислительными ресурсами. Каждый выбирает сам.
328 Юрий Лазаренко
 
29.03.17
23:54
(325) По обоим пунктам все решаемо, причем быстро и достаточно просто. С планшета писать неудобно, завтра расскажу подробнее.
329 SvenSoft
 
30.03.17
02:12
3-тья проблема а том, что сама по себе 1-С мягко говоря не может похвастаться быстродействием, а поэтому страницы магазина, где нужна фильтрация и все то, что на стороне 1-С вызовет непростые запросы, либо получение и передачу большого количества объектов - все это будет тормозить на стороне сайта и очень.

Я с год назад тоже вначале был воодушевлен такой идеей, сделал пару магазинов на 1-С HTTP-сервисах. В итоге один через пол года переписал под обмен данными между 1-С и магазином, второй поисковик уже несколько раз выбрасывал (по 100-200 страниц) из поиска по причине 2.
330 Звездочёт
 
30.03.17
12:59
(329) >> все это будет тормозить на стороне сайта и очень
разобрался в чем причина тормозов? я делал замеры - 1С-ка формирует ответ меньше секунды. Конечно, запрос запросу рознь, но я не встречал, чтобы запрос технологически, а не логически, был тормозом.
331 Звездочёт
 
30.03.17
13:01
+(329) >> второй (прим. сайт) поисковик уже несколько раз выбрасывал (по 100-200 страниц) из поиска по причине 2.
почему база была недоступна? как часто и как долго? есть статистика?
332 Звездочёт
 
30.03.17
13:09
(329) надо смотреть, где эти базы вообще крутились (хостинг, ОС, веб-сервер, настройки)? как все было организовано?

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

Цитирую пост (81):
Внизу страницы добавил время выполнения на стороне 1С.
http://webstore-on-1c.ru/img/o0.png
Анализ загрузки показал, что время уходит на работу скриптов и прорисовки страницы браузером:
http://webstore-on-1c.ru/img/o1.png
Остается вопрос оптимизации html шаблона, а не 1С.
333 Звездочёт
 
30.03.17
13:41
(316) вспомнился случай :)
Нургалиев разрешил обороняться от милиционеров
http://www.kp.ru/daily/24401/577807/
334 SvenSoft
 
30.03.17
13:50
(330) >> разобрался в чем причина тормозов? я делал замеры - 1С-ка формирует ответ меньше секунды. Конечно, запрос запросу рознь, но я не встречал, чтобы запрос технологически, а не логически, был тормозом.

Как выше сказал, сама по себе обработка запросов в 1-С происходит гораздо гораздо медленнее, в сравнении с обработкой запросов через тот же PHP+MySql на стороне сайта. Не стоит забывать так же, что в случае магазина, построенного на HTTP-сервисах, то когда происходит обращение к странице магазина, происходит запрос на сторону 1С-сервера (Apache, IIS), формирование запроса на стороне 1С-сервера, пересылка результата на сторону сайта и только потом отображение на основании полученных данных (все это ТОРМОЗА, особенно в случаях с непростыми запросами или получением ип ередачей большого объема данных), тут и сравнивать нечего с вариантом, когда идет запрос к странице магазина и тут же на месте PHP получает данные от MySql и формирует страницу на основании полученных данных.  

(331) >> почему база была недоступна? как часто и как долго? есть статистика?

Windows сервера, где практически всегда крутится 1С, как не крути требуют 2-3-4 раза в месяц обслуживания (обновление ПО, обслуживание SQL-сервера и т.д.) поэтому 2-3-4 раза в месяц такие сервера бывают недоступны по причине технического обслуживания. Поисковик раз пришел, попал в такую ситуацию, когда страницы 404, или 500, второй раз пришел когда все работает, в третий/четвертый-десятый раз пришел когда все работает, в одиннадцатый раз пришел, когда страницы 404 или 500, в двадцать первый раз пришел когда страницы 404 или 500 - все, выкинул страницы пачкой из выдачи.

Когда сайт зависит не от одной железки (Linux, где непосредственно располагается сайт), а от двух, где второй железкой выступает Windows-сервер, который в разы и в разы чаще требует технического обслуживания, то это ....

Так же понятен такой факт, что поисковик не любит тормознутые страницы.
335 SvenSoft
 
30.03.17
14:09
> Windows сервера, где практически всегда крутится 1С, как не крути требуют 2-3-4 раза в месяц обслуживания (обновление ПО, обслуживание SQL-сервера и т.д.) поэтому 2-3-4 раза в месяц такие сервера бывают недоступны по причине технического обслуживания. Поисковик раз пришел, попал в такую ситуацию, когда страницы 404, или 500, второй раз пришел когда все работает, в третий/четвертый-десятый раз пришел когда все работает, в одиннадцатый раз пришел, когда страницы 404 или 500, в двадцать первый раз пришел когда страницы 404 или 500 - все, выкинул страницы пачкой из выдачи.

Так не редки сюрпризы, когда внезапно что-то отваливается на стороне 1С-сервера.
336 Юрий Лазаренко
 
30.03.17
16:24
(325) Пункт 1. Отсутствие http-сервисов в старых релизах не проблема, потому что там как минимум есть веб-сервисы, значит, все можно сделать и на них, хоть они и менее удобные и более тормознутые. Если очень хочется, то можно и из 7.7 данные тянуть. Для этого на серваке поднимается пустая база-репитер с http-сервисами, которая принимает запросы посетителя и путем подключения к рабочей базе (через веб-сервисы, COM или еще как угодно) вытаскивает одни данные и кладет другие. Понятно, что скорость будет чуть ниже, чем при прямом подключении, зато такой вариант улучшает безопасность данных: даже если кто-то подключится к базе-репитеру, то вытаскивать с нее все равно будет нечего. Вообще, существование посредника между браузером пользователя и рабочей базой, это большой плюс в таких проектах.
337 Юрий Лазаренко
 
30.03.17
16:31
(325) Пункт 2. Проблему легко решает посредник между пользователем и рабочей базой 1С, размещенный на сайте (набор скриптов на php, например). Совсем необязательно всю страницу сайта формировать в 1С - даже лучше, если статика будет генериться на сайте php-шными скриптами (и отдаваться из кэша), а динамические данные тянуться из 1С.
Формируем статику на php, возвращаем ее с ответом "200" браузеру пользователя и ботам яндекса и гугла. Далее аяксом вытаскиваем из 1С нужные данные и показываем посетителю. Если 1С в этот момент недоступна, то скрипт php отработает исключение и покажет сообщение "У нас беда, зайдите позже". Пользователь-человек поймет, что идет профилактика и придет позже. Бот не выбросит страницу из базы.
Конечно, тут есть еще много нюансов, про которые я тут рассказывать не буду, но принцип, думаю, понятен.
338 Юрий Лазаренко
 
30.03.17
16:37
(329) Пункт 3. Понятно, что при прочих равных большинство сайтов на 1С будут работать медленнее, чем сайт на php. Хотя бывает и такое, что 1С показывает лучший результат. Но тут надо учитывать, что ТС выбрал в качестве демонстрационного примера наверное самый неподходящий вариант использования 1С в качестве бэка для сайта: розничные интернет-магазины и так нормально работают с настроенным обменом между БД сайта и БД 1С. Поэтому данную технологию лучше использовать для решения других задач - когда нужен альтернативный типовому веб-клиенту интерфейс.
339 SvenSoft
 
30.03.17
19:26
(336) По Пункту 1 - веб-сервисы, промежуточные базы, а уж тем более COM - это вообще будут жуткие тормоза.
Так же такой подход будет очень трудозатратен, как следствие более дорогой и при этом тормознутый, не понятно зачем тогда все это.
Напмного проще, дешевле и правильнее во всех отношениях написать обмен между сайтом и 1С. А если еще и учесть что при этом 1С-сервер должен быть постоянно онлайн, статический IP и другие минусы - то и подавно.

(337) По Пункту 2
>> Совсем необязательно всю страницу сайта формировать в 1С - даже лучше, если статика будет генериться на сайте php-шными скриптами (и отдаваться из кэша), а динамические данные тянуться из 1С.
Не знаю, что имели ввиду под выражением "Статику", если это про html, то никто и не формирует полностью готовую стороне 1С - это было бы вообще тогда. ))
Из 1С тянутся только данные в JSON, и на их основании уже формируем страницу на сайте. Но если 1С-сервер недоступен, то и данных не будет, соответственно и страницы тоже.

>> Формируем статику на php, возвращаем ее с ответом "200" браузеру пользователя и ботам яндекса и гугла. Далее аяксом вытаскиваем из 1С нужные данные и показываем посетителю.  Если 1С в этот момент недоступна, то скрипт php отработает исключение и покажет сообщение "У нас беда, зайдите позже"
Уд простите, но это бредовая идея. Показывать поисковикам ранее проиндексированные страницы без контента - он так и заиндексирует их в том виде, в котором покажите. Аяксом подгружать из 1С контект после основной загрузки страницы - еще бредовее идея, поисковики еще очень плохо понимаю такие асинхронные JS вызовы.

Единственным правильным решением в такой ситуации является 302 редирект - и то это не айс как хорошо.


(338) По пункту 3
>> Хотя бывает и такое, что 1С показывает лучший результат.
Не бывают таких случаев. )) 1С запросы медленнее отрабатывают в сравнении с MySql запросами - это факт.

А если (как выше сказал) учесть, что тут даже сравнивать нельзя, при варианте магазина на Http-сервисах:
1. Пользователь запрашивает страницу магазина в браузере
2. Сервер получив параметры http-запроса, отправляет запрос на сервер 1С (посредством CURL) - это как еще один, причем более дорогостоящий запрос к сайту.
3. Apache или IIS на сервере 1С получив запрос от сервера Linux перенаправляет его в 1С-Предприятие.
4. 1С-Предприятие формирует запрос, получает результат, преобразует результат в JSON и отдает его Apache, он в свою очередь возвращает его серверу Linux
5. Скрипт сайта разбирает полученные данные в JSON, обрабатывает их, формирует на их основании HTML и отдает его конечному пользовтелю

и теперь просто PHP+MySql:
1. Пользователь запрашивает страницу магазина в браузере
2. Сервер получив параметры http-запроса, формирует запрос к MySql
3. MySql отрабатывает запрос, возвращает ответ
4. Скрипт сайта формирует на основании полученных HTML и отдает его конечному пользователю

>>  Поэтому данную технологию лучше использовать для решения других задач - когда нужен альтернативный типовому веб-клиенту интерфейс.

Вот здесь полностью согласен. Именно к такому выводу и я пришел, что хорошо это использовать там, где:
1. Конфигурация не требует переписывания кода при включении режима совместимости с 8.3.5 и выше.
2. Технические возможности предприятия позволяют держать включенным сервер 1С 24/7, или держать 1С на облачном сервере.
2. Сайт не нужно продвигать в SEO, а так же никто не будет страдать от того, что это будет немного тормозить.

Непосредственно для сайтов (интернет-магазинов), которые продвигаются в SEO, контекстная реклама и т.д., которые должны быть быстрыми и постоянно доступными - лучшиее решением является обмен данными, не прямое получение/отправка данных из/в 1С.
340 SvenSoft
 
30.03.17
19:28
пишу с планшета, уж извините за опечатки.
341 Юрий Лазаренко
 
30.03.17
20:12
(339) Ну собственно почти со всем согласен, даже с оценкой "это бредовая идея", потому что это в данном решении (0) это костыль, хотя в других случаях будет оптимальным вариантом. Данную технологию надо применять там, где это действительно имеет смысл.
342 Звездочёт
 
30.03.17
20:34
(339) спасибо за комментарии )
п.1 я вообще не рассматриваю. Это все равно, что 7.7 обсуждать.
п.2 само собой разумеется. Я за всю свою жизнь встречал только одну фирму, в которой сервер с базой 1С выключали на ночь :) По-слухам у них склад сгорел из-за короткого замыкания и теперь они, когда уходят, офис обесточивают.
п.3 да, по существу согласен.
343 Юрий Лазаренко
 
30.03.17
21:08
+(341) Хотя справедливости ради стоит заметить, что мне известен сайт, сделанный по технологии "прямое получение из 1с", он соответствует всем требованиям СЕО, всегда отвечает ботам  и держит несколько сотен сеансов пользователей одновременно. Но стоимость его разработки получилась такая, что неудобно ее даже озвучивать.
344 Звездочёт
 
31.03.17
18:51
(343) >> стоимость его разработки получилась такая, что неудобно ее даже озвучивать
какая первая цифра? )
345 Юрий Лазаренко
 
31.03.17
19:44
(344) Не, на эту уловку я не поведусь )
346 Боровик Сергей
 
07.04.17
07:03
(0) Вот я понять не могу.
А кто-то реально сможет доказать в суде что лицензий куплено 1, а вот путем мультиплексирования через эту одну лицензию извлекались данные для 1000 пользователей?
Разве это вообще может быть доказуемым? Что предъявит истец? Свои логи? Мол мы одновременно в двух браузерах запрашивали товары, и нам веб-сервер отвечал. А лицензия то гражданин судья то у них одна!!! А вдруг ответчик скажет, мол так и так, истец все выдумал и данные фактически берутся из MemCached, а вовсе не из 1С.
При мультиплексировании 1С поочередно обрабатывает каждую задачу (в нашем случае запрос), и возвращает веб-серверу данные (Ответ). Как некоторые утверждают для каждого клиента чьи данные 1С обрабатывает нужна отдельная лицензия. Так вот есть ряд вопросов:
1) Как понимать «одновременно будут работать с веб-сервисами 1С». Как по мне – так в режиме мультиплексирования (пул=1) к одновременно может работать только одни пользователь. Или 1С уже стала многопоточной?
2) А если это не веб-сервис? А если веб-сервер путем COM-Connector лезет в базу?
3) А если не веб-сервер лезет в 1С, а 1С лезет на веб-сервер и им рулит? (А на веб-сервере ждут своей очереди запросы для обработки)
4) И наконец. А если веб-сервер отправляет на почту запросы пользователей, 1С разгребает эту почту (pop3) и отправляет ответы веб-серверу тоже по почте (SMPT)?
347 ГеннадийУО
 
07.04.17
08:17
(346) Совесть пассажира - лучший контролёр(с)