Скорость синхронизации с 1С (Страница 1 из 2)
Скорость синхронизации с 1С (Страница 1 из 2)
Поделитесь своим опытом. Сколько по времени у вас занимает полный обмен данными 1с с сайтом?
При этом укажите количество позиций.
Столкнулись с такой бедой что у нас обмен данными длится уже сутки.
В выгрузке участвует 60000 товаров. И это просто товары (Наименование, артикул, цена, остаток) тут даже нет речи о картинках и свойствах.
Пока ТП разбираются с вопросом, хотел бы узнать у кого как.
2 Ответ от Ярослав 19.01.2018 17:16:26
- Откуда: Пятигорск
- Зарегистрирован: 13.11.2014
- Сообщений: 634
- Рейтинг: 62
Re: Скорость синхронизации с 1С
Здравствуйте! Я рекомендую загружать порциями, ветками категорий товаров.
Потом включите синхронизацию только изменений.
3 Ответ от Бутаков 20.01.2018 00:13:03 Отредактировано Бутаков (20.01.2018 00:16:34)
- Зарегистрирован: 07.11.2014
- Сообщений: 65
- Рейтинг: 2
Re: Скорость синхронизации с 1С
Здравствуйте! Я рекомендую загружать порциями, ветками категорий товаров.
Потом включите синхронизацию только изменений.
Только изменения это понятно, оно так и будет работать.
Ветками категорий это не выход, любой крупный привод или инвентариция, и попробуй клиенту объяснить что надо частями пробовать.
На текущий момент обмен продолжается
Старт
[2018.01.18 14:59:28] Запрос /site1/exchange/?type=catalog&mode=checkauth
[2018.01.19 22:57:09] ExchangeModelTaskAfterImportGroups [filename=offers.xml, startTime=1516391829, maxExecTime=7] is completed.
Пока писал ответ, обмен завершился.
Выгружено товаров: 67 596
Выгружено предложений: 66 155
Время на все это дело
32 ЧАСА, КРАЛ
32ч. = 1920мин. = 115200сек.
115200 / 67596 = 1,7сек на товар, очень уж производительно.
4 Ответ от Ярослав 22.01.2018 19:47:43
- Откуда: Пятигорск
- Зарегистрирован: 13.11.2014
- Сообщений: 634
- Рейтинг: 62
Re: Скорость синхронизации с 1С
Так у Вас и товаров огромное количество. Многое и от сервера зависит и от настройки MySQL.
В данном случае еще и файл обмена большого размера обрабатывается.
1. Увеличьте время выполнения запроса в настройках модуля. У вас стоит maxExecTime = 7. 7 секунд на обработку это очень мало.
2. Попробуйте закомментировать строку с $this->setOffersRightSortnIfNeed() в modulesexchangemodeltaskafterimportproducts.inc.php
1000 продуктов с 27 000 многомерных комплектаций примерно за 20 минут заливаем.
Для клиента с постоянной выгрузкой остатков 10 000 товаров писали отдельно обмен.
5 Ответ от Бутаков 23.01.2018 01:04:40
- Зарегистрирован: 07.11.2014
- Сообщений: 65
- Рейтинг: 2
Re: Скорость синхронизации с 1С
Это относится к последнему запросу. По умолчанию стоит 30сек. Увеличили до 60 сек.
Также отключили в настройках обмена на сайте: Использовать импорт многомерных комплектаций
Сейчас показатели следующие:
Выгрузка 4400 товаров (1/15 общего каталога)
2 категории
Время на выполнение: 1 час 10 минут
Из наблюдений, дольше всего обновляются данные в таблице rs_product_x_stock
6 Ответ от admin 23.01.2018 21:43:02
- Откуда: Краснодар
- Зарегистрирован: 19.06.2014
- Сообщений: 1,056
- Рейтинг: 146
Re: Скорость синхронизации с 1С
Сейчас тестируем обмен с вашими файлами на локальной машине. У нас без фото загружается 10 товаров в секунду:
Используется: PHP 7.1 x64 + opCache
Попробуйте отключить принудительный ресайз фотографий в разделе Веб-сайт -> Настройка модулей -> Блок фотографий -> "Изменять размер оригинальной фотографии при загрузке"
7 Ответ от Бутаков 23.01.2018 23:06:40
- Зарегистрирован: 07.11.2014
- Сообщений: 65
- Рейтинг: 2
Re: Скорость синхронизации с 1С
PHP Version 7.0.15-0ubuntu0.16.04.4
apache2 + nginx
Mysql при выгрузке съедает почти 100% CPU
Мы не грузим фотографии при обмене. Но на всякий случай отключил.
8 Ответ от admin 24.01.2018 16:55:53
- Откуда: Краснодар
- Зарегистрирован: 19.06.2014
- Сообщений: 1,056
- Рейтинг: 146
Re: Скорость синхронизации с 1С
Проверьте, включен ли у вас opCache (ускорение до 2х раз)
Проверьте, включен ли у вас кэш в разделе Управление -> Настройка системы -> "Включить кэширование данных"
Попробуйте еще оптимизировать (выполнить OPTIMIZE TABLE . ) все таблицы в Mysql (через phpMyAdmin, например), чтобы исключить фактор, что Mysql тормозит. (однажды с таким сталкивались)
9 Ответ от admin 24.01.2018 18:54:06
- Откуда: Краснодар
- Зарегистрирован: 19.06.2014
- Сообщений: 1,056
- Рейтинг: 146
Re: Скорость синхронизации с 1С
На всякий случай проверьте, не включен ли у вас в php.ini xdebug . Он может тормозить PHP значительно.
10 Ответ от Бутаков 25.01.2018 13:16:02
- Зарегистрирован: 07.11.2014
- Сообщений: 65
- Рейтинг: 2
Re: Скорость синхронизации с 1С
1. opCache https://yadi.sk/i/Ce1REjUb3RmTta
2. Включить кэширование данных — вкл
3. Оптимизировано
4. xdebug — нет такого параметра.
Вопрос при обмен данными через csv можно сюда не задавать?
Скорость тоже удручает, прогоняю 3 поля, название, краткое описание и описание, сверка данных по полю название.
34000 строк, продолжительность пока 12 часов.
Процессор Xeon (2000 МГц) — 3CPU
Оперативная память DDR4 — 4 ГБ
SSDСервер как 2 дня работает, подняли для тестов.
11 Ответ от admin 25.01.2018 13:27:27
- Откуда: Краснодар
- Зарегистрирован: 19.06.2014
- Сообщений: 1,056
- Рейтинг: 146
Re: Скорость синхронизации с 1С
Это аномально медленно. Есть подозрение, что что-то не так настроено на сервере. (либо возможны махинации хостинг провайдеров с оверселлингом). Попробуйте ради эксперимента на любом вашем локальном компьютере с OpenServer + php 7 + opCache запустить импорт.
12 Ответ от Бутаков 25.01.2018 14:44:26
- Зарегистрирован: 07.11.2014
- Сообщений: 65
- Рейтинг: 2
Re: Скорость синхронизации с 1С
Удовольствием развернем на локальном сервере, но уже наверно после того как работы с товарной составляющей будут завершены.
Просто на одном сервере валяются 2 сайта readyscript и bitrix, у второго нет таких проблем с обменами данных.
1с одного и того же клиента, товары по количеству идентичны.
13 Ответ от Бутаков 25.01.2018 18:04:26
- Зарегистрирован: 07.11.2014
- Сообщений: 65
- Рейтинг: 2
Re: Скорость синхронизации с 1С
Это аномально медленно. Есть подозрение, что что-то не так настроено на сервере. (либо возможны махинации хостинг провайдеров с оверселлингом). Попробуйте ради эксперимента на любом вашем локальном компьютере с OpenServer + php 7 + opCache запустить импорт.
На сколько быстро, по вашим предположениям, должен проходить импорт csv?
в каталоге 77000 товаров
в импорте 34000 товара
Сопоставление идет по "Названию" (это для обновления данных), 3 поля название, описание, бренд.
Запустили на локальном, специально для этого развернутом сервачке:
Intel(R) Atom(TM) CPU D2550 @ 1.86GHz
Intel(R) Atom(TM) CPU D2550 @ 1.86GHz
Intel(R) Atom(TM) CPU D2550 @ 1.86GHz
Intel(R) Atom(TM) CPU D2550 @ 1.86GHz
14 Ответ от Ярослав 25.01.2018 23:11:17
- Откуда: Пятигорск
- Зарегистрирован: 13.11.2014
- Сообщений: 634
- Рейтинг: 62
Re: Скорость синхронизации с 1С
Выкладывайте обезличенные файлы с выгрузкой, устроим Import Challenge)
15 Ответ от Бутаков 26.01.2018 00:08:58
- Зарегистрирован: 07.11.2014
- Сообщений: 65
- Рейтинг: 2
Re: Скорость синхронизации с 1С
Давайте для начала конфигами mysql похвастаемся.
Время ночь, а проект запустить надо сидим эксперементируем с настройками БД, вот изначальная, с нее то все проблемы и растут.
16 Ответ от admin 26.01.2018 01:50:48
- Откуда: Краснодар
- Зарегистрирован: 19.06.2014
- Сообщений: 1,056
- Рейтинг: 146
Re: Скорость синхронизации с 1С
У меня самые стандартные конфиги OpenServer, без изменений:
17 Ответ от admin 26.01.2018 01:55:54
- Откуда: Краснодар
- Зарегистрирован: 19.06.2014
- Сообщений: 1,056
- Рейтинг: 146
Re: Скорость синхронизации с 1С
На сколько быстро, по вашим предположениям, должен проходить импорт csv?
Каких-то ГОСТ'ов — нет, чем быстрее тем лучше. Но точно больше 0,7 товаров в секунду.
Просим ссылку на CSV файл.
18 Ответ от Бутаков 26.01.2018 07:41:43
- Зарегистрирован: 07.11.2014
- Сообщений: 65
- Рейтинг: 2
Re: Скорость синхронизации с 1С
Попробую описать ночные эксперементы.
Дано:
77000 товаров
979 (категорий, максимально 4 вложенность)
OpenVZ (3×2000 МГц/4 ГБ/100 ГБ SSD)
KVM (3×2000 МГц/6 ГБ/40 ГБ SSD)
Офисный сервер (4×1860 МГц/4 ГБ/200 ГБ HDD)
Ubuntu 16.4 / Centos 7
ISP Manager / VestaCP
Apache, Apache+Nginx, CGI
PHP 5,6/7
Все ставилось с ноля.
Очень много играл с настройками Mysql / Apache / Nginx
Что пытаюсь сделать:
Обновить информацию о 100 товарах через импорт CSV
Обновляю описание и бренд
Сопоставление по названию
В итоге у меня получилось оверМНОГО вариаций так сказать хостингов
Что имеет в итоге:
Почти на всех конфигурациях обновление происходило за 2 минуты.
Несколько раз удавалось сократить время до 1.5 минут, и это только в связках
KVM + Centos 7 + CGI (PHP 5,6)
OpenVZ + Ubuntu 16.4 + Apache+Nginx (PHP 7) при этом отключил почти все службы (типа exim, iptables)
Список объектов, которые позволяют выгрузить данные из УТ в Розницу:
- Справочники:
- Базовые классификаторы
- Организации
- Склады
- Кассы ККМ
- Кассы
- Пользователи
- Виды номенклатуры
- Номенклатура
- Характеристики номенклатуры
- Контрагенты
- Номенклатурные группы
- Единицы измерения
- Банковские счета
- Физические лица
- Виды оплат чека ККМ
- Должности организаций
- Значения свойств объектов
- Типы цен номенклатуры
- Виды алкогольной продукции
- Классификатор алкогольной продукции ЕГАИС
- Классификатор организаций ЕГАИС
- Документы:
- Переоценка товаров в рознице
- Расходный ордер на товары
- Установка цен номенклатуры
- Поступление товаров и услуг
- Приходный ордер на товары
- Приходный кассовый ордер
- Расходный кассовый ордер
- Комплектация номенклатуры
- Внутреннее перемещение наличных ден. средств
- Перемещение товаров
- Оприходование товаров
- Возврат товаров поставщику
- Списание товаров
- Внутренний заказ
- Товарно-транспортная накладная ЕГАИС
- Отчет о розничных продажах
- Реализация товаров и услуг (в тестовой версии)
- Планы видов характеристик:
- Типы штрихкодов
- Назначения свойств категорий объектов
- Свойства объектов
- Регистры сведений:
- Штрихкоды
- Периоды выгрузки себестоимости в розницу
- Комплектующие номенклатуры
- ФИО физ.лиц
- Ответственные лица организаций