我在Laravel项目中遇到了问题,我正在尝试使用FFMPEG 转换大小为450MB 的视频文件,因为这需要很长时间才能在Laravel中使用Queues来执行此操作.
由于我的生产环境的配置,我必须使用数据库队列,问题是每次php artisan queue:work在我的Vagrant框中使用命令时,每次大约60秒后排队的作业被杀死.
Vagrant盒子有4GB Ram可用,支持2D和3D加速,memory_peak_usage()在整个过程中命令永远不会列出20MB以上的任何东西.
我按照预期检查了php_sapi_name()它和它的cli,所以当涉及到执行时间时它应该没有任何限制,不管我去了cli php.ini文件并再次删除任何限制以确定.
尝试重新启动Vagrant,几秒钟之后就被杀死了.
所以我决定尝试为转码过程创建一个Laravel 命令,我硬编码文件路径和东西,并且看到它正在工作而不被杀死 ...
我错过了关于队列的一些事情吗?我正在运行php artisan queue:work我没有指定任何类型的超时,为什么我的队列被杀?
预先感谢您的帮助.
我有一个使用Laravel 5.4和Laravel Mix的项目,我有一个图像文件夹,其中一些图像具有相同的名称但类别不同,因此它们包含在不同的目录中。
所以
resources/
assets/
images/
globalimage.png
versiona/
image1.png
image2.png
versionb/
image1.png
image2.png
Run Code Online (Sandbox Code Playgroud)
我需要的是Laravel Mix 中的复制命令来复制这些文件夹以及其中的任何文件,以便我的公共文件夹具有相同的文件夹结构。
我怎样才能做到这一点?
mix.js('resources/assets/backend/js/main.js', 'public/backend/js')
.js('resources/assets/frontend/js/main.js', 'public/frontend/js')
.sass('resources/assets/backend/sass/main.scss', 'public/backend/css')
.sass('resources/assets/frontend/sass/main.scss', 'public/frontend/css')
.sourceMaps()
.copy( 'resources/assets/backend/images/**/*', 'public/backend/images/' )
.copy( 'resources/assets/frontend/images/**/*', 'public/frontend/images/' )
.version()
.disableNotifications();
Run Code Online (Sandbox Code Playgroud)
这是我当前的Mix配置文件,我需要更改的部分是那些复制命令
我正在尝试使用VueJS和Axios向Laravel后端发出HTTP请求以获取一些JSON,然后使用JSON更新我的Component上的errorMessage属性.
Axios.post('/api/login', {
email: this.email,
password: this.password
}).then((response) => {
this.errorMessage = response.message;
}).catch((error) => {
console.error(error);
})
Run Code Online (Sandbox Code Playgroud)
问题是this.errorMessage由于某些原因它无法引用,我在这里做错了吗?我正确地发出了HTTP请求,JSON响应就像我预期的那样回归console.log,但是当我试图操纵this.errorMessage它时说它是未定义的,即使我已经在其他地方成功地操纵了它...
以下是此组件的完整代码
export default {
methods: {
submitForm: function(e) {
e.preventDefault();
Axios.post('/api/login', {
email: this.email,
password: this.password
}).then((response) => {
debugger;
this.errorMessage = response.data.message;
}).catch((error) => {
console.error(error);
});
}
},
data: function() {
return {
errorMessage: null,
email: null,
password: null
}
},
components: {
'error': Error
}
}
Run Code Online (Sandbox Code Playgroud)
解:
原始请求是正确的,胖箭头函数应该保持值this,问题出在Chrome的调试器上,它显示了我的价值,undefined即使它们不是......抱歉这个愚蠢的问题,我希望这会有助于其他人们遇到这种问题.