首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >蒸汽环境中的Drupal非常慢

蒸汽环境中的Drupal非常慢
EN

Stack Overflow用户
提问于 2013-02-26 15:32:32
回答 10查看 13.2K关注 0票数 12

我已经开始将我们的许多开发环境迁移到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中唯一的半非常规片段是:

代码语言:javascript
复制
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提供程序只做了几件事:

  • 安装钻孔机
  • 创建上述指向规范站点目录的符号链接。
  • 写出一个Nginx服务器块
  • 如果有必要,创建一个settings.php文件。

我能做些什么来提高性能吗?很多吗?

更新

我已经把范围缩小到了一个问题,似乎是远程数据库。为了比较苹果和没有项目包袱的苹果,我下载了一份新的Drupal 7.21副本,并在Vagrant服务器上对3个不同的数据库执行了标准安装:

  • 在与webserver (localhost)相同的Vagrant上创建的新数据库
  • 在原始问题( dev )中使用的共享dev服务器上创建的新数据库
  • 在EC2实例(tmp)上创建的新数据库

完成后,我登录到新的Drupal安装并加载主页(localhost:8080) 5次。然后我连接到每个数据库,并以相同的方式加载相同的页面。我发现当Drupal连接到远程数据库时,页面加载速度慢了4-6倍。

记住,这是一个新的(标准)安装。没有项目包袱。

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2017-02-21 23:27:24

我只是想自己解决这个问题。我在这里和Rails Windows Vagrant very slow response time尝试了这些建议。没有真正的运气,我削减了200毫秒的1800毫秒的响应时间在一个温暖的要求,没有真实的数据呈现。这与有关,而不是Drupal。但问题是一样的。

将共享文件夹切换到Rsync给了我对同一请求的响应时间~280 me。

Vagrantfile:

代码语言:javascript
复制
  config.vm.synced_folder '.', '/vagrant', type: 'rsync',
                                       rsync__exclude: '.git/'

用法:

代码语言:javascript
复制
$ vagrant up
$ vagrant rsync-auto

后一个命令将监视您的工作dir和同步自动更改。

https://www.vagrantup.com/docs/synced-folders/rsync.htmlhttps://www.vagrantup.com/docs/cli/rsync-auto.html

票数 1
EN

Stack Overflow用户

发布于 2013-05-17 14:17:47

这个问题几乎可以肯定是skip_name_resolve (在my.cnf中需要)还是VirtualBox对拥有大量文件的共享目录的处理不善。这两种方法在strace -c中都很容易跟踪,但您可能会发现,一次纠正它们并查看哪一个解决了性能问题就更容易了。

如果您在这两个更改之后仍然看到缓慢,请让我知道,我们可以进一步调试它。

票数 5
EN

Stack Overflow用户

发布于 2013-06-25 14:45:30

我是为了类似的目的而通过谷歌来到这里的,所以我希望其他人也能找到这方面的帮助。

如果您使用precise32流浪者框作为起点,则值得注意的是,默认情况下,该框只有360 of的内存。

向上运行(至少在V2和VirtualBox中),如下所示

代码语言:javascript
复制
config.vm.provider :virtualbox do |vb|
    vb.customize ["modifyvm", :id, "--memory", "1024"]
end

这使Drupal对我的反应更加灵敏。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15093023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档