問題タブ [client-server]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
client - メッセージング サービスを作成する方法
XMPP プロトコルを使用するメッセージング サービスを作成したいと考えています。このサービスのサーバー側とクライアント側の側面をどのように実装しますか? メッセージング フレームワークを実行するサーバー (Jabberd 2 など) が必要になることはわかっています。これをセットアップして実行するのはどれほど難しいでしょうか? また、クライアント プログラムをこのサービスに接続する最良の方法は何でしょうか? あるクライアントからサーバーを介して別のクライアントへのメッセージのプッシュを開始するにはどうすればよいですか?
c# - C# コンソール: 読み取り中に書き込み、構造を保持する
TCP を介してサーバーに接続する C# コンソール アプリケーションを作成しています。別のスレッドを使用してサーバーからの受信メッセージをリッスンし、同時にコンソールからメッセージを読み取りながら、それらをコンソールに書き込みたいと考えています。私はそれを行うことができましたが、問題があります。
入力中にコンソールに次のメッセージが表示され、メッセージが表示されます。
msg from server
msg from server
my msmsg from server
g to server
そして、私のメッセージをサーバーのメッセージから次のように分離したい:
サーバーからの
メッセージ サーバーからのメッセージ サーバーからの
メッセージ サーバー
への私のメッセージ
メッセージを受信した場合でも、入力したメッセージを保持したいのですが、受信したメッセージと混同したくないので、最後の行で完全なままにしておきたいです。
それをしてもいいですか?そしてどうやって?
サーバーからメッセージが届いたときに、メッセージをコンソールの最後に移動できますか?
architecture - クライアント (デスクトップ アプリ) はデータをプルしますが、サーバー (Web アプリ) はデータをプッシュする必要があります
私はクライアント サーバー アプリケーションを使用しています。サーバーは本質的に ASP .NET Web アプリケーションであり、分散クライアントはデスクトップ アプリケーションです。
クライアントに新しいデータがある場合、クライアントはサーバーからデータを受信する必要があります。現在、これが行われる方法は次のとおりです。クライアントは x 分 (たとえば 2 分) ごとに Web サービスにクエリを実行し続け、クライアントの新しいデータがあるかどうかを確認し続けます。
理想的には、それが機能する方法は、デスクトップ アプリが利用可能になったときに更新を受信することであり、サーバーから取得する必要はありません。代わりに、サーバーはクライアントにプッシュできる必要があります。
ソリューションのアーキテクチャを考えると、Web アプリケーションは同じネットワーク (LAN) 内のデスクトップ アプリケーション (クライアント) にデータをプッシュする必要があります。
c++ - C++ で接続を割り当てるためのサーバーを使用したピアツーピア チャット プログラムの適切な実装は何ですか?
しばらくの間、私は C++ を使用して概念実証のチャット プログラムを作成することに興味を持っていました。私はそのアイデアについて多くのことを考え、システムをどのように設計するかの始まりを書き留めましたが、実装に関しては私の思考で壁にぶつかりました.
接続をルーティングするためのサーバーを使用したピアツーピア チャット クライアントの実装が C++ でどのようになるかを知りたいです。
サーバーは、ピアの中央レジストリとして使用されますが、プライマリ接続としては使用されません。サーバーは、ピア間の接続を割り当ててピア間の最適なパスを実現する以外に、クライアントと対話することはありません。最初のバージョンでは、それはすべてのクライアントが接続する単なるディレクトリであり、クライアントはそのディレクトリを使用して、チャットに利用できる他のクライアントに接続できます。(それがもう少し説明されることを願っています)。:)
client-server - Half-Life 2 のマルチプレイヤー プロトコルはどのように機能しますか?
Counter-Strike: Source や Day Of Defeat: Source などの mod で、Half-Life 2 のマルチプレイヤー プロトコルがどのように機能するのか疑問に思っていました。彼らはある種の難読化と独自の圧縮アルゴリズムを使用していると思います。さまざまな種類のメッセージがパケットにどのようにエンコードされているかを知りたいです。
client-server - メンテナンスと新機能の追加のどちらに該当しますか?
メンテナンスと新機能の間に線を引く必要がありますか?
オックスフォード英語辞典では、メンテナンスを次のように定義しています。
(7.a)何かを正常に機能させたり、修理したりする行為。設備などの手段を提供することによる、建物、施設、軍隊などの維持。そのように維持されている状態または事実。維持のための手段または準備。
私はクライアントサーバーアプリケーションを使用していて、クライアントを保守しています。定義に沿って、私は実行することを期待します:
- バグ修正
- APIの適応(クライアントがサーバーとの連携を継続するために必要なマイナーな変更)
- 識別されたパフォーマンスの問題の最適化
私は実行することを期待していません:
- 新しい開発(新しい機能の追加)
ウィキペディアのソフトウェアメンテナンスページでは、修正、適応、完全、および予防的なメンテナンスについて説明しています。これは、私が期待するものと一致しているように見えますが、クライアントサーバーの性質により問題が複雑になります。
編集:依存関係のないスタンドアロンアプリケーションでは、ソフトウェアが機能する場合は引き続き機能するはずです。クライアント/サーバーアプリケーションでは、サーバーが変更されたときにクライアントが破損する可能性があります。これはメンテナンスの定義を変更するものではありませんが、クライアントアプリケーションへの変更が必要になる機会と機会が増えることを意味します。
両者が保守契約に合意する場合、何が保守に適格であり、何が新機能として適格であるかについての相互理解が満たされなければならないため、問題が発生します。
javascript - Javascript イベントを Rails に送り返して処理するにはどうすればよいですか?
Javascript レイヤーにユーザー インタラクションがある場合、Javascript アクションで Rails コントローラー アクションをトリガーし、Javascript からそれらの Rails メソッドにデータを渡すことはできますか?
sockets - ノンブロッキングソケットポーリングとブロッキングソケット
送信と受信を同時に行う必要があります。
どちらのオプションが良いでしょう:
- 非ブロッキングソケットを使用した1つのスレッド処理の送信と受信
また
- 2つのスレッドと1つの処理ブロッキングrecv()+ 1つの処理send()?
または別の解決策はありますか?
最大で約50の双方向接続があると予想しています。その結果、オプション#1で50スレッド、オプション#2で100スレッドになります。
c# - クライアントとサーバー間の帯域幅を計算していますか?
サーバー上の ASP.NET ページを 30 秒ごとに呼び出すアプリがあります。これを次の 2 つの目的で使用したいと考えています。
- クライアントの稼働時間をグラフ化する
- クライアントからサーバーまでの平均帯域幅をグラフ化する
クライアントからサーバーまでの帯域幅 (1 秒あたりのバイト数) を計算する最良の方法は何ですか?
時間を記録し、ページを呼び出し、応答を待ってから、もう一度時間を取得し、時間を比較して帯域幅を計算すると仮定します...しかし、帯域幅を計算する方法は?