Questions tagged «laravel»

Laravel是一个免费的开放源代码PHP Web框架,由Taylor Otwell创建,旨在遵循模型-视图-控制器(MVC)架构模式并基于Symfony开发Web应用程序。Laravel的源代码托管在GitHub上,并根据MIT许可条款获得许可。

5
大量在后台进程中抛出RejectionException而不是ConnectionException
我有在多个队列工作器上运行的作业,其中包含一些使用Guzzle的HTTP请求。但是,GuzzleHttp\Exception\RequestException当我在后台进程中运行这些作业时,该作业中的try-catch块似乎没有出现。正在运行的进程是php artisan queue:workLaravel队列系统工作程序,它监视队列并提取作业。 相反,抛出的异常是以下GuzzleHttp\Promise\RejectionException消息之一: 该承诺因以下原因而被拒绝:cURL错误28:在接收到0个字节的30001毫秒后操作超时(请参阅 https://curl.haxx.se/libcurl/c/libcurl-errors.html) 这实际上是伪装的GuzzleHttp\Exception\ConnectException(请参阅https://github.com/guzzle/promises/blob/master/src/RejectionException.php#L22),因为如果我在通过访问URL,我确实收到了ConnectException如下消息: cURL错误28:100毫秒后操作超时,收到0个字节中的0个(请参阅 https://curl.haxx.se/libcurl/c/libcurl-errors.html) 触发此超时的示例代码: try { $c = new \GuzzleHttp\Client([ 'timeout' => 0.1 ]); $response = (string) $c->get('https://example.com')->getBody(); } catch(GuzzleHttp\Exception\RequestException $e) { // This occasionally gets catched when a ConnectException (child) is thrown, // but it doesnt happen with RejectionException because it is not …

5
Laravel工匠route:缓存导致错误的数据异常
运行命令:php artisan route:cache产生以下执行: Erroneous data format for unserializing 'Symfony\Component\Routing\CompiledRoute' 运行:php artisan route:clear修复它 我想知道如何解决此问题,以便可以缓存路线。
9 php  laravel 

4
在Laravel中过滤权限时的最佳性能方法
我正在开发一个应用程序,在该应用程序中,用户可以通过许多不同的场景访问许多表单。当我向用户返回表单索引时,我试图构建具有最佳性能的方法。 用户可以通过以下方案访问表单: 拥有表格 团队拥有表格 拥有拥有表单的组的权限 拥有拥有表单的团队的权限 有权使用表格 如您所见,用户可以使用5种可能的方式来访问表单。我的问题是如何最有效地将一系列可访问的表单返回给用户。 表格政策: 我试图从模型中获取所有表单,然后通过表单策略过滤表单。这似乎是一个性能问题,因为在每次过滤器迭代中,表单都会通过一个contains()雄辩的方法传递5次,如下所示。数据库中的表单越多,意味着它变得越慢。 FormController@index public function index(Request $request) { $forms = Form::all() ->filter(function($form) use ($request) { return $request->user()->can('view',$form); }); } FormPolicy@view public function view(User $user, Form $form) { return $user->forms->contains($form) || $user->team->forms->contains($form) || $user->permissible->groups->forms($contains); } 尽管以上方法有效,但它是性能瓶颈。 从我可以看到的以下选项中: FormPolicy过滤器(当前方法) 查询所有权限(5)并合并到单个集合中 查询所有权限的所有标识符(5),然后使用IN()语句中的标识符查询Form模型 我的问题: 哪种方法可以提供最佳性能,还有其他选择可以提供更好的性能吗?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.