2011-07-18 6 views
2

PostgreSQL 8.4とWEBrickを使用してUbuntuでRails 3を実行しています。Rails、Webrick、PostgreSQLの問題?

これはうまくいきましたが、大きなテーブル(数百行)を表示すると、何かが間違っています。ブラウザはページがまだロード中であることを示しますが、クエリの結果が切り捨てられているか、Railsが破損しているように見えます。ログまたはコンソールにエラーはありません。

下の8行目は不正な形式のHTMLです。それはテーブルの140番目の行の周りに発生します。しかし、それは以下の行の後にさらに多くの行を表示し続けます。

<tr class="from_hc"> 
    <td class="date_and_time">Jul 13, 2011 11:00 AM</td> 
    <td class="name">Kim Orange</td> 
    <td>PHYSICAL_ACTIVITY</td> 
    <td>text text</td> 
    <td>ok</td> 
    <td></td> 
    <td><a href="/messag/a></td> 
</tr> 
<tr class="from_hc"> 
    <td class="date_and_time">Jul 13, 2011 11:00 AM</td> 
    <td class="name">Tom White</td> 
    <td>PHYSICAL_ACTIVITY</td> 
    <td>text text</td> 
    <td>ok</td> 
    <td></td> 
    <td><a href="/messages/260/edit">Edit</a></td> 
</tr> 

返される行数に問題はありますか? Rails、PostgreSQLまたはWEBrickに設定する必要がある設定はありますか? SSLで問題になることはありますか?何が原因でしょうか?

同じコードとテーブルには、Herokuの上で正常に動作するので、それはWEBrickにコンフィグ問題であるのだろうか...

私はPostgresのための「SHARED_MEMORYを」増加したが、それは助けにはなりませんでした。

ありがとうございました!

+0

...不思議ですね? – tybro0103

+0

不正な形式のURLを吐き出しているデータベース行を投稿できますか? – Msencenb

+0

いいえ...どのコードが1つの行で問題を引き起こす可能性がありますか?そのレコードのデータに問題があるとは思っていませんでした...もしそうなら、他のTDの1つが不正な形式になるかもしれません... –

答えて

0

データベースのいくつかの行に非UTF-8(UTF-16?)文字があることが判明しました。具体的には、マイクロソフトワードが作成する賢明な引用符、アポストロフィ、省略記号です。ユーザーがWordから切り取り、Webフォームに貼り付けました。あなたは、コードを完全に支配しているよう

将来的には、この保護するためにPostgreSQLではUTF-8を強制する方法があるかどうか、私は

1

ほとんどの場合、レスポンスタイムアウトまたはメモリ/サーバーリソースの制限が発生している可能性があります。

大量のデータを返すことは絶対にありません。ウェブアプリを気にすることなく、データが完全に意味をなさないようになります。 これはビューのためであれば少量のデータだけを一度に処理されるので、あなたには、いくつかの統計分析のためにこれを必要とする場合は、その後、(人々はちょうどレコードのその数の感覚を作ることができない)

をページネーションを使用しますデータを収集し、それを分析し、計算されたすべての統計情報を含む単純な単一レコードを出力するためのバックグラウンドタスク(rakeタスクかもしれない)を実行する

これは何らかの種類のフィードまたはエクスポート関数であれば、アプリケーションが適切な時間に提供できるアセットとして保存された最終的なxmlドキュメントファイルを作成するタスクが最適なソリューションです。

ユーザーが座っているのを避けて、あなたがサーバーを抱えているのを待っている年齢のモニターを見つめて、他の訪問者の応答時間が劇的に低下します。

これは本当に悪い習慣です。それはお金と時間がかかります。両方のあなた(帯域幅とサーバーのリソース)、あなたの訪問者は長い時間を費やす必要があります(時間はお金)と私は本当にあなたのアプローチを変更することを強くお勧めします。経験則として

、Googleが行うと、ページあたり10件の結果をアップサーブ何(どのように多くのサーファー、これまで検索結果に過去の10ページを取得する?)

1

あなたはWebサーバを変更し、雑種を使用してみましたまたは薄い?また、RubyとRailsのバージョンを変更する必要があります。

スタックの一部でバグを起こしている可能性があります。可能な限りそのバグを排除する必要があります。

コンソールを開き、影響を受けるレコードで@ model.to_paramを実行してみてください。他のレコードと違って見えますか?特殊文字がありますか?