我有一个队列rabbitmq
scriptQueue
。当我推送一条消息时,它需要很长时间才能执行,然后某些东西首先尝试轻轻地停止它,然后发出信号kill
。在另一台服务器上,一切正常,数据完全相同。我在 Yii2 中对其进行了设置job
,以便在启动时将其作为日志写入数据库,并简单地创建一个文件,并将debug
其显示在面板中,但这些都不起作用。
到底发生了什么事?
Yii2 中的队列配置:
'scriptQueue' => [
'class' => Queue::class,
'port' => 5672,
'host' => 'localhost',
'user' => $params['queue']['user'],
'password' => $params['queue']['password'],
'exchangeName' => 'scriptQueue',
'queueName' => 'scriptQueue',
'vhost' => '/',
'driver' => yii\queue\amqp_interop\Queue::ENQUEUE_AMQP_LIB,
'serializer' => JsonSerializer::class,
'strictJobType' => false,
'queueOptionalArguments' => [
'x-max-priority' => 3, // 3 режима приоритизации 3 будет выполняться быстрее чем 1, и 2
'x-max-length' => 10000, // Макс. 10k сообщений
]
],
systemctl status script-queue
● script-queue.service - Script queue listener
Loaded: loaded (/etc/systemd/system/script-queue.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2025-04-24 12:12:11 MSK; 46min ago
Main PID: 8124 (php7.2)
Tasks: 2 (limit: 4915)
CGroup: /system.slice/script-queue.service
├─8124 /usr/bin/php7.2 yii script-queue/listen
└─9738 /usr/bin/php7.2 yii script-queue/exec 1 0 --color=
我检查了数据库的访问权限 - 它就在那里。我检查了代码 - 它确实有效。
结论:
sudo strace -p 2735 -s 100 -f
:
poll([{fd=4, events=POLLIN|POLLERR}], 1, -1) = 1 ([{fd=4, revents=POLLIN}])
recvfrom(4, "\27\3\3 \21", 5, 0, NULL, NULL) = 5
recvfrom(4, "\34\343\3M\243\21M\202[Y\257\311!/\230\207\17S\223\1b\26F\237\335\36\v\10\203\250\n\341\316\277\361q\240\215H\356\376$\257\313\264\254\313\320<\307\335\2722\327f\342<F\211n_\253\312T|\2\3474@:\2354\27?\32\255M\243e\21\340]\31\1z\373\212OI\306\363N\277\310A2\26m=\22"..., 8209, 0, NULL, NULL) = 8209
poll([{fd=4, events=POLLIN|POLLERR}], 1, -1) = 1 ([{fd=4, revents=POLLIN}])
recvfrom(4, "\27\3\3 \21", 5, 0, NULL, NULL) = 5
recvfrom(4, "\247%\267\243\225\276_\310\222\r\6\242\222\257\357tF\264\320k\321\332]]K\34vg\241oZ\311\24U\246Q\6\36M\262\321'\216qaNIR\n9YszQ\236\375\25c \364\276\331 \6\233N;\32\232z<Q\257~\276)R\362\334s\353\10a\374\377t\232\6\2761v\201\323\346\305@f\213\313\206"..., 8209, 0, NULL, NULL) = 8209
poll([{fd=4, events=POLLIN|POLLERR}], 1, -1) = 1 ([{fd=4, revents=POLLIN}])
recvfrom(4, "\27\3\3 \21", 5, 0, NULL, NULL) = 5
recvfrom(4, "5D\33\325\257\2576\216\302\0344jz\30663z\22\244\205 \364\320}\202\302C\343\343\264U0\"<\36H \tp\5]\205\301e\244\211\202G\1DKO\5{\371\334S:k\272X\353;Y[\364\303W\355\362\32\350\347\266\277\215k\334\211\207\334\334\217*c\311\f\323\31\30\316\210\2063\25Fov\350\213"..., 8209, 0, NULL, NULL) = 5787
recvfrom(4, "\374\233}\373\rt\373\336\271x\214\363\263\364\22h\210\363\351\273\216\355Z\256\35\345Z\6=I\fE{\356;k0\332\340\341?\317\22-\344\361v\233X\366\335a\251\247\266\326x\323\216\32\251itY\370\202\244\204u\5DW\30\220\300\245\322\221)\f\316Z\2747\203&3l\310\314\206\312\204'=\20\35`\306\1"..., 2422, 0, NULL, NULL) = 2422
poll([{fd=4, events=POLLIN|POLLERR}], 1, -1) = 1 ([{fd=4, revents=POLLIN}])
recvfrom(4, "\27\3\3 \21", 5, 0, NULL, NULL) = 5
recvfrom(4, "\365.\nb\303\256\363\264\322W\323#\352H\264\342rZ&\5&\r\225\201\270\244\371s\247DYB\nlN\323F\320SP\"s\371\234\236mF\233*\2134\376&T'*?fH\204\nH\317\254\217(\222\253\1kfw\6-\206>\307\17A\365\230\250{U\212\373\230\211\311y\353\33\363\323\246]\363\241\300\251"..., 8209, 0, NULL, NULL) = 8209
poll([{fd=4, events=POLLIN|POLLERR}], 1, -1) = 1 ([{fd=4, revents=POLLIN}])
recvfrom(4, "\27\3\3 \21", 5, 0, NULL, NULL) = 5
recvfrom(4, "\37\337U\255\0\317\301\355\372\246qVET>\363\366\375\272\30$\207\211\211 \6\310\367\220\325\221D$H7>\274\214W\2352L\274K\355\257\23\33\3542\301\242\365*q\216\3773\337\266\215I-\333\236\377\205\316S\t\177\235m\331\34\357\376\1(\256z\313\332\2762\32\244\246\264\213@\305\212\4\231\312p=\10\352"..., 8209, 0, NULL, NULL) = 8209
poll([{fd=4, events=POLLIN|POLLERR}], 1, -1) = 1 ([{fd=4, revents=POLLIN}])
recvfrom(4, "\27\3\3 \21", 5, 0, NULL, NULL) = 5
recvfrom(4, "1\262\244\332\244\0C\250\245A\3465A\336'v+\2405|\32\360L\353.\3255G\346Q\223b%*B\223}\n\3449\345S:\300`\354\354_\356l\304]\244N \210\262qc t\1\344\336F\301\376\2\377\2\250\260v\24\325\23\353\22\357\33\314\202\354C\357\242\r\271\1\354\351\324\207Y \245\33\220\247\26"..., 8209, 0, NULL, NULL) = 8209
poll([{fd=4, events=POLLIN|POLLERR}], 1, -1) = 1 ([{fd=4, revents=POLLIN}])
recvfrom(4, "\27\3\3 \21", 5, 0, NULL, NULL) = 5
recvfrom(4, "\204`\30\247`\374\307\313D\0\17B\320yA\266*\377\333\10\273\341\353\243\365\365\262\321\352\367\351\205\362\303g\5\322g?\10\316\256,:\2248\204;\271\332\211\26\346\316\326\201\356\367SK\324\340\273/\304yTQ\250*\306\27\356b\267u(\26L\33\351\334\177\20\262]\264o\2L\217\310Y\275-G\255\201L\236"..., 8209, 0, NULL, NULL) = 8209
poll([{fd=4, events=POLLIN|POLLERR}], 1, -1) = 1 ([{fd=4, revents=POLLIN}])
recvfrom(4, "\27\3\3 \21", 5, 0, NULL, NULL) = 5
recvfrom(4, "\357reX\22\315\263\272\341`\305\32\370US\6\337\216\210\234\332\30X\234\363z\232/\273eB\370g\227r\rR\6z\224\275\303\300\274*I\324\16/\230b\341\350\247\300B\342\16?h\323\267\235\202\355\2030\362\270\235\207\220\367\301,\345X\350\307S\247-9\36\321\254@:{\222%\245\325\363\35s\343\331\377@"..., 8209, 0, NULL, NULL) = 8209
poll([{fd=4, events=POLLIN|POLLERR}], 1, -1) = 1 ([{fd=4, revents=POLLIN}])
recvfrom(4, "\27\3\3\v\307", 5, 0, NULL, NULL) = 5
recvfrom(4, "W\264\20\302\23\365\363\206\275B=X#\202\375\233\0317\375\1\231\314\212B\262\27\331\262\323F\257\267\367\363O\3300\177y\276\362f{\332\360\223ir\377\216p\200G\30\226\31?\361\300\220\221\246\352\2668\320f\10'\231~\253\277\20\3032\2359\215\371\vf&\22\317\2219\252\355'\17h\221m\233\352\254\361\25_"..., 3015, 0, NULL, NULL) = 3015
sendto(4, "\27\3\3\0003S!\236\21\222\306\34 \32\3634<\6\313\227\343\201\350DJi7\266p\363<\323aGTV\256n\324(\0E\337\275\344\344q\177V\302S\373\341\25gm", 56, MSG_NOSIGNAL, NULL, 0) = 56
poll([{fd=4, events=POLLIN|POLLERR}], 1, -1) = 1 ([{fd=4, revents=POLLIN}])
recvfrom(4, "\27\3\3\0'", 5, 0, NULL, NULL) = 5
recvfrom(4, "z \235\343*\2179S\241y\21r=Cz\377\264\233\220\27\231\312\23\36\177\251\371\n3X\2613\300\rX6\344\323v", 39, 0, NULL, NULL) = 39
sendto(4, "\27\3\3\0x\366\363\277\3407\210\25661p:\252'\255\351\355\"\251\231\332Tm\227\375\274\361t\225\225\3\356\266K\370\355FU@\262n\217\261\221\267RDE\203P{\36\210\251kR},\223\371\366\23\362p\31b\345\317b\31))\251\260\36\376\317\350\372A\276\202\254\324O\334\264I\216\256Eeq\267c\320"..., 125, MSG_NOSIGNAL, NULL, 0) = 125
poll([{fd=4, events=POLLIN|POLLERR}], 1, -1) = 1 ([{fd=4, revents=POLLIN}])
recvfrom(4, "\27\3\3\0\34", 5, 0, NULL, NULL) = 5
recvfrom(4, "\346\363\210v\250\2478\270\356\266\333D\2746\33\220\33\257H\304\2173\372#\20Z\376S", 28, 0, NULL, NULL) = 28
sendto(4, "\27\3\3\0N\3021\331\375$\271Kv 1O\251\7`\3673\361\262\344>\1\353\317ZE\361/\270\31\244\20q\10\274\254Z?t\16\354;\312\305DM&3\"\20L\213a\226e\254uS*\6\274\270\223\270\254\v\5<\200}\352N\256\301\377(\10\22\333", 83, MSG_NOSIGNAL, NULL, 0) = 83
poll([{fd=4, events=POLLIN|POLLERR}], 1, -1) =