Memcached ошибка в Ruby on Rails - PullRequest
       11

Memcached ошибка в Ruby on Rails

0 голосов
/ 24 ноября 2010

У меня есть приложение рельсов с Jruby.я делаю кэш активных записей с помощью memcached.я установил memcache-клиент гем.так как я подключаю сервер memcache к удаленному хосту.моя конфигурация memcache такова в моем development.rb:

require 'memcache'

memcache_options = {
  :c_threshold => 10_000,
  :compression => true,
  :debug => false,
  :namespace => "#{RAILS_ENV}",
  :readonly => false,
  :urlencode => false,
  :timeout => 60
}

CACHE = MemCache.new memcache_options
CACHE.servers = 'example.org:0000'

config.action_controller.cache_store = CACHE, {}

Когда я пытаюсь получить доступ к странице, я получаю сообщение об ошибке на моем терминале:telnet example.org 1000.он работает нормально, и введите команду «stats», чтобы получить успешный результат.

Я использую Windows Vista ... Я не могу проверить свою конфигурацию брандмауэра ... Я думаю, что если брандмауэр блокирует, я даже не мог сделать Telnet.Должен ли я открыть свой порт на моей машине для разработки?или что еще проблема, которую я не мог понять.

1 Ответ

2 голосов
/ 24 ноября 2010

Я настоятельно рекомендую вам использовать Далли .

config.cache_store = :dalli_store, 'cache-1.example.com', 'cache-2.example.com',
{ :namespace => NAME_OF_RAILS_APP, :expires_in => 1.day, :compress => true, :compress_threshold => 64*1024 }

В противном случае используйте параметр :memcached_store для настройки Memcached.

config.action_controller.cache_store = :memcached_store

Чтобы устранить ошибку, откройте новую консоль Rails

# rails 3
$ rails c

# rails 2
$ ruby script/console

и попробуйте получить доступ к Rails.cache. Посмотрите, работает ли это.

...