2012-07-03 16 views
6

私はJavascriptとPHPからリアルタイムアプリケーションを作っているので、AJAXの上でトンを勉強していました。ページをリフレッシュせずにリアルタイムで更新できる必要があります。AJAX/Reverse AJAX:ポーリングまたはプッシュ?

私はsetInterval()でサーバーをポーリングしようとしましたが、すばやくするために毎秒それを持っていなければなりませんでした。それは帯域幅のトンを使用しているようだ。しかし、それは動作し、私は私のホスティングプロバイダと '無限の帯域幅'の計画を持っています。しかし、私はPush技術を使いたいと思っていました。

プッシュセットアップ方法の学習は非常に困難でした。私が把握したところから、プッシュサーバーやコメットサーバーをホストする必要があります。私もWebソケットを調べましたが、あなたもそれを自分でホストしなければなりませんでした。私はサーバーコンピュータを所有していないときにこれを行う方法を理解しておらず、ホスティングプロバイダのWebサイトにはこれに関するドキュメントはありません。

特定のホスティングプロバイダがプッシュサーバーをホストしていますか?それをホストせずにサーバーを取得する方法はありますか?ポーリングよりはるかに優れた選択だと思われますが、同時に非常に混乱しているようです。

答えて

4

特定のホスティングプロバイダがプッシュサーバーをホストしていますか?それをホストせずにサーバーを取得する方法はありますか?ポーリングよりはるかに優れた選択だと思われますが、同時に非常に混乱しているようです。

はい、私はこのようなサービスを提供しているPusherのために働いています。クイックスタートガイドhereを見ることができます。あなたが読める他のrealtime hosted servicesもあります。最初に表現されるよう、PHPが

  • Using Comet with PHP
  • Implement Comet with PHP
  • 私の意見を重視 -

    • 私の答えHow to Use Long Polling or Ajax Push in your Websiteに:

      私はまた、あなたが見てお勧めしますリンクは、PHPがリアルタイムWebアプリケーションのための良い技術ではないということです。あなたは、あなたのリアルタイムWebインフラストラクチャとして使用する異なるコンポーネントを持つのが最善です。それは自己インストールされたものか、私が働いているPusherのようなホスト型ソリューションのいずれかでなければなりません。どうして? PHP + Apacheは長期間の接続を維持するために構築されていません。あなたが見ることができるPHPスタンドアロンのWebSocketソリューションがありますが、WebSocketをまだサポートしていないApacheと20%のnginxを使用している可能性は80%です(しかし間もなくなります)。それでも、標準的なPHPリクエスト/レスポンス・アプリケーションの流れとどのように統合するのかはわかりません。

    関連する問題