我使用Memcached作为Radiant缓存资源设置了Radiant实例,但是,似乎没有将缓存命中记录到Radiant。
以下是缓存实现的示例:
# file: :rails_root/config/environments/[RAILS_ENV].rb
require 'dalli'
$cache = Dalli::Client.new(["remotehost.com:11211", "127.0.0.1:11211"], :compress => true)
config.middleware.use ::Radiant::Cache, :metastore => $cache, :entitystore => $cache
当我在Radiant实例上加载(通过httperf)时,只有缓存未命中在NewRelic中注册。
::编辑::
有些事情值得注意:
我目前要求:rails_root/config.ru
中的newrelic如此:
begin
require 'newrelic_rpm'
NewRelic::Agent.after_fork(:force_reconnect => true)
rescue LoadError
# proceed without NewRelic
end
我正在使用bundler,这是我的Gemfile
示例:
source "http://my_gem_server"
source :rubygems
gem "radiant", "~> 1.1.0"
gem 'unicorn'
gem 'therubyracer', '~> 0.9'
gem 'newrelic_rpm'
gem 'rack-cache'
gem 'dalli'
gem "compass-rails", "~> 1.0.3"
group :extensions do
# radiant extensions
gem "radiant-archive-extension", "~> 1.0.7"
gem "radiant-clipped-extension", "~> 1.1.0"
gem "radiant-debug-extension", "~> 1.0.2"
gem "radiant-exporter-extension", "~> 1.1.0"
gem "radiant-markdown_filter-extension", "~> 1.0.2"
gem "radiant-snippets-extension", "~> 1.1.0"
gem "radiant-site_templates-extension", "~> 1.0.4"
gem "radiant-smarty_pants_filter-extension", "~> 1.0.2"
gem "radiant-textile_filter-extension", "~> 1.0.4"
# additional extensions
gem "radiant-index_page-extension", "~> 1.0.1"
gem "radiant-vapor-extension", "~> 2.1.4"
gem "radiant-reorder_children-extension", "~> 1.0.6"
gem "radiant-layouts-extension", "~> 1.1.3"
gem "radiant-sibling_tags-extension", "~> 0.2.1"
gem "radiant-if_param_tags-extension", "~> 1.0.1"
gem "radiant-cache_buster-extension", "~> 0.0.1"
# forked extensions
gem "radiant-sheets-extension", "1.1.0my1"
end
gem "newrelic_rpm"
移至我的Gemfile的顶部和底部(底部为:https://newrelic.com/docs/ruby/does-new-relic-work-with-the-bundler-gem):rails_root/config/enivornments/[RAILS_ENV].rb
:rails_env/config/boot.rb
和:rails_env/config/environment.rb
- 顶部和底部。newrelic_rpm
gem "newrelic_rpm", :require => 'newrelic_rpm'
:: /编辑::
有人有什么想法吗?
谢谢!
答案 0 :(得分:0)
与NewRelics支持人员合作后,他们让我发了这篇文章:http://newrelic.github.com/rpm/NewRelic/Agent/Instrumentation/Rack.html。
然后,我稍微解构了这个方法并提出了以下解决方案: