@@ -154,6 +154,11 @@ protected function configureSwooleServer()
154
154
{
155
155
$ config = $ this ->container ['config ' ]->get ('swoole_http.server.options ' );
156
156
157
+ // only enable task worker in websocket mode
158
+ if (! $ this ->isWebsocket ) {
159
+ unset($ config ['task_worker_num ' ]);
160
+ }
161
+
157
162
$ this ->server ->set ($ config );
158
163
}
159
164
@@ -246,7 +251,7 @@ public function onRequest($swooleRequest, $swooleResponse)
246
251
return ;
247
252
}
248
253
249
- // set currnt request to sandbox
254
+ // set current request to sandbox
250
255
$ this ->sandbox ->setRequest ($ illuminateRequest );
251
256
252
257
// enable sandbox
@@ -257,9 +262,6 @@ public function onRequest($swooleRequest, $swooleResponse)
257
262
$ illuminateResponse = $ application ->run ($ illuminateRequest );
258
263
$ response = Response::make ($ illuminateResponse , $ swooleResponse );
259
264
$ response ->send ();
260
-
261
- // disable and recycle sandbox resource
262
- $ this ->sandbox ->disable ();
263
265
} catch (Exception $ e ) {
264
266
try {
265
267
$ exceptionResponse = $ this ->app [ExceptionHandler::class]->render ($ illuminateRequest , $ e );
@@ -268,6 +270,9 @@ public function onRequest($swooleRequest, $swooleResponse)
268
270
} catch (Exception $ e ) {
269
271
$ this ->logServerError ($ e );
270
272
}
273
+ } finally {
274
+ // disable and recycle sandbox resource
275
+ $ this ->sandbox ->disable ();
271
276
}
272
277
}
273
278
@@ -276,6 +281,7 @@ public function onRequest($swooleRequest, $swooleResponse)
276
281
*
277
282
* @param \Illuminate\Http\Request $illuminateRequest
278
283
* @param \Swoole\Http\Response $swooleResponse
284
+ * @return boolean
279
285
*/
280
286
protected function handleStaticRequest ($ illuminateRequest , $ swooleResponse )
281
287
{
@@ -320,7 +326,7 @@ protected function resetOnRequest()
320
326
/**
321
327
* Set onTask listener.
322
328
*/
323
- public function onTask (HttpServer $ server , $ taskId , $ fromId , $ data )
329
+ public function onTask (HttpServer $ server , $ taskId , $ srcWorkerId , $ data )
324
330
{
325
331
$ this ->container ['events ' ]->fire ('swoole.task ' , func_get_args ());
326
332
@@ -440,7 +446,11 @@ protected function createPidFile()
440
446
*/
441
447
protected function removePidFile ()
442
448
{
443
- unlink ($ this ->getPidFile ());
449
+ $ pidFile = $ this ->getPidFile ();
450
+
451
+ if (file_exists ($ pidFile )) {
452
+ unlink ($ pidFile );
453
+ }
444
454
}
445
455
446
456
/**
0 commit comments