我已经开始将我们的许多开发环境迁移到Vagrant。到目前为止,这对于几乎所有的事情都是很棒的,但是我们的第一次Drupal迁移是不可用的。太慢了。我们的Wordpress、CakePHP和Node.js站点都表现得非常好或非常充分,但没有Drupal。这种想法太糟糕了。
这个盒子是一个Veewee创建的Ubuntu12.04 64位机器。这是相同的基础框,我们使用的所有基于网络的项目,所以没有独特的地方。在我的站点目录中,我有一个包含所有站点资源的规范目录(sites/my-site/),以及一个指向该规范目录的符号链接,该目录中的域名(sites/dev.mysite.com -> /vagrant/www/sites/my-site)显然是团队正在使用的某个模块所必需的。
这是一个混合的Windows/OSX团队,在这两个平台上都很慢。我的Vagrantfile中唯一的半非常规片段是:
config.vm.forward_port 80, 8080
config.vm.share_folder( "v-root", "/vagrant", ".", :extra => 'dmode=777,fmode=777' )
# Allows symlinks to the host directory.
config.vm.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate/v-root", "1"]
Vagrant::Config.run do |config|
config.vm.provision :shell, :path => "provision.vm.sh"
end我的shell提供程序只做了几件事:
settings.php文件。我能做些什么来提高性能吗?很多吗?
更新
我已经把范围缩小到了一个问题,似乎是远程数据库。为了比较苹果和没有项目包袱的苹果,我下载了一份新的Drupal 7.21副本,并在Vagrant服务器上对3个不同的数据库执行了标准安装:
完成后,我登录到新的Drupal安装并加载主页(localhost:8080) 5次。然后我连接到每个数据库,并以相同的方式加载相同的页面。我发现当Drupal连接到远程数据库时,页面加载速度慢了4-6倍。
记住,这是一个新的(标准)安装。没有项目包袱。
发布于 2017-02-21 23:27:24
我只是想自己解决这个问题。我在这里和Rails Windows Vagrant very slow response time尝试了这些建议。没有真正的运气,我削减了200毫秒的1800毫秒的响应时间在一个温暖的要求,没有真实的数据呈现。这与有关,而不是Drupal。但问题是一样的。
将共享文件夹切换到Rsync给了我对同一请求的响应时间~280 me。
Vagrantfile:
config.vm.synced_folder '.', '/vagrant', type: 'rsync',
rsync__exclude: '.git/'用法:
$ vagrant up
$ vagrant rsync-auto后一个命令将监视您的工作dir和同步自动更改。
见https://www.vagrantup.com/docs/synced-folders/rsync.html和https://www.vagrantup.com/docs/cli/rsync-auto.html
发布于 2013-05-17 14:17:47
这个问题几乎可以肯定是skip_name_resolve (在my.cnf中需要)还是VirtualBox对拥有大量文件的共享目录的处理不善。这两种方法在strace -c中都很容易跟踪,但您可能会发现,一次纠正它们并查看哪一个解决了性能问题就更容易了。
如果您在这两个更改之后仍然看到缓慢,请让我知道,我们可以进一步调试它。
发布于 2013-06-25 14:45:30
我是为了类似的目的而通过谷歌来到这里的,所以我希望其他人也能找到这方面的帮助。
如果您使用precise32流浪者框作为起点,则值得注意的是,默认情况下,该框只有360 of的内存。
向上运行(至少在V2和VirtualBox中),如下所示
config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--memory", "1024"]
end这使Drupal对我的反应更加灵敏。
https://stackoverflow.com/questions/15093023
复制相似问题