diff options
author | Alexander <alex.strizhakov@gmail.com> | 2019-12-04 09:49:17 +0300 |
---|---|---|
committer | Alexander Strizhakov <alex.strizhakov@gmail.com> | 2020-04-24 15:43:49 +0300 |
commit | 6e625a427cdc829714ad0365560d79aa4ee9c2e5 (patch) | |
tree | efd8af6194bed0237bf9e23a1f79a94f874d11df /benchmarks | |
parent | 2430b9bf90d6fde71885f5f0f8be767526be6208 (diff) | |
download | pleroma-6e625a427cdc829714ad0365560d79aa4ee9c2e5.tar.gz pleroma-6e625a427cdc829714ad0365560d79aa4ee9c2e5.zip |
reply filtering
Diffstat (limited to 'benchmarks')
-rw-r--r-- | benchmarks/load_testing/fetcher.ex | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/benchmarks/load_testing/fetcher.ex b/benchmarks/load_testing/fetcher.ex index 786929ace..3aa82b48a 100644 --- a/benchmarks/load_testing/fetcher.ex +++ b/benchmarks/load_testing/fetcher.ex @@ -495,4 +495,57 @@ defmodule Pleroma.LoadTesting.Fetcher do formatters: formatters() ) end + + def query_replies(user) do + public_params = %{ + "type" => ["Create", "Announce"], + "local_only" => false, + "blocking_user" => user, + "muting_user" => user, + "count" => 20 + } + + Benchee.run(%{ + "Public timeline without reply filtering" => fn -> + ActivityPub.fetch_public_activities(public_params) + end, + "Public timeline with reply filtering - following" => fn -> + public_params + |> Map.put("reply_visibility", "following") + |> Map.put("user", user) + |> ActivityPub.fetch_public_activities() + end, + "Public timeline with reply filtering - self" => fn -> + public_params + |> Map.put("reply_visibility", "self") + |> Map.put("user", user) + |> ActivityPub.fetch_public_activities() + end + }) + + private_params = %{ + "type" => ["Create", "Announce"], + "blocking_user" => user, + "muting_user" => user, + "user" => user, + "count" => 20 + } + + recipients = [user.ap_id | User.following(user)] + + Benchee.run(%{ + "Home timeline without reply filtering" => fn -> + ActivityPub.fetch_activities(recipients, private_params) + end, + "Home timeline with reply filtering - following" => fn -> + private_params = Map.put(private_params, "reply_visibility", "following") + + ActivityPub.fetch_activities(recipients, private_params) + end, + "Home timeline with reply filtering - self" => fn -> + private_params = Map.put(private_params, "reply_visibility", "self") + ActivityPub.fetch_activities(recipients, private_params) + end + }) + end end |