Многопоточная задача на PHP: преимущества и особенности
Многопоточные задачи на PHP имеют ряд преимуществ, таких как небольшой объём занимаемой памяти и стабильность. Они также могут быть гибко применены для параллельной обработки задач.
--enable-zts
.--with-external-gd
, вместо этого можно использовать --with-external-gd=no
../threadtask init.php
.kill -SIGUSR1 pid
или task_wait(SIGUSR1)
в файле init.php
.arg1
, arg2
, arg3
... в команде php filename arg1 arg2 arg3...
.username
varchar(20) NOT NULL,
`email` varchar(100) NOT NULL, `password` varchar(32) NOT NULL,
`salt` varchar(8) NOT NULL,
`registerTime` datetime NOT NULL,
`loginTime` datetime DEFAULT NULL,
`loginTimes` int(11) NOT NULL DEFAULT 0,
PRIMARY KEY (`uid`),
UNIQUE KEY `username` (`username`),
UNIQUE KEY `email` (`email`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `test`.`user` VALUES
(1,'admin','admin@test.com','cb13131a512ff854c8bc0dc0ba04e4db','12345678','2019-10-14 22:13:55','2021-03-24 14:49:48',7),
(2,'test','test@test.com','0ee08e4a9e574f4afa0abfb5ca4e47f8','87654321','2019-10-14 22:13:55','2021-03-24 08:37:56',1),
(3,'test2','test2@test.com','66b5a5d70de6e691aa9e011eb40bf62c','853532e8','2019-10-16 20:29:18',NULL,0),
(4,'test3','test3@test.com','093865fe1fc39dedc288275781c12bfe','d03db269','2019-10-16 20:30:10',NULL,0),
(5,'test4','test4@test.con','94e5d07b62a291858b6cdc902c30f924','cf34c642','2021-03-24 06:40:52','2021-03-24 08:13:17',1),
(6,'test5','test5@test.com','178a46704b93cd1a6468fe81fc66ae55','f66966f9','2021-03-24 08:17:16','2021-03-24 08:17:54',1);
/* 所有用户的密码都是123456 */
**Использование ab для проведения стресс-тестирования, результаты следующие:**
* **Apache + PHP + MySQL + Redis**: 5000 запросов выполнено за 14,264 секунды, пропускная способность составила 350,53, использование памяти превысило 5 ГБ. Если Apache использует mpm_event_module и PHP ZTS, то использование памяти примерно одинаково.
* **ThreadTask + PHP + MySQL**: 5000 запросов выполнено за 4,354 секунды, пропускная способность — 1148,33, использование памяти — 665,07 МБ.
**Заключение**: использование ThreadTask привело к повышению производительности более чем в два раза, что является хорошим результатом.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарий ( 0 )