【RoR】Ruby on Rails Part16
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001nobodyさん
2013/01/31(木) 08:07:31.27ID:GGHiBszvhttp://kohada.2ch.net/test/read.cgi/php/1341589839/
http://unkar.org/r/php/1341589839
■参考サイト
<英語>
本家:http://rubyonrails.org
API document:http://api.rubyonrails.com/
開発者のblog:http://weblog.rubyonrails.org/
参考wiki:http://wiki.rubyonrails.org/rails
http://ruby-toolbox.com/
http://rubygems.org/
http://agilewebdevelopment.com/plugins/top_rated
<日本語>
Rails' wiki: http://wiki.fdiary.net/rails/
http://doc.ruby-lang.org/ja/1.9.3/doc/index.html
0856nobodyさん
2013/10/07(月) 00:42:06.17ID:???ケース・バイ・ケースとしか言えない
自分がやる内容について候補となるフレームワークを自分で試して比較するしかない
0857あ
2013/10/07(月) 02:34:03.26ID:???get '/hi' do
"Hello World!"
end
http://www.sinatrarb.com/
http://www.sinatrarb.com/intro-jp.html
0858nobodyさん
2013/10/07(月) 08:02:01.88ID:???delayd_jobで非同期にメール送信をおこないたいと思っています。
以下のように書いて実行したところ
Use MyMailer.delay.mailer_action(args) to delay sending of emails.
というRuntimeErrorが発生してしまいメールを送信できません。
mail = OrderNotifier.received(@order)
mail.delay.send_mail
同じような状況になった方がおられましたらご助言いただけますと幸いです。
よろしくお願いいたします。
0859858
2013/10/07(月) 08:52:01.97ID:???send_mailは.deliverの間違いでした。
メソッドを書き換えて、試行したところ正常に動作しました。お騒がせしましたm(_ _)m
0860nobodyさん
2013/10/07(月) 11:31:06.41ID:owNVQql5Gemfileに記載があるにも関わらず、bundle installを実行しても一部gemがインストールされず、gem listで見てもinstallされていない状態でした
gem installを実行すれば普通に入ったのですが、bundle installで入らないのはなぜでしょうか?
0861nobodyさん
2013/10/07(月) 15:51:48.26ID:???0862nobodyさん
2013/10/07(月) 19:42:42.05ID:DhmF4t2/turbolinksで発動しないことがあるとかいう問題のことですかね?
0863nobodyさん
2013/10/07(月) 19:49:54.55ID:nT1j+vKpいくら個々の画面のテンプレートで$()を使おうとも$がundefinedになってしまうんですが・・・
前任者がいないので質問できないんですが・・・
どうやってテンプレートでjQuery($)を参照すればいいんでしょうか・・・
0864nobodyさん
2013/10/07(月) 20:14:50.83ID:nT1j+vKpヘッダーに移しますもう
知ったこっちゃない
0865nobodyさん
2013/10/07(月) 21:35:56.35ID:6AfHzNSOよるらしい。気にするほどの差じゃないことのほうが多いと思う。
なんか他に末尾に置く理由あったっけ?
0866nobodyさん
2013/10/07(月) 22:29:42.96ID:???0867nobodyさん
2013/10/07(月) 23:00:23.29ID:???リファクタリングだ‼︎
0868nobodyさん
2013/10/09(水) 12:13:56.58ID:0vg+hv+csize見てから処理したいのに、sizeを見た瞬間にCOUNT文が発行されてしまうんです
to_sqlにしてからsql実行すればいいですが、それだと戻り値がPG::Resultなんで、避けたいです
0869nobodyさん
2013/10/09(水) 16:01:18.28ID:???0870nobodyさん
2013/10/09(水) 20:18:56.04ID:???0871nobodyさん
2013/10/10(木) 14:01:28.08ID:J/3rXCMC0872nobodyさん
2013/10/10(木) 22:35:41.39ID:bBHShRNIWHERE sage = "sage"
というクエリを書くとして
class Sample < ActiveRecord::Base
scope :age lambda {|sage|
where (:sage => sage)
}
def self.search(subquery)
find_by_sql("select * from (#{subquery} as foo"))
end
end
class Sample_Controller < ApplicationController
Sample.age("sage").search("select * from hoge")
end
としたらage()の部分が反映されませんでした。
どうすればいいのでしょうか
0873nobodyさん
2013/10/11(金) 00:56:00.53ID:tMZSYaJJ0874nobodyさん
2013/10/11(金) 12:38:44.44ID:???Relationがありません とでます
0875nobodyさん
2013/10/11(金) 17:37:28.01ID:???そういう場合の高速化はどのような方法が考えられますか?
0877nobodyさん
2013/10/11(金) 19:37:43.75ID:???よほど特殊なシステムでない限りViewの部分がボトルネックになるってあんま考えにくい
Viewの内部で重いSQL発行する部分があるんでないの?
1つ1つのSQLは軽くてもN+1が発生してるとかね
マジモンのViewボトルネックなら、キャッシュ使えばいいと思うけど
Viewをキャッシュしなけりゃならんってことの原因はほぼDB
まずはDBの部分で問題がないかチェックしたほうがいい
下手にキャッシュ入れると問題にフタをすることになるし
0878あ
2013/10/12(土) 05:54:58.40ID:Kkx+aXsthttp://qa.atmarkit.co.jp/q/2923
0879414
2013/10/13(日) 01:18:51.59ID:???下記のControllerで
class MailerController < ApplicationController
def sendRegistEmail
retString = "success"
begin
Message.registEmail(params[:email]).deliver
rescue Exception => e
if e.message.include?("User unknown in virtual mailbox table") then
retString = "user_unknown_in_mailbox"
elsif e.message.include?("Name or service not known") then
retString = "name_or_service_not_known"
else
retString = "other_errors"
end
else
retString = "success"
end
end
respond_to do |format|
format.json { render :json => retString }
end
end
ってやってるんだけど、メールサーバーが別に立ててあるんです。
で、エラーを拾いたいんですが、可能でしょうか?
0880nobodyさん
2013/10/13(日) 23:57:29.19ID:???whereメソッドがまったく動作しないんだけど
0881nobodyさん
2013/10/14(月) 00:05:03.62ID:K/zjsz+B0882nobodyさん
2013/10/14(月) 00:47:47.06ID:???@target=Response.find(9199)
@target=Response.where("id='9919'")
上を書くと普通にHTML表示できて下を書くとできない
たすけて〜
0883nobodyさん
2013/10/14(月) 00:56:01.36ID:???でイケるんじゃ
ダメなら
@target=Response.where(id: 9919)
0884nobodyさん
2013/10/14(月) 00:59:41.34ID:???0885nobodyさん
2013/10/14(月) 01:17:03.81ID:ONbSPu7lそれでした!ありがとう!!!
主キーであるはずのidが被ってたのか?
0886nobodyさん
2013/10/14(月) 01:33:01.63ID:K/zjsz+B結果が1個でもwhereで返ってくるのはrelationだよ
0887nobodyさん
2013/10/14(月) 01:54:16.29ID:ONbSPu7lググってやっと理解できました。
whereを書いた時点ではSQLが実行されてなかったんですね。
しつれいしました
0888nobodyさん
2013/10/14(月) 09:45:56.66ID:???find(id)はレコードそのものが返ってくるが、whereの場合は(遅延評価の結果)配列が
返るのでfirstが必要ということ
0889nobodyさん
2013/10/14(月) 11:19:48.67ID:g928WVivdelete destroy
0890nobodyさん
2013/10/14(月) 20:22:20.04ID:???以下のように処理を書きたいのですが、行き詰まってしまったので質問させてください。
以下、コントローラーに記述したい処理のの概要です。
1. 関連するモデル(model_a, model_b)をbuildする
2. ネストしたフォームを利用して(model_a, model_b)に何らかの処理をおこない同時に保存する
3. 1でおこなったbuildを解除(表現がわかりませんが)する
4. 関連するモデルのうち、一方だけ(model_a)だけに何らかの処理をおこなう
5. 関連するモデルのうち、一方だけ(model_a)だけを保存する
上記の概要-3の、「3. 1でおこなったbuildを解除(表現がわかりませんが)する」ことはできるのでしょうか?
的はずれな質問をしてしまっているかもしれませんが、よろしくお願いいたします。
0891890
2013/10/15(火) 05:18:33.35ID:???0892nobodyさん
2013/10/15(火) 19:56:24.58ID:hUiiEC+Ahttp://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/411331
0893nobodyさん
2013/10/15(火) 20:48:05.43ID:hUiiEC+AJason Fried, David Heinemeier Hansson: 洋書
http://www.amazon.co.jp/gp/product/0804137501
0894あ
2013/10/16(水) 06:53:25.24ID:lbEgPcdoJust an update, this rc seems fine, but I don't have my ducks in a row
for the release today. I'll push 3.2.15 tomorrow morning! :-)
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/411416
0895あ
2013/10/16(水) 11:20:18.32ID:lbEgPcdohttp://www.amazon.co.jp/gp/product/4794207433
0896あ
2013/10/16(水) 11:21:46.35ID:lbEgPcdoRubyは死にかけ言語です。
http://rubini.us/2013/10/15/introducing-rubinius-x/
翻訳
http://translate.google.co.jp/
0897nobodyさん
2013/10/16(水) 11:36:37.37ID:lbEgPcdohttp://www.reddit.com/r/programming/comments/1oi8wd/ruby_is_a_dying_language/
Introducing Rubinius X | Hacker News
https://news.ycombinator.com/item?id=6553767
0898nobodyさん
2013/10/16(水) 11:47:54.90ID:???会員がページ遷移する度に会員のログイン日時が更新されるようにしてます(秒単位)
仮に100人がログインしていたとして、それぞれがいろんなページを遷移したとしたら、かなりの勢いでデータベース(ログイン日時)の読み込みと書き込みが頻繁に行われます。
こういった構造は通常ではありえないでしょうか?
たった20〜30人ほどが閲覧してるだけのようなのですが、サイトが固まってしまいます。
タスクパフォーマンスを見るとApacheが沢山発生していて、それぞれがそこそこメモリを食ってるようです。
仕方なくアパッチを再起動すると直りますが…
それともサーバーのメモリが1GBだと少なすぎますか?
Rails3.2、Apache2、Passengerを使用しています。
Apacheに以下のようにPassengerの設定をしています
PassengerMaxPoolSize 30
PassengerPoolIdleTime 1200
何が原因になってフリーズしてしまうのか原因を特定したいのですが何かいい方法はありますでしょうか?
0899nobodyさん
2013/10/16(水) 12:17:32.78ID:???Passenger使ってないからメモリの問題はわからんけど
redisくらいの書き込み性能を持つデータベースなら毎回更新させても問題ない
ただログイン情報を持つようなテーブルを毎回更新させるとクエリキャッシュが全く効かなくなるから
更新日時は別のテーブルに分離したほうがいい
0900nobodyさん
2013/10/16(水) 12:24:57.56ID:???redisは使っておらずデータベースはMySQLです
更新日時のカラムはUserテーブルに設けています。
これは問題ですか?
関連テーブルにおいたほうがいい?
0901nobodyさん
2013/10/16(水) 12:29:19.92ID:???MySQLは更新が遅いからパフォーマンスへの影響が大きすぎる
状況によって異なるけどredisはオンメモリだからMySQLの100倍くらい高速
Userテーブルはログインチェック等で頻繁に読み込むのに毎回更新すると
MySQL側でキャッシュが毎回削除されて、パフォーマンスが落ちる
0902nobodyさん
2013/10/16(水) 12:36:17.81ID:???非常に参考になります
ありがとうございます
ログイン日時カラムは別テーブルに移した方がよさそうですね。
ページ遷移ごとにUserのログイン日時カラムを更新すると、たかだか20〜30人程度を捌くのも困難なのでしょうか?
Railsってそんなもんなのでしょうか?
私の見解ではRedisはmemcachedのようなものと把握しているんですが
ここからどういうふうにデータベースに反映させて、他のユーザーに最新の情報(他人の最新ログイン日時情報)を見せられるでしょうか?
0903nobodyさん
2013/10/16(水) 12:40:02.74ID:???タスクマネージャーでApacheが大量発生してるならPassengerの問題のように感じるけど
仮にアプリケーションが問題だとしたらRailsというよりもActiveRecordの問題だから
ARを経由せずに生のSQL書けば幾分解消される可能性がなくはないはず
RedisはRailsからActiveRecordのように使えるライブラリがあるから
ほとんどMySQLと差異なく使用できるはず
0904nobodyさん
2013/10/16(水) 13:11:30.25ID:lbEgPcdoシーク時間はシーク範囲によって異なりますが、仮に 5ms とした場合、並列でI/Oを出せない IDE では 200 IOPS が限界となります。
http://pc.casey.jp/archives/153904156
http://e-words.jp/w/IOPS.html
水道管の値段と水の流量を考える。
太い水道管を用いるとたくさんの水が流せるが、水道管の重量が増えるため水道管に必要な費用が大きくなる。
逆に水道管を細くすると重量の軽い水道管になるので水道管に必要な費用は少なくて済むが、少ない量の水しか流せなくなる。
このように、水量の多さを重視すると費用が犠牲になり、費用の安さを重視すると流せる水の量が犠牲になるという関係にあり、
流せる水量の多さと費用の安さはトレードオフの関係にある。
http://ja.wikipedia.org/wiki/トレードオフ
0905nobodyさん
2013/10/16(水) 13:13:07.23ID:lbEgPcdoハードディスクでは数百から千ぐらいのIOPS
http://internet.watch.impress.co.jp/docs/special/20120731_549042.html
まさに怪物! Fusion-ioが容量10テラバイト/性能130万IOPSのフラッシュドライブ「ioDrive Octal」発表 − Publickey
http://www.publickey1.jp/blog/11/_fusion-io10130iopsiodrive_octal.html
IOPSは、ディスクが1秒当たりに処理できるI/Oアクセスの数である。
IOPSが高ければ高いほど、高性能なディスクと言える。
http://itpro.nikkeibp.co.jp/article/lecture/20070104/258117/
Fusion-io、10億IOPSの新技術「Auto Commit Memory」発表。ストレージなんてレベルじゃない、パーシステントなメモリだ − Publickey
http://www.publickey1.jp/blog/12/fusion-io10iopsauto_commit_memory.html
0907nobodyさん
2013/10/16(水) 14:37:01.72ID:lbEgPcdoフラッシュストレージはサーバの能力を劇的に向上させます。
例えばニコニコ動画を運営するドワンゴでは、動画のキャッシングサーバの台数を4分の1にしました。
ミクシィは、数百台あったデータベースサーバを数十台近くまで、約10分の1に減らしました。
ドリコムではクエリ処理が20倍高速になり、サーバ台数が4分の1に削減されました。
そのほかにも多くのお客様がいますが、特にFacebookとAppleは大口顧客で、実に売り上げの半分以上を占めています。
http://www.publickey1.jp/blog/12/fusion-ioceo.html
0908nobodyさん
2013/10/16(水) 14:45:31.24ID:lbEgPcdohttp://hesonogoma.com/hardware/fusion-io_iodrive_pricelist_2012.html
0909nobodyさん
2013/10/16(水) 15:10:14.13ID:lbEgPcdohttp://pc.casey.jp/archives/153904156
0910nobodyさん
2013/10/16(水) 17:36:40.90ID:???普通はApacheは1つしか発生しないものなんでしょうか?
Redisの導入って容易ですか?
Passengerみたいなものなんでしょうか?それともmemcached?
0912nobodyさん
2013/10/16(水) 17:38:47.19ID:???> Redisの導入って容易ですか?
それぐらいやってみろよ…
> ログイン日時カラムをUserテーブルに追加しただけで
> 重くなってしまうものなんでしょうか?
自分で試して比較すりゃすぐに分かることをなぜ聞く…
0913nobodyさん
2013/10/16(水) 18:16:18.91ID:???すみません。試してみます。
ちなみにこれがさきほど話したメモリの使用状況です。
Apacheが大量発生しています。
なにがボトルネックになってこうなってしまうのか原因特定の方法さえ分かればいいのですが…
http://i.imgur.com/5epASMT.png
0914nobodyさん
2013/10/16(水) 18:18:06.59ID:???Suppose you have 1 GB of RAM and lots of blocking I/O, and you’re on a purely single-threaded multi-process deployment.
Conclusion: you should use 7 or 8 processes. Phusion Passenger should be configured as follows:
http://blog.phusion.nl/2013/03/12/tuning-phusion-passengers-concurrency-settings/
0915nobodyさん
2013/10/16(水) 18:24:48.91ID:???Passenger はプロセスを fork して Rails を preload する仕組みだから、当然の結果だ
0916nobodyさん
2013/10/16(水) 20:59:21.36ID:G7j2gwai�@paperclipで、複数のサイズを用意すると思いますが、どういったサイズを用意するか。
(というか、各デバイスやシチュエーション向けに複数の画像を保存するという方法以外にはないのでしょうか?容量を食いそうでかなり気になります)
�Aたとえば、アマゾンの本のレーティングなどを自分のアプリに取り入れる時、ユーザーの信頼度や評価などから独自のアルゴリズムで点数を算出したいとしたら、
どういったシステムを構築するのが良いでしょうか?
ファイソンなのかRを取り入れるのか?RoRだけで事足りるのか。考え方を教えてください。
答えにくい質問かもしれませんが、先輩達のお考えを拝聴したいと思います。
宜しくお願い致します。
0917nobodyさん
2013/10/16(水) 21:01:30.27ID:???検索エンジンの結果で
○時間前
といったように最終更新(投稿)時間が表示されるようにするには
last modifiedを吐き出すように静的ファイルを生成するなど何か特殊なことをしないといけないのでしょうか?
0918nobodyさん
2013/10/16(水) 21:23:05.33ID:???0919nobodyさん
2013/10/16(水) 21:41:16.51ID:???いえ、gem理由によるサイトでの表示ではなく
googleなど検索エンジンの検索結果画面で表示される ○時間前 といった表示の話です
0921nobodyさん
2013/10/16(水) 22:16:31.35ID:???0922nobodyさん
2013/10/16(水) 22:31:41.45ID:???えっ?
検索結果に表示される
○分前とかってのは、その該当ページが更新された時間じゃないの???
時間を表示してページの情報の鮮度だと思うんだけど?
0923nobodyさん
2013/10/17(木) 07:09:36.57ID:???0924nobodyさん
2013/10/17(木) 10:21:16.63ID:???http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/411432
Riding Rails: [ANN] Rails 3.2.15 has been released!
http://weblog.rubyonrails.org/2013/10/16/Rails-3-2-15-has-been-released/
0925nobodyさん
2013/10/17(木) 15:14:52.53ID:???mixiみたいに最終ログイン日時を保存しておきたいってことだよね
本家mixiではkyoto tyrant使ってやってる。まあつまり、mysqlには頼ってないredisあたりいれるといい
20-30人程度がサイトアクセスするだけで重くなる
これはありえない。5w/s位すれば重くなるけどそこまでじゃないでしょ?
そもそも今はapache+passengerがオワコン
可能ならnginxとunicornを使うべし
ただ、原因はほかにありそうなんだよね。
assets precompileしてる?よくわからずliveにして毎アクセスごとに生成とかになってない?
0926nobodyさん
2013/10/17(木) 15:17:17.59ID:???rails側の処理負担のせいでmysqlが遅くなってよけいダメになるスパイラルになってない?
mysqlでは、slow_queryのログをとれるからググってどのクエリが遅いか調べるといいよ
0927nobodyさん
2013/10/17(木) 16:37:21.90ID:???0928nobodyさん
2013/10/17(木) 16:50:51.31ID:???前にさくらVPSの一番しょぼい奴でRailsとMySQL動かして数万アクセス普通にさばいたし
0929nobodyさん
2013/10/17(木) 17:49:43.82ID:???PassengerMaxPoolSize 7
blog.phusion.nl/2013/03/12/tuning-phusion-passengers-concurrency-settings/
0930nobodyさん
2013/10/17(木) 18:50:01.67ID:???こう言うと語弊があるがここの人達には難しい質問なんじゃないかな?小規模サイト作っている人が大半のような気がするしそこまでスキルないから分からないんじゃない?
�Aに関しては必要がないので使っていないがおそらくcrontabというのを調べていけばやりたいことに近づくのでは?楽天やアマゾン食べログなどがレーティングの更新に使うとしたらこれじゃないか
�@に関してはよく分からない
0931nobodyさん
2013/10/17(木) 19:08:59.09ID:???cron自体もしかすると評価いまいちなのかもしれない
よく分からんから自分で調べてみるなりもう少し熟達者を待ってみて
0932nobodyさん
2013/10/17(木) 19:14:26.91ID:???おそらくcronを簡単に操れるwheneverというのが最適なんじゃないかと推測する
それがNOの場合は下記に誰かしらが否定すると思われ
まぁそこらを調べてみれ
0933nobodyさん
2013/10/17(木) 19:29:05.27ID:???cl_image_tag("face_top.jpg", :width =>100, :height => 100, :crop => :thumb, :gravity => :face)
d3jpl91pxevbkh.cloudfront.net/demo/image/upload/w_100,h_100,c_thumb,g_face/face_top.jpg
d3jpl91pxevbkh.cloudfront.net/demo/image/upload/w_0.3/face_top.jpg
devcenter.heroku.com/articles/cloudinary#using-with-ruby-on-rails
0934nobodyさん
2013/10/17(木) 19:52:39.77ID:+6hB0tTJres.cloudinary.com/demo/image/upload/c_fill,w_150,h_100/sample.png
cloudinary.com/documentation/cloudcontrol_integration
0935nobodyさん
2013/10/17(木) 20:15:15.09ID:???wheneverはキャッシュの定期削除なんかにも使えるらしいからここにいる人でも詳しい人多いかも
むしろ知らないのは俺でしたw
task管理に最適なものはここにいるエキスパートたちに聞きなはれ
0936nobodyさん
2013/10/17(木) 20:54:12.65ID:R4NwrvMo0937nobodyさん
2013/10/17(木) 20:57:48.64ID:R4NwrvMo比較検討に値するもの
0938nobodyさん
2013/10/17(木) 21:43:44.44ID:???nobyu.hatenadiary.jp/entry/20120311/1331473288
0939nobodyさん
2013/10/17(木) 22:04:18.94ID:???各サイズ用意する方が手間だし
0940nobodyさん
2013/10/17(木) 23:07:25.50ID:R4NwrvMoフェースブックの写真一覧もイラッと来る遅さですよね。
Cloudinaryだとストレスを感じない位の速度なんでしょうか?
容量抑えるために皆様はどういった工夫をされていますか?
0941nobodyさん
2013/10/18(金) 03:56:09.85ID:???アップロードファイルは容量を食うもんだと割り切る
以外となんとかなる
0942nobodyさん
2013/10/18(金) 09:45:11.71ID:???0943nobodyさん
2013/10/18(金) 10:03:58.05ID:???0944nobodyさん
2013/10/18(金) 10:30:02.00ID:???それで解決しました
ありがとう
メモリ1GBでMaxPoolSize20とか15に設定していましたが
そんな高い数値に設定できないもんですね
0945nobodyさん
2013/10/18(金) 10:32:24.43ID:???RailsだけでなくPHP(phpMyAdminやアクセス解析)なども使い
特定アドレスへのアクセスだけPassengerがOFFになるような設定をApacheでやっています
nginxでも同様なことが出来ますか?
同時アクセスに対してnginxはそんなに強いのでしょうか?
0946nobodyさん
2013/10/18(金) 10:36:41.75ID:???assets precompileはもちろんしています
しかし、それで生成されたハッシュ付きのjsファイルはキャッシュ化されているのでしょうか?
どうやらexpireの設定がされていないよに思えます
>>926
slow_queryなんてあったのですね
ありがとうございます
一つ皆さんに教えて欲しいんですが
稼働中の自分のサイトが突然なんかの拍子で重くなったら
どんな手順を追って原因を突き止めますか?
データベースの問題(重いクエリや瞬間的に同時にクエリが発生してるなど)
ApacheやPassengerなどサーバーエンジンの問題
Railsそのもののコーディングの問題
などなど
0947nobodyさん
2013/10/18(金) 10:37:46.95ID:???MaxPoolSize 5にしたら落ちなくなり快適になりました
15や20に設定していたときは、一時間もしないうちに落ちていました。
ちなみにメモリは1GBです
0948nobodyさん
2013/10/18(金) 10:39:27.84ID:???まさにそれです
さくらの一番安い980円のメモリ1GBプランです
MaxPoolSizeを20→5に変更すると
全く落ちなくなりました
これはSSDの2GBのプランとかに引っ越してMaxPoolSize 20とかにしたほうが
サクサク早くて快適になるのでしょうか?
0949nobodyさん
2013/10/18(金) 10:57:43.74ID:???ブログのコメントのように
コンテンツが次々と増えていくいくとします。
(例 平均して一日1000コメントくらいづつ増えるとします)
このコメントを1ページで50コメントづつDESC順(最新コメントが最初)で表示させていたとします。
すると一番古いコメントは
最初は URL?page=1ですが
5日もするとURL?page=100の位置に来ます
これってSEO的には問題でしょうか?
googleとしては最初にpage=1のURLと関連キーワードを記録していると思います。
しかし、凄い勢いでこの保存したキーワードとURLの組み合わせが変更されていきます。
pagenatorを使うときはDESCではなくASCを使うのが一般的なのでしょうか?
ただfacebookやtwitterのように新しいコメントがトップに来てる方が見やすかったりします。
0950nobodyさん
2013/10/18(金) 12:13:42.85ID:???0951nobodyさん
2013/10/18(金) 12:25:23.28ID:???0953nobodyさん
2013/10/18(金) 17:18:12.27ID:???よく気づいたね
それがCMSでのSEO攻略のミソの部分だよ
検索エンジンとしては特定URLのページ内容がしょっちゅう書き換わるようなURLは検索結果として信頼性(精度)が著しく落ちてしまう
いかにURLと記事内容を固定化させるかはCMSにおいての必勝法みたいなもん
欲を言えばhtmlで出力させるなどして静的化させたほうがよい
0954nobodyさん
2013/10/18(金) 17:58:31.36ID:???レス数が950を超えています。1000を超えると書き込みができなくなります。