我开始使用vagrant和Symfony2.*来开发Web项目。我正在使用Windows,但性能非常慢,因为不支持nfs挂载。
我已将缓存放入内存中,给出了奇特的提升,禁用了xdebug(如此处所述)。然而,在Windows机器上,在dev环境下,页面仍需要超过14秒才能加载。任何帮助都将不胜感激。
Symfony >=2.3,PHP>= 5.4,Windows 7,Dell Precission m6700 quad-core i7/16GB/SSD
我开始使用vagrant和Symfony2.*来开发Web项目。我正在使用Windows,但性能非常慢,因为不支持nfs挂载。
我已将缓存放入内存中,给出了奇特的提升,禁用了xdebug(如此处所述)。然而,在Windows机器上,在dev环境下,页面仍需要超过14秒才能加载。任何帮助都将不胜感激。
Symfony >=2.3,PHP>= 5.4,Windows 7,Dell Precission m6700 quad-core i7/16GB/SSD
我曾经遇到过类似的性能问题,尽管是在开发Drupal网站时(同样基于PHP)。最近我使用了Vagrant 1.5中引入的新功能rsync文件夹特性后,取得了相当大的成功。
如果你处理的文件数量较多(10,000-100,000),我发现内置的rsync-auto功能很难跟上。转换成这个巧妙的插件来使用,能够解救你的困境。正如vagrant rsync文件夹特性一样,gatling rsync插件也只提供单向同步(主机->客户机)。由于许多Drupal工具和compass在客户端生成文件,这个插件将有助于从客户机到主机同步更改。
如果你正在寻找一个比较:在这里你可以找到一篇关于rsync vs NFS的最近基准博客文章。
尝试使用这个config.yaml(用PuPHPet制作):https://github.com/comexpertise/PuPHPet-config-lamp-webdev 针对Windows进行了优化:使用NFS共享或RSYNC。
非常快但不免费:使用Vagrant VMWare插件将VirtualBox切换到VMWare(并使用NFS或RSYNC共享类型)。
另一种解决方案(最佳性能):需要禁用Vagrant共享文件夹以使用VM的本地文件系统,并配置您喜欢的IDE / FTP以使用SFTP,并简单上传修改后的文件(Netbeans可以自动上传新创建/修改的文件)
编辑:在阅读我的评论#2之前,请查看Vagrant的最新版本。您需要更快的速度吗?尝试VMware + Vagrant VMware插件,这是最好的(y)
有一个很棒的插件可以在Windows上为Vagrant启用NFS:vagrant-winnfsd
$ vagrant plugin install vagrant-winnfsd