Webサイトで、データベースのデータに変更があったら、ブラウザをリロードしなくても、リアルタイムで内容を更新するような仕組みは、どのような技術を勉強すれば作れますか?
よくわかんないけど、node.jsは?ttp://mdlab.jp:3000/
node.jsはJavaScriptの実行環境の一つであるというだけで、これを勉強すれば即座に質問の内容ができるようになるというものではありません。質問の内容はnode.jsを使ってもできるし、他のものを使ってもできます。
知ってるよっ!!!
ありがとうございます。一読してみます。
twitterはリアルタイムじゃないけど、あんな風にリアルタイムっぽく見せることは別に高度な技術でもなんでもない。javascriptとその周辺がちゃんと分かっている奴は誰でも実装できる。ただしtwitterほどのユーザ数をさばけるかどうかはまた別の話。
〉javascriptとその周辺がちゃんと分かっている奴は誰でも実装できる。そうなんですね。例えばajaxで毎秒データベースを確認するのかなーと想像するのですが、これだとどう考えても効率が悪いと思うので、スタンダードなやりかたがあれば教えて欲しいです。
react,angular,riotなど
これらは(angularは少し違うが)クライアント側の部分に使うもので、こういうのは必要ではあるけれど、これだけ勉強しても質問の内容は実現可能にはならないので、ご注意ください。DBを監視する(または、変更があったらユーザーに通知する)ような仕組みは別に実装する必要があります。
ありがとうございます。
素人でもコピペですぐ出来るsocket通信がhtml5のwebsocket+node.js色々あるからサーバーサイド側は好きな物を選べばいい。サービスとして使うなら負荷対策とかセキュリティ対策とか色々必要になるからTCP/IPの基本的なところから学ぶべき。ユーザー数が少ないならもっと手軽にajaxで定期的に読み込むとかでもいいかも。何にせよ、DBへの確認をリアルタイムでやるなんてのは結構手間だし、すぐ落ちるものにしかならない気がする。
ありがとうございます。websocketいいですね!詳しく調べてみます。アドバイスもいただき助かります。
twitterこそwebsocketでプッシュしたほうが負荷高いんだが。サービス特性的にajaxで定期的に読み込んだほうがコスト低い。
サーバー側からプッシュするのはCRONとかで定時に何かするときだけで、それ以外はajaxで定期的に読み込む方法がいいな。あとMaxClientを変更できるクラウドサーバーが本番では必須。
>MaxClientを変更できるクラウドサーバーが本番では必須。
ここにいる雑魚どもはこれすら理解できないんだろうなあ…結局スケールするサービス作るならerlangみたいにプロセスコストが低かったり、並列処理が容易だったりするものを選ぶ必要があるんだが、雑魚どもに言っても意味ないか。そもそもプロセスとスレッドの違いすら理解してないだろうし。
そこら辺を理解出来る人はこのサイトじゃ超少数派だよ。雑魚の知ったかぶりレスばかりの中にたまにまともなレス出来る人がいる感じ
twitterがプッシュ通信したらサーバー負荷で死ぬと思うけど。アーキテクトの基礎的な部分から勉強or少し頭捻ったほうが良い。うわべだけ学習しても作るときに絶対失敗するパターン。
出たよ。批判だけして具体的な内容なんもない奴
批判だけってのが多いよねこのサイト。
アホなお前らに説明してやるよカス。例えばフォロワー500万人のアカウントのユーザーが一回呟いたら最大500万回のプッシュが発生することになる。(実際にはアクティブ中のユーザー数のみ)これだけならまだ許容できるかもしれないが、フォローしているユーザーごとにミュートにしているかどうか、リストを見ていたらリストに入っているかを逐一リクエスト飛ばして確認することを一つのツイートごとに行っていたら全く通信コストの削減にならない。逆に500万人をフォローしているアカウントがあったら、500万人のつぶやきごとに上記のリクエストをその度に行うことになってこちらも破綻する。そんなことするなら初めからajaxでタイムライン差分を取得して描画したほうが簡単だし通信コストも著しく削減できる。そもそもLINEやFBメッセには50人とか150人といった定員があるからプッシュ通信が成り立つんだよ。もしお前らエンジニアがwebsocketこそ正しいという思い込みで、のべ何年何ヶ月も工数かけて作ってたらと思うとゾッとするな。早く世の中のために引退しろや。
まずはカルシウムでも取って落ち着けwそれ、上に書いてることをただ例えにしただけで、何について答えてるのか自分でもわかってないんじゃないの?ストレスでおかしくなってそうだし、引退するかどうかは別として一度病院行くべき
アドバイスサンキュー。ああ、ストレスやばいよ。でもカルシウムとストレスの科学的根拠はないから他の方法探すわ。
みんなの回答 5 件
よくわかんないけど、node.jsは?
ttp://mdlab.jp:3000/
twitterはリアルタイムじゃないけど、あんな風にリアルタイムっぽく見せることは別に高度な技術でもなんでもない。javascriptとその周辺がちゃんと分かっている奴は誰でも実装できる。ただしtwitterほどのユーザ数をさばけるかどうかはまた別の話。
react,angular,riotなど
素人でもコピペですぐ出来るsocket通信がhtml5のwebsocket+node.js
色々あるからサーバーサイド側は好きな物を選べばいい。サービスとして使うなら負荷対策とかセキュリティ対策とか色々必要になるからTCP/IPの基本的なところから学ぶべき。
ユーザー数が少ないならもっと手軽にajaxで定期的に読み込むとかでもいいかも。何にせよ、DBへの確認をリアルタイムでやるなんてのは結構手間だし、すぐ落ちるものにしかならない気がする。
twitterがプッシュ通信したらサーバー負荷で死ぬと思うけど。
アーキテクトの基礎的な部分から勉強or少し頭捻ったほうが良い。うわべだけ学習しても作るときに絶対失敗するパターン。
関連するトピックス