Черги та cron

← Черги та cron

Ashterix

docs(articles): Magento and Symfony examples side by side, request lifecycle as a Mermaid diagram

uk/articles/magento-to-symfony/infrastructure/async.md +12 −2

1 1 # Черги та cron
2 2
3 + ::::columns
4 + :::col
3 5 **Magento** · чотири XML і publisher
4 6
5 7 ```xml
19 21 }
20 22 }
21 23 ```
22 −
24 + :::
25 + :::col
23 26 **Symfony** · повідомлення, обробник, маршрут
24 27
25 28 ```php
39 42
40 43 $this->bus->dispatch(new ReindexProduct($product->getId()));
41 44 ```
45 + :::
46 + ::::
42 47
43 48 **Symfony** · config/packages/messenger.yaml
44 49
62 67
63 68 ## crontab.xml → Scheduler
64 69
70 + ::::columns
71 + :::col
65 72 **Magento** · crontab.xml
66 73
67 74 ```xml
73 80 </job>
74 81 </group>
75 82 ```
76 −
83 + :::
84 + :::col
77 85 **Symfony** · symfony/scheduler
78 86
79 87 ```php
91 99 # запуск розкладу — це воркер Messenger:
92 100 # bin/console messenger:consume scheduler_default
93 101 ```
102 + :::
103 + ::::
94 104
95 105 Альтернатива без Scheduler — звичайна консольна команда в системному crontab. Для задач, які не можна запускати паралельно на кількох серверах, додайте компонент Lock.