定制 lotharthesavior/hot-reactor 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

lotharthesavior/hot-reactor

最新稳定版本:0.0.4

Composer 安装命令:

composer require lotharthesavior/hot-reactor

包简介

Hot Reload Tool.

README 文档

README

Hot Reactor is Hot Reload mechanism for applications. It is built with OpenSwoole development in mind, but it reloads specific commands based on the file changes.

You can install it via composer install or download the project and arrange the .env file with the proper settings.

Setup

There are 2 ways to run the Hot Reactor:

Option 1: run other folders

To run services located in other directories:

Check the .env file for the settings you need to update. The following are the steps to follow:

  • Step 1: update the WORKING_DIR environment setting, to point to the directory where the service is located. default: /var/www/html/
  • Step 2: update the COMMAND environment setting, to point to the command you want to run. default: /usr/bin/php server.php
  • Step 3: update the OBJECTS environment setting, to point to the files you want to watch for changes. default: /var/www/html/|/var/www/html/features/
  • Step 4: update the MAIN_PROCESS_NAME environment setting, to customzie your main process name. default: hot-reactor
  • Step 5: update FILE_EXTENSIONS environment setting, to specify the file extensions to watch for changes. default: php|env

Hot Reactor comes with a command line tool to run the Hot Reactor. You can run the following command to start the Hot Reactor:

php index.php -w "/path/to/your/service" -c "your-command" -o "your-objects"

As in the example, you can also overwrite the WORKING_DIR, COMMAND and OBJECTS settings via command options.

Option 2: install hot reloaded via composer

To install Hot Reactor via composer, you can run the following command:

composer require lotharthesavior/hot-reactor

After installing the package, you can run the following command to start the Hot Reactor:

vendor/bin/hot-reactor -w "/path/to/your/service" -c "your-command" -o "your-objects"

Important: There is a bug related to when you want to restart an app running sub processes with OpenSwoole\Process. Then, you might need to wait for a SIGKILL at the end of the file so the app restarts gracefully. You do that by adding the following code:

Co::run(function () {
    System::waitSignal(SIGKILL, -1);
});

Contributors

We welcome contributions from everyone! If you're interested in helping improve Hot Reactor, please follow these steps:

  1. Fork the repository on GitHub.
  2. Make your changes in a branch named for the feature or fix you're working on.
  3. Submit a pull request through GitHub for review.

Please make sure your contributions adhere to the following guidelines:

  • Code contributions should follow the coding style already established in the project.
  • Include comments in your code where necessary to explain complex or non-obvious parts.
  • Update the README.md if your changes require it.
  • Ensure that your code does not introduce any new bugs or security vulnerabilities.

Thank you for considering contributing to Hot Reactor!

License

Hot Reactor is open-source software licensed under the MIT license. See the LICENSE file for more details.

统计信息

  • 总下载量: 27
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-04-14