diff options
author | Martin Polden <mpolden@mpolden.no> | 2023-03-29 17:22:35 +0100 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2023-03-29 17:22:35 +0100 |
commit | 95dbd20b3dc32e3512f9941245b91bbc3f6ad5ac (patch) | |
tree | 740876570aedf1879b8c4f26891bd3b510b56389 /client/go/internal/cli | |
parent | 70211538e30cd49226d09d4e65ba17ff40ec2432 (diff) |
Reapply "Add throttling to vespa feed"
This reverts commit f9f0cdad3c6721d06a7833be07d6280c68347263.
Diffstat (limited to 'client/go/internal/cli')
-rw-r--r-- | client/go/internal/cli/cmd/feed.go | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/client/go/internal/cli/cmd/feed.go b/client/go/internal/cli/cmd/feed.go index f273c5aa826..c8e032929b8 100644 --- a/client/go/internal/cli/cmd/feed.go +++ b/client/go/internal/cli/cmd/feed.go @@ -13,6 +13,7 @@ import ( ) func addFeedFlags(cmd *cobra.Command, concurrency *int) { + // TOOD(mpolden): Remove this flag cmd.PersistentFlags().IntVarP(concurrency, "concurrency", "T", 64, "Number of goroutines to use for dispatching") } @@ -58,7 +59,10 @@ func feed(r io.Reader, cli *CLI, concurrency int) error { client := document.NewClient(document.ClientOptions{ BaseURL: service.BaseURL, }, service) - dispatcher := document.NewDispatcher(client, concurrency) + throttler := document.NewThrottler() + // TODO(mpolden): Make doom duration configurable + circuitBreaker := document.NewCircuitBreaker(10*time.Second, 0) + dispatcher := document.NewDispatcher(client, throttler, circuitBreaker) dec := document.NewDecoder(r) start := cli.now() @@ -78,7 +82,7 @@ func feed(r io.Reader, cli *CLI, concurrency int) error { return err } elapsed := cli.now().Sub(start) - return writeSummaryJSON(cli.Stdout, client.Stats(), elapsed) + return writeSummaryJSON(cli.Stdout, dispatcher.Stats(), elapsed) } type number float32 |