Laravel - 进阶知识 - 广播介绍及实例

程序员日记      2019-09-04
介绍广播架构目前有两种广播机制可选:pusher:laravel自带方案,但是有使用限制,需要收费Redis+socket.io:无限制本文讲解的是较流行的Redis+socket.io方案。相关知识1.laravel-echo-server使用socket.io机制实现的广播服务端2.laravel-echolaravel-echo有两种连接机制可以选:pusher和socket.io。laravel-echo-server是开发出来专门用于socket.io连接的服务端。如果你使用的是pus...
标签:
127 人看过

Laravel - 进阶知识 - 文件存储

程序员日记      2019-09-03
简介Laravel基于PHP包Flysystem提供了强大的文件系统抽象层。Laravel集成Flysystem包使用不同驱动简化对文件系统的操作,这些驱动包括本地文件系统、AmazonS3以及Rackspace云存储。此外,在这些存储选项之间切换非常简单,因为对不同系统而言,API是一致的。配置文件系统配置文件位于config/filesystems.php。在该文件中可以配置所有“磁盘”,每个磁盘描述了特定的存储驱动和存储路径。该配置文件为每种支持的驱动提供了示例配置,所以,简单编辑该配置来...
标签:
114 人看过

Laravel - 进阶知识 - 集合简介与集合方法大全

程序员日记      2019-09-03
说明Illuminate\Support\Collection类为处理数组数据提供了流式、方便的封装。示例.为每一个元素运行strtoupper函数,然后移除所有空元素$collection=collect(['taylor','abigail',null])->map(function($name){  returnstrtoupper($name);})->reject(function($name){  returnempty($name...
标签:
127 人看过

Laravel - 进阶知识 - 缓存(Cache)

程序员日记      2019-09-03
Laravel为不同的缓存系统提供了统一的API。配置缓存配置位于config/cache.php。在该文件中你可以指定在应用中默认使用哪个缓存驱动。Laravel开箱支持主流的缓存后端如Memcached和Redis等。默认情况下,Laravel被配置成使用文件缓存(file驱动),这会将序列化数据和缓存对象存储到文件系统。对于大型应用,建议使用内存缓存如Memcached或APC,你甚至可以为同一驱动配置多个缓存配置。驱动相关数据库驱动需要创建缓存表phpartisancache:table...
标签:
109 人看过

Laravel - 进阶知识 - 辅助函数大全

程序员日记      2019-09-03
简介Laravel自带了一系列PHP辅助函数,很多被框架自身使用,如果你觉得方便的话也可以在代码中使用它们。数组&对象Arr::add()Arr::add方法添加给定键值对到数组——如果给定键不存在或对应值为空的话:useIlluminate\Support\Arr;$array=Arr::add(['name'=>'Desk'],'price',100);//['name'=>'Desk','price'=>100]$array=Arr::add(['name'=&g...
标签:
126 人看过

Laravel - 进阶知识 - 事件(Event)与监听器(Listen)进阶 - 监听器队列

程序员日记      2019-09-03
说明如果监听器将要执行耗时任务比如发送邮件或者发送HTTP请求,那么将监听器放到队列是一个不错的选择。在队列化监听器之前,确保已经配置好队列并且在服务器或本地环境启动一个队列监听器。注册事件/监听器protected$listen=[  'App\Events\SendEmailEvent'=>[    'App\Listeners\SendEmailListener',  ],];生成事件/监听器类phpar...
标签:
86 人看过

Laravel - 进阶知识 - 事件(Event)与监听器(Listen)的简单使用

程序员日记      2019-09-03
说明Laravel事件提供了简单的观察者模式实现,允许你订阅和监听应用中的事件。事件类通常存放在app/Events目录,监听器存放在app/Listeners。这些目录会在你使用Artisan命令生成事件和监听器的时候自动创建。注册事件/监听器Laravel自带的app/Providers/EventServiceProvider.php为事件监听器注册提供了方便之所。首先我们在里面加一个事件DemoEvent及监听器DemoListenerprotected$listen=[ &n...
标签:
112 人看过

Laravel - 进阶知识 - 安装Supervisor 进程守护程序,守护队列进程

程序员日记      2019-09-02
因为用的是6.*的centos服务器,Supervisor并没有那么容易配置,这里单独开一篇文章记录一下python升级到2.7默认版本一般都是2.6的下载安装包cd/usr/local/src wgethttps://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgztar-zxvfPython-2.7.13.tgz编译cdPython-2.7.13./configure--prefix=/usr/local/python27make...
标签:
92 人看过

Laravel - 进阶知识 - 队列详解

程序员日记      2019-09-02
简介Laravel队列为不同的后台队列服务提供了统一的API,例如Beanstalk,AmazonSQS,Redis,甚至其他基于关系型数据库的队列。队列的目的是将耗时的任务延时处理,比如发送邮件,从而大幅度缩短Web请求和响应的时间。配置队列配置文件存放在config/queue.php。每一种队列驱动的配置都可以在该文件中找到,包括数据库、Beanstalkd、AmazonSQS、Redis以及同步(本地使用)驱动。其中还包含了一个null队列驱动用于那些放弃队列的任务。队列和连接在开始使用...
标签:
101 人看过

Laravel - 进阶知识 - 使用Horizon监控队列

程序员日记      2019-09-02
Horizon为Laravel提供了基于Redis的、拥有美观后台的、代码驱动配置的队列系统。Horizon让我们可以轻松监控队列系统的关键指标,例如任务吞吐量、运行时间和失败任务等。所有的队列进程配置都存放在一个单独的简单配置文件中,这样的话配置文件就可以存放到源码控制以便团队所有成员的协作。注:1.Windows对PCNTL扩展支持不友好,无法安装Horizon2.Horizon只能监控Redis驱动的队列安装1.使用Composer安装Horizon到Laravel项目composerre...
标签:
84 人看过