rails의 캐시 속도를 측정해 봤어요.
9908 단어 Rails
개시하다
캐치에 대해서 조사를 해봤는데 실제로 측정을 해봤어요.
참고 문장
Rails의 세그먼트 캐시를 조사했습니다.
https://qiita.com/suketa/items/eeae7e2196520323f694
컨디션
1000개의user가 그걸 읽었어요.rails dev:cache
캐치를 활성화합니다.
users_controller에서def index
@users = User.all
end
뷰 열기
index.html.erb <h1>Users#index</h1>
<p>Find me in app/views/users/index.html.erb</p>
<% @users.each do |user| %>
<%= user.first_name %>
<%= user.last_name %>
<%= user.phone %>
<%= user.address %>
<% end %>
현금을 사용하지 않은 일반적인 상태입니다.
실행해 보면
Completed 200 OK in 198ms (Views: 173.6ms | ActiveRecord: 11.2ms)
Completed 200 OK in 48ms (Views: 41.7ms | ActiveRecord: 2.4ms)
Completed 200 OK in 51ms (Views: 45.0ms | ActiveRecord: 2.6ms)
처음에는 200ms 정도였는데 그 다음에는 50ms 정도였어요.
이제 캐치를 사용해보도록 하겠습니다.
일단 이런 느낌의 코드를 써봤어요.
index.html.erb
<h1>Users#index</h1>
<p>Find me in app/views/users/index.html.erb</p>
<% @users.each do |user| %>
<% cache user do %>
<%= user.first_name %>
<%= user.last_name %>
<%= user.phone %>
<%= user.address %>
<% end %>
<% end %>
결국 이런 느낌.Completed 200 OK in 993ms (Views: 976.4ms | ActiveRecord: 4.3ms)
Completed 200 OK in 364ms (Views: 343.8ms | ActiveRecord: 15.7ms)
Completed 200 OK in 393ms (Views: 386.7ms | ActiveRecord: 2.7ms)
시간이 길어졌어요...
이 캐시 방법을 찾아봤는데 자주 나오는 방법이지만 꼭 사용해야 할 부분을...
특히 내용에 대해서 뭐 딱히 없는 게 좋지 않나요?모르지만...
다음 코드
users_controller에서def index
@user_cache = User.last
@users = User.all
end
view
index.html.erb<% cache(@user_cache) do %>
<h1>Users#index</h1>
<p>Find me in app/views/users/index.html.erb</p>
<% @users.each do |user| %>
<%= user.first_name %>
<%= user.last_name %>
<%= user.phone %>
<%= user.address %>
<% end %>
<% end %>
이렇게 되면 결국은...
Completed 200 OK in 214ms (Views: 197.8ms | ActiveRecord: 3.5ms)
Completed 200 OK in 32ms (Views: 28.2ms | ActiveRecord: 0.2ms)
Completed 200 OK in 34ms (Views: 29.5ms | ActiveRecord: 0.3ms)
첫 번째는 197ms로 늦었지만 이후 30ms 이하에 이르렀다.
확실히 두 번째부터는 읽기가 조금 빠를 거예요. 그런데 솔직히 캐치를 사용하지 않은 것과 다를 게 없어요. 그래서 캐치의 장점을 잘 몰라요..
아마 사용법일 거야 근데 캐치부터 쓰면 되는 건 아닌 것 같아
종결어.
Reference
이 문제에 관하여(rails의 캐시 속도를 측정해 봤어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sibakenY/items/90cc6d5461ffe194b28a
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
1000개의user가 그걸 읽었어요.
rails dev:cache
캐치를 활성화합니다.users_controller에서
def index
@users = User.all
end
뷰 열기index.html.erb
<h1>Users#index</h1>
<p>Find me in app/views/users/index.html.erb</p>
<% @users.each do |user| %>
<%= user.first_name %>
<%= user.last_name %>
<%= user.phone %>
<%= user.address %>
<% end %>
현금을 사용하지 않은 일반적인 상태입니다.실행해 보면
Completed 200 OK in 198ms (Views: 173.6ms | ActiveRecord: 11.2ms)
Completed 200 OK in 48ms (Views: 41.7ms | ActiveRecord: 2.4ms)
Completed 200 OK in 51ms (Views: 45.0ms | ActiveRecord: 2.6ms)
처음에는 200ms 정도였는데 그 다음에는 50ms 정도였어요.이제 캐치를 사용해보도록 하겠습니다.
일단 이런 느낌의 코드를 써봤어요.
index.html.erb
<h1>Users#index</h1>
<p>Find me in app/views/users/index.html.erb</p>
<% @users.each do |user| %>
<% cache user do %>
<%= user.first_name %>
<%= user.last_name %>
<%= user.phone %>
<%= user.address %>
<% end %>
<% end %>
결국 이런 느낌.Completed 200 OK in 993ms (Views: 976.4ms | ActiveRecord: 4.3ms)
Completed 200 OK in 364ms (Views: 343.8ms | ActiveRecord: 15.7ms)
Completed 200 OK in 393ms (Views: 386.7ms | ActiveRecord: 2.7ms)
시간이 길어졌어요...이 캐시 방법을 찾아봤는데 자주 나오는 방법이지만 꼭 사용해야 할 부분을...
특히 내용에 대해서 뭐 딱히 없는 게 좋지 않나요?모르지만...
다음 코드
users_controller에서
def index
@user_cache = User.last
@users = User.all
end
viewindex.html.erb
<% cache(@user_cache) do %>
<h1>Users#index</h1>
<p>Find me in app/views/users/index.html.erb</p>
<% @users.each do |user| %>
<%= user.first_name %>
<%= user.last_name %>
<%= user.phone %>
<%= user.address %>
<% end %>
<% end %>
이렇게 되면 결국은...
Completed 200 OK in 214ms (Views: 197.8ms | ActiveRecord: 3.5ms)
Completed 200 OK in 32ms (Views: 28.2ms | ActiveRecord: 0.2ms)
Completed 200 OK in 34ms (Views: 29.5ms | ActiveRecord: 0.3ms)
첫 번째는 197ms로 늦었지만 이후 30ms 이하에 이르렀다.확실히 두 번째부터는 읽기가 조금 빠를 거예요. 그런데 솔직히 캐치를 사용하지 않은 것과 다를 게 없어요. 그래서 캐치의 장점을 잘 몰라요..
아마 사용법일 거야 근데 캐치부터 쓰면 되는 건 아닌 것 같아
종결어.
Reference
이 문제에 관하여(rails의 캐시 속도를 측정해 봤어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sibakenY/items/90cc6d5461ffe194b28a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)