Кто отвечает за доставку, где проходит граница ответственности и чего ждать от платформы 1С — без маркетинга.
Листайте вниз или стрелками ↓ ↑
При прямых HTTP-вызовах ответ рано или поздно звучит как «мы напишем повторные попытки сами». Значит, очередь всё равно появится — только самодельная.
Повторы «своими руками» — та же очередь, только без инструментов вокруг неё.
Несколько получателей одного события и пиковые выгрузки.
Проверить остаток, цену, наличие — синхронный ответ по смыслу.
Внешние компоненты недоступны — разговор про брокер заканчивается сразу.
Всё слева до publish — зона 1С-программиста: логика выгрузки, публикация, повторы на своей стороне, состав пакетов и целостность. Сущности: товар, цена, остаток, разделы, склады, карта, клиент.
Порядок гарантирован только в пределах одной очереди с одним потребителем. Каждое сообщение несёт метку синхронизации: пришло «старее» записанного — апдейт пропускается.
Возражения 1С-подрядчиков чаще всего обоснованы. Отвечаем на них до начала работ.
| Тема | Суть | Как закрываем |
|---|---|---|
| «Много писать» | Кажется, что outbox, публикатор и сборка сообщений — большой объём | Типовой код: план обмена + регл. задание + JSON. Пишется быстро, в т.ч. ИИ-агентом. Сложность не в объёме, а в решениях: контракт, идемпотентность, ack |
| Нет нативного AMQP | В 1С нет встроенной работы с брокером | Native-компонента PinkRabbitMQ (BiteRP). На серверах приложений, привязана к разрядности, проверяется после каждого обновления платформы |
| 1С — плохой потребитель | Фоновый слушатель занимает лицензию, рвётся по таймаутам, плохо переживает обновление | 1С только публикует. Входящее — HTTP-сервисом или служба-посредник на стороне сайта дёргает HTTP 1С |
| Транзакции | Внутри транзакции публиковать нельзя, после записи — теряется при падении | Нужен outbox — в 1С он уже есть: это план обмена. Регистрация снимается только после успешной публикации |
| Наблюдаемость | Нет привычных журнала регистрации и кода ответа HTTP | Доступ к панели RabbitMQ, метрика глубины очередей, оповещение при росте |
| Эксплуатация | Брокер — отдельный сервис: обновления, диск, устойчивость | Типовой отказ — дисковый: разросшиеся логи способны остановить бэкап. Ротация и мониторинг диска обязательны |
| Сценарий | Чем | Почему |
|---|---|---|
| Проверить остаток, цену, наличие | REST | Нужен ответ здесь и сейчас |
| Заказ с подтверждением клиенту | REST | Ответ — часть сценария покупки |
| Выгрузка цен, остатков, карточек | Брокер | Поток, пики, несколько получателей |
| События покупателя | Брокер | Регистрация, бонусы: получателей несколько, порядок не критичен |
| Клиент в облачной 1С | REST | 1cFresh: внешние компоненты недоступны |
| Некому администрировать | REST | Брокер требует сопровождения |
Нужен синхронный ответ или нет ресурса на сопровождение — REST. Поток и много получателей — брокер.
PDF свёрстаны под A4 и чёрно-белую печать. Интерактивная версия плана с чек-листом приёмки — на отдельной странице.
Оставьте заявку — обсудим задачу и сроки.