{"id":17693392,"url":"https://github.com/ttytm/nim-async-requests-example","last_synced_at":"2025-03-30T23:18:06.277Z","repository":{"id":112549175,"uuid":"585603255","full_name":"ttytm/nim-async-requests-example","owner":"ttytm","description":"Example in Nim that focuses on concurrent async requests","archived":false,"fork":false,"pushed_at":"2023-03-15T00:50:54.000Z","size":18,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-28T19:11:50.284Z","etag":null,"topics":["async","concurrency","nim","requests"],"latest_commit_sha":null,"homepage":"","language":"Nim","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ttytm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-01-05T15:39:07.000Z","updated_at":"2023-01-05T23:04:03.000Z","dependencies_parsed_at":"2023-05-16T04:45:31.973Z","dependency_job_id":null,"html_url":"https://github.com/ttytm/nim-async-requests-example","commit_stats":null,"previous_names":["ttytm/nim-async-requests-example"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttytm%2Fnim-async-requests-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttytm%2Fnim-async-requests-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttytm%2Fnim-async-requests-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttytm%2Fnim-async-requests-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ttytm","download_url":"https://codeload.github.com/ttytm/nim-async-requests-example/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246390864,"owners_count":20769478,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["async","concurrency","nim","requests"],"created_at":"2024-10-24T13:44:54.689Z","updated_at":"2025-03-30T23:18:06.257Z","avatar_url":"https://github.com/ttytm.png","language":"Nim","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Nim-async-requests-example\n\nExample in Nim that focuses on concurrent async requests.\n\n## Test runs\n\n```\n-------------------------------------------------------------------------------\n1: Time: 11.62s. Sent: 99. Successful: 86. Errors: 11. Timeouts: 2. Transferred 25.86 MB (2.23 MB/s).\n2: Time: 8.15s. Sent: 99. Successful: 87. Errors: 11. Timeouts: 1. Transferred 26.61 MB (3.27 MB/s).\n3: Time: 7.42s. Sent: 99. Successful: 88. Errors: 10. Timeouts: 1. Transferred 27.18 MB (3.66 MB/s).\n4: Time: 7.28s. Sent: 99. Successful: 88. Errors: 10. Timeouts: 1. Transferred 26.34 MB (3.62 MB/s).\n5: Time: 10.59s. Sent: 99. Successful: 87. Errors: 11. Timeouts: 1. Transferred 26.63 MB (2.51 MB/s).\n6: Time: 12.19s. Sent: 99. Successful: 86. Errors: 12. Timeouts: 1. Transferred 25.37 MB (2.08 MB/s).\n7: Time: 12.82s. Sent: 99. Successful: 88. Errors: 10. Timeouts: 1. Transferred 27.01 MB (2.11 MB/s).\n8: Time: 8.64s. Sent: 99. Successful: 88. Errors: 10. Timeouts: 1. Transferred 27.02 MB (3.13 MB/s).\n9: Time: 12.86s. Sent: 99. Successful: 87. Errors: 10. Timeouts: 2. Transferred 27.02 MB (2.10 MB/s).\n10: Time: 18.95s. Sent: 99. Successful: 87. Errors: 10. Timeouts: 2. Transferred 26.92 MB (1.42 MB/s).\n-------------------------------------------------------------------------------\nRuns: 10. Average Time: 11.05s. Total Errors: 105. Total Timeouts: 13. Transferred: 265.96 MB (2.41 MB/s).\n-------------------------------------------------------------------------------\n```\n\n---\n\nSingle source requests (for simplicity `google.com/search?q=\u003c1..100\u003e`)\u003cbr\u003e\nIt may result in a `Too Many Requests` error repeatedly performing this amount requests.\n\n```\nTime: 2.90s. Sent: 100. Successful: 100. Errors: 0. Timeouts: 0. Transferred 10.85 MB (3.74 MB/s).\n```\n\n---\n\nIf you have thoughts on how to improve performance, please feel free to share them the discussions or submit a pull request.\n\n## Equivalents in other languages\n\n- Python: https://github.com/tobealive/python-async-requests-example\n- Haskell: https://github.com/tobealive/haskell-async-requests-example\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fttytm%2Fnim-async-requests-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fttytm%2Fnim-async-requests-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fttytm%2Fnim-async-requests-example/lists"}