問題タブ [akka-http]

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 に答える
698 参照

scala - Play Enumerator をリアクティブ ストリーム Publisher に変換する

Reactivemongo を使用して、mongodb から列挙子を取得できます。

akka-http と akka-stream を使用して、この列挙子からストリーミングする方法は?

プレイストリーム実験ライブラリを使用して、列挙子をパブリッシャーに変換しました。

akka-http のように、

しかし、ストリームは終了せず、クライアントはまだデータを待っています。列挙子の作成中に問題はありますか?. または、 Enumerator を publisher に変換する際の問題ですか?

私はすでにreactivemongo googleユーザーグループとplayユーザーグループに質問を投稿しました https://groups.google.com/forum/#!topic/reactivemongo/uObGXFQFH0Y

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

scala - Stream を使用した Akka-http プロセス リクエスト

requestProcessorストリームでバックプレッシャーを伴う長時間の処理を使用する予定であるため、常に1つのプリコンパイル済みストリームでhttpリクエストを処理する単純なakka-httpおよびakka-streamsベースのアプリケーションを作成してみます

私のアプリケーションコード:

処理する新しいアイテムを動的に受け入れることができるソースを作成する方法についての解決策を見つけましたが、ルートでストリーム実行の結果を取得する方法についての解決策を見つけることができます

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

scala - 構成された max-open-requests を超えました

最近、akka ストリームを使用していくつかの小さな Web 処理サービスを構築し始めました。とても簡単です。redis から URL を取得し、それらの URL (画像) をダウンロードします。後で画像を処理し、それらを s3 にプッシュし、json を redis にプッシュします。

複数のサイトからさまざまな種類の画像をダウンロードしています。404、Unexpected disconnect 、Response Content-Length 17951202 が構成された制限の 8388608 を超えています、EntityStreamException: Entity stream truncation and redirects などのエラーが大量に発生します。リダイレクトを使用して、応答のロケーションヘッダーにあるアドレスで requestWithRedirects を呼び出しています。

ダウンロードを担当する部分は、次のようになります。

TimeoutFuture は非常に単純で、future と timeout が必要です。future がタイムアウトよりも長くかかる場合は、timeout 例外で他の future を返します。私が抱えている問題は、しばらくするとエラーが発生することです:

何が問題なのかはわかりませんが、正しく終了していないダウンロードがいくつかあり、しばらくすると上記のエラーが発生して接続のグローバルプールにとどまると思います。問題の原因となっている可能性のあるアイデアはありますか? または、問題の原因を見つける方法: 既に 404 応答をテストしましたが、Response Content-Length が ... エラーを超えていますが、トラブルメーカーではないようです。

編集:おそらく問題は私のTimeoutFutureにあります。ここhttps://stackoverflow.com/a/29330010/2963977で説明されているようにエラーで埋めていますが、私の意見では、実際にイメージをダウンロードすることは決して完了せず、接続プールのリソースを消費しています。

私の場合、これらの設定が影響を与えないのはなぜだろうか:

EDIT2:

どうやらタイムアウトはまだサポートされていません。これが私のバグレポートです https://github.com/akka/akka/issues/17732#issuecomment-112315953

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

akka-http - akka-http の新機能

akka-http は初めてです。私は自分のプロジェクトでこれを使用しています。marshallingとが何であるかを正確に理解することはできませんunmarshalling

誰かがjsonをマーシャリングおよびアンマーシャリングする方法を示す簡単な例で説明できる場合。

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

json - akka httpリクエストエンティティを文字列として非整列化する方法は?

リクエスト ペイロードを文字列として非整列化しようとしていますが、何らかの理由で失敗しています。私のコード:

たとえば、このSO スレッドでは、この暗黙的なものがデフォルトで利用可能であるように思われます。しかし、これは akka-http では異なるのでしょうか?

akka.http.scaladsl.unmarshalling.PredefinedFromEntityUnmarshallersを持っているインポートを試みましたstringUnmarshallerが、役に立ちません。たぶん、これは type FromEntityUnmarshaller[String]not を返すためFromRequestUnmarshaller[String]です。文字列アンマーシャラーもありますspray.httpx.unmarshalling.BasicUnmarshallersが、これも役に立ちません。akka.http.scaladsl.unmarshalling.PredefinedFromStringUnmarshallers

文字列にアンマーシャリング (およびマーシャリング) するにはどうすればよいですか?

(ボーナス: JsObject で直接アンマーシャリングする方法 (json を再生)。ただし、これが機能しない理由に興味があり、他の場合に役立つ可能性があるため、文字列のみ)。

1.0-RC3 の使用

ありがとう。

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

scala - Specs2 を使用して Akka-HTTP サーバーをテストする

ここに私のサーバーがあります:

このサーバーを Specs2 でテストしたいと思います。これが私が試したものです:

stepサーバーの起動に使用しようとしました。ただし、Appトレイトはテスト後にサーバーを停止する方法を提供しません。これが単純なサーバーをテストする適切な方法であるかどうか疑問に思います。

ありがとう。

0 投票する
2 に答える
1909 参照

java - アクター呼び出しの結果に応答する方法は?

Akka-HTTP Java API の使用、つまりルーティング DSL の使用を検討しています。

ルーティング機能を使用して HttpRequest に応答する方法は明確ではありません。型指定されていない Akka アクターを使用します。たとえば、Route パスの照合時に、どのようにしてリクエストを「ハンドラ」ActorRef に渡し、非同期で HttpResponse で応答するのでしょうか?

同様の質問が Akka-User メーリング リストに投稿されましたが、フォローアップの解決策はありませんでした - https://groups.google.com/d/msg/akka-user/qHe3Ko7EVvg/KC-aKz_o5aoJ

0 投票する
3 に答える
16608 参照

scala - メソッド呼び出しを介して後で要素を受け取ることができる Source を作成する方法は?

Source次のように、後でプッシュ要素を作成したいと思います。

これを行うための推奨される方法は何ですか?

ありがとう!

0 投票する
3 に答える
4613 参照

scala - Akka Http Route Test: リクエストは 1 秒以内に完了も拒否もされませんでした

を使用して、アプリケーションのテスト ケースを作成しようとしていますakka-http。テストケースの 1 つを以下に示します。

これを実行すると、正しく動作することもあれば、エラーが発生することもありますRequest was neither completed nor rejected within 1 second。今すぐ機能させるために Thread.sleep を追加しました。私はそれが正しい解決策ではないことを知っています。テストを 1 秒以上待機させる方法を誰か教えてもらえますか?