[REDIS] jQuery를 레디 스 캐시 레일 페이지 뷰를 추적하는 카운터 히트
REDISjQuery를 레디 스 캐시 레일 페이지 뷰를 추적하는 카운터 히트
나는 인기로의 안타 후 주문을 추적하려는 정적 캐시 된 페이지가 있습니다.
주 데이터베이스에 다시로드 한 후 레디 스에서 이러한 견해를 추적하고 가장 좋은 방법이 있을까요?
지금은이 같은 jQuery를 사용하여 생각하고
$.get("/track/", { id: "1234" } );
및 호출에 "트랙"컨트롤러의 레디 스 보석을 사용하여
redis.incr "1234"
하루에 한 번 나는 다음과 같은 무언가에 크론을 실행하는 것입니다
Pages.each do |p|
p.hits = redis.get(p.id.to_s)
end
해결법
-
==============================
1.여기 내 마지막 레이크 작업은 사람을 도움이 단지의 경우에서,
여기 내 마지막 레이크 작업은 사람을 도움이 단지의 경우에서,
require 'redis' task :cron => :environment do uri = URI.parse(REDIS_URL) REDIS = Redis.new(:host => uri.host, :port => uri.port, :password => uri.password) Pages.all.each do |p| views = REDIS.get(p.id.to_s) if views p.hits = p.hits + views.to_i if p.save REDIS.set pId, "0" end end end end
-
==============================
2.무엇 당신이 일을하는 것은 그것을 할 수있는 좋은 방법입니다,하지만 당신은 또한 해당 페이지 히트 수를 얻기 위해 서버 로그를 사용할 수 있습니다. 서버 로그를 사용하여 각 페이지에 코드를 추가 할 필요가 없습니다, 독특한 안타를 추적 할 수 있도록 할 수있는 것, 다만 명중 없습니다. 당신은 레디 스로 그 일에 촉각을 곤두 세우고있다 있다면, 당신의 방법이 좋다.
무엇 당신이 일을하는 것은 그것을 할 수있는 좋은 방법입니다,하지만 당신은 또한 해당 페이지 히트 수를 얻기 위해 서버 로그를 사용할 수 있습니다. 서버 로그를 사용하여 각 페이지에 코드를 추가 할 필요가 없습니다, 독특한 안타를 추적 할 수 있도록 할 수있는 것, 다만 명중 없습니다. 당신은 레디 스로 그 일에 촉각을 곤두 세우고있다 있다면, 당신의 방법이 좋다.
from https://stackoverflow.com/questions/4800745/jquery-redis-hit-counter-to-track-view-of-cached-rails-pages by cc-by-sa and MIT license
'REDIS' 카테고리의 다른 글
[REDIS] sidekiq가 작업을 처리하지 않고, 작업이 대기열에 갇혀 (0) | 2020.01.24 |
---|---|
[REDIS] 초고속 데이터 저장소 찾고 교차 작업을 수행하는 (0) | 2020.01.24 |
[REDIS] 푸른에서 ASP.NET 코어와 레디 스에 저장 사용자 세션 (0) | 2020.01.24 |
[REDIS] 분할 레디 스에 의해 데이터베이스 (0) | 2020.01.24 |
[REDIS] Google 클라우드 기능 레디 스에 연결할 수 없습니다 (0) | 2020.01.24 |