Jun Tanaka
シーエー・モバイル/テキストマイニング・シンポジウム/
2014.10.28 社内勉強会
※ページのスタイルによる
※どうしてもサイズを減らせない時は遅延読み込み等を検討
Text
※ クックパッドはサーバサイドの応答速度200msを
保つようにつとめている
Completed in 1.08156 (0 reqs/sec) |
Rendering: 0.25919 (23%) | DB: 0.78924 (72%) |
200 OK [http://foobar.com/entries/show/64343]
Text
※非公開
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
(window.jQuery || document.write('<script src="/js/jquery.js"><\/script>'));
</script>
<html>
<body>
<h1>we are loading a custom protocl</h1>
<b>image?</b><br/>
<img src="myapp://image1.png" />
<body>
</html>
http://stackoverflow.com/questions/5572258/ios-webview-remote-html-with-local-image-files
Tweet.limit(10).each do |t|
p "#{t.user} posted #{t.content}"
end
Tweet Load(9.8ms) SELECT `tweets`.* FROM `tweets`
User Load(5.2ms) SELECT `users`.* FROM `users` WHERE
User Load(5.2ms) SELECT `users`.* FROM `users` WHERE
User Load(5.2ms) SELECT `users`.* FROM `users` WHERE
User Load(5.2ms) SELECT `users`.* FROM `users` WHERE
User Load(5.2ms) SELECT `users`.* FROM `users` WHERE
User Load(5.2ms) SELECT `users`.* FROM `users` WHERE
User Load(5.2ms) SELECT `users`.* FROM `users` WHERE
User Load(5.2ms) SELECT `users`.* FROM `users` WHERE
User Load(5.2ms) SELECT `users`.* FROM `users` WHERE
User Load(5.2ms) SELECT `users`.* FROM `users` WHERE
Tweet.includes(:user).limit(10).each do |t|
p "#{t.user} posted #{t.content}"
end
Tweet Load(9.8ms) SELECT `tweets`.* FROM `tweets`
User Load(5.2ms) SELECT `users`.* FROM `users` WHERE `users`.id
IN (724,1402, 2277,3254,3696,5518,4810,8896,98,9999)
Tweet.uniq.to_sql
=> SELECT DISTINCT `tweets`.* FROM `tweets`
Tweet.uniq.explain
=>EXPLAIN for: SELECT DISTINCT `tweets`.* FROM `tweets`
posts = Rails.cache.fetch('unique_post', expires_in: 10.minutes) {
Post.get_uniques.select('id, user_id')
}
Railsがunique_postというkeyでmemcachedに問い合わせて、objectが存在しなければcacheにクエリ結果(object)を
格納する。
selectで必要なカラムのみ指定すると、リソースを節約
できる。
By Jun Tanaka