Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
my-yaf-project
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
chenchuanwen
my-yaf-project
Commits
e9982dcd
Commit
e9982dcd
authored
Jan 17, 2019
by
chenchuanwen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
bridgeedit
parent
47c67a8a
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
45 additions
and
1 deletion
+45
-1
bridgeReload.php
scripts/crontab/push/bridgeReload.php
+45
-1
No files found.
scripts/crontab/push/bridgeReload.php
View file @
e9982dcd
...
@@ -13,7 +13,51 @@ $http = new swoole_http_server("0.0.0.0", 9501);
...
@@ -13,7 +13,51 @@ $http = new swoole_http_server("0.0.0.0", 9501);
* 测试在 $server 外部注册全局自定义属性, 看看会不会被覆盖
* 测试在 $server 外部注册全局自定义属性, 看看会不会被覆盖
*/
*/
//$http->myWorkerVar = 'global';
/**
* 测试在 $server 外部注册全局自定义属性, 看看会不会被覆盖
*/
$server
->
myWorkerVar
=
'global'
;
$server
->
set
(
array
(
'worker_num'
=>
2
,
'daemonize'
=>
false
,
));
// 服务器启动时执行一次
$server
->
on
(
'Start'
,
function
(
swoole_http_server
$server
)
{
echo
''
;
});
// 服务器启动时执行一次
$server
->
on
(
'ManagerStart'
,
function
(
swoole_http_server
$server
)
{
echo
'ManagerStart: '
.
PHP_EOL
.
PHP_EOL
;
});
// 每个 Worker 进程启动或重启时都会执行
$server
->
on
(
'WorkerStart'
,
function
(
swoole_http_server
$server
,
$workerId
)
{
// 通过重新加载外部文件来重载代码和释放之前占用的内存
//include_once __DIR__ . DIRECTORY_SEPARATOR .'workerstart.php';
// 下面这些直接写在当前文件中的代码即便重载也不会变化
echo
'WorkerStart: '
.
PHP_EOL
.
PHP_EOL
;
echo
' Worker ID: '
.
$workerId
.
PHP_EOL
.
PHP_EOL
;
// 启动服务器后, 去掉下面这行注释, 然后 reload , 该语句也不会执行的
//echo ' reloaded ! ' . PHP_EOL . PHP_EOL;
// 应该把这里的回调事件代码写在另一个文件中来 include 而不是直接写在这里
// 注意即便是 include_once , reload 也会重新加载的, 但在你的逻辑控制中是有效的
});
// 每次连接时(相当于每个浏览器第一次打开页面时)执行一次, reload 时连接不会断开, 也就不会再次触发该事件
$server
->
on
(
'Connect'
,
function
(
\Swoole\Http\Server
$server
,
$fd
,
$reactorThreadId
)
{
echo
'Connect: '
.
PHP_EOL
.
PHP_EOL
;
echo
' Worker ID: '
.
$server
->
worker_id
.
PHP_EOL
.
PHP_EOL
;
echo
' fd: '
.
$fd
.
' , fromId: '
.
$reactorThreadId
.
PHP_EOL
.
PHP_EOL
;
});
// 浏览器连接服务器后, 页面上的每个请求均会执行一次,
// 每次打开链接页面默认都是接收两个请求, 一个是正常的数据请求, 一个 favicon.ico 的请求
$http
->
on
(
'request'
,
function
(
$request
,
$response
)
{
$http
->
on
(
'request'
,
function
(
$request
,
$response
)
{
require_once
APPLICATION_PATH
.
'/scripts/crontab/common.php'
;
require_once
APPLICATION_PATH
.
'/scripts/crontab/common.php'
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment