redis_page 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: df9e7a7ba2a4887f6e5c54764f503d3f887191bc
4
- data.tar.gz: db82203f0bc3a2c6a2e6f49700c631a044cb8cdf
3
+ metadata.gz: a87ae8bca8efe4f64fc7e239db928ffa43f11c5c
4
+ data.tar.gz: 75fa6d003cf7f20c05fd46f1e41b55175b6b4bf9
5
5
  SHA512:
6
- metadata.gz: bf9aad1b991ba023712c82b448bcce3725a987cec94d900f80cd447e3b7e19c1154eb4533ce733588e6139d76c8b957e1b6efa3de69c074b207087cd79d884cb
7
- data.tar.gz: cd18e97b69ea34dd509ca7bb607b4bbbe356e48971a325545dcf9346f770c34954e8da17a2a166279c282fed27cbb63c7fd434c1ca9663cd8e34e55bfa296023
6
+ metadata.gz: f0544aa6f3ce114bbb5dd97fb7b471fd8ad767e4f32fbfed50ba246fc12193f017142f643963877eab816b50bd7f8043c96aa7d4b3dee05e3b1a8dd2d6fb1051
7
+ data.tar.gz: 2d377e66c5364b47ff1900376db164ce66ecbf6d84205bdd34d9930a68ae215e8ea58925564d29d53b529527885b5a83813e6facefc962552202e1263a903515
data/.gitignore CHANGED
@@ -7,3 +7,5 @@
7
7
  /pkg/
8
8
  /spec/reports/
9
9
  /tmp/
10
+
11
+ *.gem
data/README.md CHANGED
@@ -21,7 +21,7 @@ And then execute:
21
21
 
22
22
  ## Usage
23
23
 
24
- ### 0. Config
24
+ ### 1. Config
25
25
 
26
26
  增加文件:`config/initializers/redis_page.rb`
27
27
 
@@ -32,9 +32,17 @@ RedisPage.configure do |config|
32
32
  config.sweeper = { port: 8081, username: 'cache', password: 'ewHN84JZLyRurX' }
33
33
  config.redis = Redis.new(host: "redis", port: 6379, db: 10)
34
34
  end
35
+
36
+ Sidekiq.configure_server do |config|
37
+ config.redis = { url: "redis://redis:6379/15" }
38
+ end
39
+
40
+ Sidekiq.configure_client do |config|
41
+ config.redis = { url: "redis://redis:6379/15" }
42
+ end
35
43
  ```
36
44
 
37
- ### 1. Controller
45
+ ### 2. Controller
38
46
 
39
47
  生成页面缓存
40
48
 
@@ -48,7 +56,7 @@ class ProductController < ActionController::Base
48
56
  end
49
57
  ```
50
58
 
51
- ### 2. View
59
+ ### 3. View
52
60
 
53
61
  记录哪些实体更新时要刷新的 url,例如:iPhone 在首页中显示了,则记录下 iPhone 实体与首页的关联关系
54
62
 
@@ -66,7 +74,7 @@ end
66
74
 
67
75
  c 方法会记录当前页面 url
68
76
 
69
- ### 3. Model
77
+ ### 4. Model
70
78
 
71
79
  更新实体后刷新所有关联的页面缓存
72
80
 
@@ -80,5 +88,5 @@ end
80
88
 
81
89
  ```
82
90
  gem build redis_page.gemspec
83
- gem push redis_page-0.1.0.gem
91
+ gem push redis_page-0.1.1.gem
84
92
  ```
@@ -2,7 +2,7 @@ require 'active_support/core_ext/class/attribute_accessors'
2
2
 
3
3
  module ActionController
4
4
  module Caching
5
- module Pages
5
+ module RedisPages
6
6
  INSTANCE_PATH_REGEX = /^\/(\w+)\/(\d+)/
7
7
  extend ActiveSupport::Concern
8
8
 
@@ -10,6 +10,7 @@ module ActionController
10
10
  end
11
11
 
12
12
  module ClassMethods
13
+
13
14
  def caches_redis_page(*actions)
14
15
  options = actions.extract_options!
15
16
 
@@ -17,7 +18,7 @@ module ActionController
17
18
  @page_need_to_cache = true
18
19
  if options[:append_country]
19
20
  # X-IP-Country 是通过 nginx GeoIP2 module 注入的 header
20
- @cache_country = (cookies[:country] || request.headers['X-IP-Country']).upcase
21
+ @cache_country = (cookies[:country] || request.headers['X-IP-Country']).try(:upcase)
21
22
  end
22
23
  end
23
24
 
@@ -1,14 +1,14 @@
1
- require 'action_controller/caching/pages'
1
+ require 'action_controller/caching/redis_pages'
2
2
 
3
3
  module ActionController
4
4
  module Caching
5
5
  eager_autoload do
6
- autoload :Pages
6
+ autoload :RedisPages
7
7
  end
8
8
 
9
- include Pages
9
+ include RedisPages
10
10
  end
11
11
  end
12
12
 
13
- ActionController::Base.send(:include, ActionController::Caching::Pages)
13
+ ActionController::Base.send(:include, ActionController::Caching::RedisPages)
14
14
  ActionController::Base.send(:include, RedisPage::ViewHelpers)
@@ -4,7 +4,7 @@ module RedisPage
4
4
  class Railtie < Rails::Railtie
5
5
  initializer "redis_page" do
6
6
  ActiveSupport.on_load(:action_controller) do
7
- require 'action_controller/page_caching'
7
+ require 'action_controller/redis_page_caching'
8
8
  end
9
9
  end
10
10
 
@@ -1,3 +1,5 @@
1
+ require "sidekiq"
2
+
1
3
  module RedisPage
2
4
  class SweeperWorker
3
5
  include Sidekiq::Worker
@@ -1,3 +1,3 @@
1
1
  module RedisPage
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
data/redis_page.gemspec CHANGED
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
25
25
 
26
26
  spec.add_dependency "activesupport", "~> 4.0.9"
27
27
  spec.add_dependency "actionpack", "~> 4.0.9"
28
- spec.add_dependency "sidekiq", "~> 3.5.0"
28
+ spec.add_dependency "sidekiq", "~> 3.2.6"
29
29
 
30
30
  spec.add_development_dependency "bundler", "~> 1.8"
31
31
  spec.add_development_dependency "rake", "~> 10.0"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redis_page
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - saberma
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - ~>
46
46
  - !ruby/object:Gem::Version
47
- version: 3.5.0
47
+ version: 3.2.6
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - ~>
53
53
  - !ruby/object:Gem::Version
54
- version: 3.5.0
54
+ version: 3.2.6
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: bundler
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -96,8 +96,8 @@ files:
96
96
  - Rakefile
97
97
  - bin/console
98
98
  - bin/setup
99
- - lib/action_controller/caching/pages.rb
100
- - lib/action_controller/page_caching.rb
99
+ - lib/action_controller/caching/redis_pages.rb
100
+ - lib/action_controller/redis_page_caching.rb
101
101
  - lib/redis_page.rb
102
102
  - lib/redis_page/railtie.rb
103
103
  - lib/redis_page/sweeper.rb