laravel的随机项目选择器

Random project chooser for laravel

提问人:Lorenzo Lorini Kalil 提问时间:2/2/2023 最后编辑:Tim LewisLorenzo Lorini Kalil 更新时间:2/2/2023 访问量:46

问:

今天我有两个类似的Laravel项目,除了Laravel版本外,它们完全相同,第一个运行在5.5上,第二个是运行在Laravel 9上的更新版本。Laravel 9 尚未投入生产,因为我们需要一种方法来测试它并检查更新后是否一切正常。我的问题是,是否有办法仅将较新的版本重定向到某些客户端。客户的项目完全相同。

总之,我需要一种方法来向 20% 的客户展示新版本,而向其他 80% 的客户展示旧版本,是否可以做到这一点?有没有更好的方法来测试新项目的错误?

提前致谢。

PHP 测试 Laravel-5 Laravel-9

评论

1赞 Tim Lewis 2/2/2023
Laravel 5.5 已经过时......您应该尽一切努力让它在 9.x 上运行。至于测试,你不应该在生产中做测试......定义一个测试套件(PHPUnit、Gherkin 等)并使其全部通过,在独立于生产环境的服务器上对 9.x 版本进行 QA 测试,修复任何错误/问题,然后发布到生产环境(或类似环境)。至于向客户端子集提供 1 个版本,您也许可以使用负载均衡器,但这在很大程度上取决于您的生产环境。
0赞 Lorenzo Lorini Kalil 2/2/2023
是的,5.5 已经过时了,因此我想更新它,但这是一个非常大的项目,很难全部测试。如何实现负载均衡器解决方案?我的设置是在 apache 上运行的 ec2 aws 实例
1赞 Tim Lewis 2/2/2023
AWS 确实支持负载均衡器,但老实说,我不知道如何为一台服务器 (ip) 配置它以使用 5.5 分支,而另一台服务器使用 9.x 分支,或者是否有办法将其配置为将 20/80% 路由到一个分支与另一个;这些都是超出我知识范围的 Dev Ops 内容,对不起 😔
0赞 Lorenzo Lorini Kalil 2/2/2023
谢谢,你给了我很大的帮助

答:

-1赞 Charles 2/2/2023 #1

您可以使用内容分发网络,例如 Cloudflare 或类似 AWS 的 CloudFront。然后,您将能够根据相关流量将重定向到的位置来配置配额。

这是一篇关于Cloudflare的文章的链接

另一个在 AWS

您还可以向主机咨询如何配置类似的设置。

祝一切顺利