問題タブ [mina]

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.

0 投票する
0 に答える
167 参照

java - Javaのバッファから複数の値(データ型)を読み取る

2 つのデータ型 (Object と Long) を含む InputBuffer を受け取る IOBuffer があります。これら 2 つのデータ型を一緒に読み取ることはできません。

関数が機能せず、バッファを読み取ることができません。

0 投票する
1 に答える
995 参照

ssh - 切断時にリモート ssh コマンドを終了する

Mina SSHD クライアントを使用して、OpenSSH サーバーでリモート コマンドを実行しています。リモート サーバーで実行時間の長いコマンドを実行していますが、クライアント セッションが閉じられたときにコマンドを終了させたいと考えています。

PC端末からこのコマンドを実行すると:

これは私がリモートマシンで見つけたものです:

自分のマシンで ssh クライアントを強制終了すると、リモート マシンで「sleep 12345」が終了します。

ただし、Mina Java SSH クライアントを使用してまったく同じことを実行すると、これが表示されます。


コードが終了すると、コマンドの親が init pid になります。


セッションを閉じたときにリモートサーバーでコマンドを終了させるためのフラグまたはオプションが Mina にありますか?

0 投票する
1 に答える
3211 参照

ruby-on-rails - Mina deploy: SSH をセットアップしましたが、git@github.com に接続できません

minaを使用してプライベート リポジトリをデプロイしようとしています。

サーバーで公開 SSH キーを生成し、それを GitHub ユーザーに追加しました。サーバーにログインすると、git clone git@github.com:Access4all/a4aa2.git. しかし、ローカル マシンから を実行するmina deployと、次のエラーが表示されます。

私にとって奇妙に見えるのは、IP192.30.252.130が既知のホストのリストに追加されているという事実ですが、手動でsshを実行する前にこれを行ったことがあります。そして、私のサーバーの IP は192.30.252.130(bellatrix.uberspace.de) です!

私のdeploy.rb構成セクションは次のようになります。

何か間違ったことを概念的に理解しましたか?

アップデート

手動で git clone を実行すると、パスフレーズが使用されることに気付きました。

ミナが失敗したのはこれが原因だと思います。これは正常ですか?なぜパスフレーズを入力する必要があるのですか? どうすれば回避できますか?

アップデート

Step 3: Add your key to the ssh-agentに従って、パスフレーズを ssh-agent に保存できます。

しかし、そこに記載されている方法で保存できないようです。

次のように追加できます。

そして、パスフレーズを入力せずにリポジトリを正常に複製できます。しかし、ログアウトして再度ログインした後、もう一度入力する必要があります。どういうわけか、セッション間で ssh-agent が機能していないように見えますか?

0 投票する
0 に答える
91 参照

java - 遅延の影響を受けやすい送信接続を備えたサーバーの Java アーキテクチャ

ゲーム プロジェクトの場合、通常の Web アプリケーションのスケーリングとは逆のように見える、スケーラビリティにいくつかの課題があるものを構築しています。つまり、リクエストを受信するWebサーバーがあり、アプリケーションサーバー(Jetty)のスレッドプールによって自然に並行して実行されます。ここまでは簡単な部分です。

要求ごとに、サーバーは多数 (たとえば 500 ~ 1000) の参加者 (独自の単純な Web アプリケーションを実行している) を同時に呼び出し、動きを収集し、それらを結果に結合して、最初の着信要求に応答する必要があります。参加者は、ゲームに参加している信頼できないプログラマーによって作成された単純な Web アプリケーションです。彼らは遅すぎるか、到達できないか、または反応が遅いことで物事を積極的に壊そうとする可能性があります。

アプリケーション サーバーは通常、ThreadPool を使用して着信要求をクリーンに処理するように設計されています。しかし、送信リクエストの部分についてはどうすればよいでしょうか? スレッドを起動して (または ThreadPool を使用して) 各参加者にコールアウトを行い、それらのスレッドで Apache httpcomponents の HttpClient を使用して厳密なタイムアウトを設定し (たとえば、「500 ミリ秒以内に応答する必要があります」)、メインの要求スレッドを待機させることを考えました。それらすべてが完了するように。おそらく ConnectionManager とキープアライブを使用して、スレッドができるだけ早く戻るようにします (参加者がストールしていない場合、おそらく実行されないでしょう)。

しかし、わずか 20 の同時受信要求と 500 の参加者が 10000 のスレッドを起動する (またはそれよりも小さい場合は ThreadPool でブロックする) 場合、これはお勧めできません。

私は一般的な解決策を見つけることができませんでした.私が見つけたほとんどのものはサーバー側のもののスケーリングについて書かれています.

それで、これに対する一般的なアプローチはありますか?たぶん、私が分析できるようなことをする(オープンソースの)プログラムですか?大量の送信リクエストを処理するために NIO を使用するライブラリ? または、これを中心に設計されたライブラリはありますか?

0 投票する
0 に答える
157 参照

scala - ミナ「チャネルが閉じられているため、出力パケットを破棄しています」コマンド出力がありません

Mina sshd クライアントを使用して、Linux ベースのサーバーに接続します。コマンド SSH_MSG_CHANNEL_DATA と受信した SSH_MSG_CHANNEL_EOF を取得すると、Mina はデータを出力バッファーに入れず、「ChannelExec - Discarding output packet because channel is being closed」とログに記録するようです。

これが私のサンプルコードとミナのデバッグです。

これはバグで、Mina async を間違って使用していますか?

0 投票する
1 に答える
4984 参照

spring - Spring Boot アプリケーションへの ssh アクセス

Spring Boot 1.2.3.RELEASE で、JDK 1.8、Windows 7 で SSH をセットアップしようとしています。

application.properties を次のように構成しました。

アプリケーションが起動し、パテ経由でアクセスしようとすると、次の例外が表示されます。

私がここに欠けているものはありますか?

ありがとう。


更新: ご指摘ありがとうございます。これが私の依存関係ツリーです:

すべての依存関係は、spring-boot-starter-remote-shell から推移的に見えます。手動オーバーライドで修正しようと思います。

0 投票する
1 に答える
1619 参照

java - アプリケーションの終了に非常に時間がかかる

min 経由で受信するリクエストを処理するための複数のワーカー スレッドを開始するコンソール アプリケーション (サービスとして使用される) を作成しました。特定のネットワーク ポートで停止信号が受信されると、アプリケーションはメイン ループを離れます。これは、サービスを停止する意図された方法です。これは問題なく動作しますが、停止信号を受信して​​も、アプリケーションのプロセスはすぐには終了しません (最大 5 分かかります)。メイン関数が予想どおりにすぐに終了し、アプリケーションによって作成されたすべてのスレッドも終了することをログ メッセージで確認しました。しかし、アプリケーションは実行され続けます。

メイン関数を終了する前にまだ実行されているスレッドは次のとおりです。

現在、次の Java バージョンを使用しています。

OSはubuntu 14.04 LTSです。

私はこの動作について手がかりがありません。その問題をさらに調査する方法についてのヒントを期待しています。

追加情報

提案どおり、完全なスレッド ダンプを作成しました。4 つのスレッドが待機しています。

pool-2-thread-1 について調査する必要があることを誰かが確認できますか? この結果をどう解釈してよいかわかりません。

最終的に、 acceptor.dispose (MINA) への呼び出しがうまくいきました...