使用Laravel-dynamic-servers包(基于PHP的Kubernetes版)动态创建和销毁服务器
Laravel  /  管理员 发布于 2年前   447
Laravel Dynamic Servers是Spatie的一个包,可以帮助你在需要时启动和停止服务器。
主要用例是创建额外的服务器来帮助您处理队列工作负载。
您可能想知道,“为什么不直接使用 Kubernetes?”
这个问题官方手册上有说明,它是这样描述的:
您可以将其视为一种基于PHP的 Kubernetes版本,它具有5%的功能,但涵盖了80%的用例。
对于大多数 PHP 和 Laravel 开发人员来说,这个包也会更容易学习和使用。
因此,虽然您可以通过其他方式解决这些问题,但此软件包可能非常适合您向上和向下扩展服务器的需求。
laravel-dynamic-servers包github:
https://github.com/spatie/laravel-dynamic-servers
laravel-dynamic-servers手册:
https://spatie.be/docs/laravel-dynamic-servers/v1/introduction
laravel-dynamic-servers依赖要求
laravel-dynamic-servers包需要PHP 8.1+, Laravel 9+。
需要 MySQL 8.0 或更高版本。
安装
您可以通过composer 安装该软件包:
composer require spatie/laravel-dynamic-servers
运行安装程序
接下来,您可以使用以下命令运行安装程序:
php artisan dynamic-servers:install
该命令将:
dynamic_servers发布将在您的数据库中创建表的迁移。
此表用于跟踪包创建的所有服务器。
在您的目录中创建dynamic-servers.php配置文件/config
具体配置可以自行到上面的手册上查阅了
这是一个示例回调,
您可以添加以根据您需要的任何逻辑计算要确保运行的服务器数量:
// In a service provider
use Spatie\DynamicServers\Facades\DynamicServers;
use Spatie\DynamicServers\Support\DynamicServersManager;
DynamicServers::determineServerCount(function(DynamicServersManager $servers) {
// Custom logic to decide how many servers are needed.
// This callback runs every minute.
$numberOfServersNeeded = 5;
$servers->ensure($numberOfServersNeeded);
});
该软件包的自述文件示例使用 Horizon `WaitTimeCalculator` 确定要确保的服务器数量。
上面的回调将每分钟运行一次以扩大和缩小,具体取决于您的需要。
该软件包提供的其他一些亮点:
1.确保许多服务器正在运行
2.重新启动服务器
3.能够处理多种服务器类型
4.手动增加/减少服务器数量
5.定制服务提供商
6.服务器数量的可配置硬限制
开箱即用,此软件包具有 UpCloud 的服务器提供程序。
但是,您可以为您最喜欢的云服务提供商创建自定义提供商。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号