Skip to main content

microrequests is a wrapper over requests module - makes it more efficient to consume microservices in Python

Project description

This module makes consuming microservices in Python more efficient. Python’s requests module is fantastic and highly configurable, microrequests builds a wrapper over requests module and enables connection pooling as part of initialisation. This ensures that you use the same connection instead of creating one with every new request, while still working with requests’ clean APIs and mechanism.

This is first version of microrequests and we intend to add more customisation for to consume microservices easily and efficiently.

Installation

The easiest way to install microrequests is using pip

$ pip install microrequests

Usage

To use, simply do:

import microrequests

mr = microrequests.init()
res = mr.get("http://httpbin.org/get") # mr is requests' session object and you can use it in similar manner
print(res.text)

you can also customize max_retries, pool_connections and pool_maxsize - they are by default set to 1, 100 and 50 respectively pool_connections is the number of urllib3 connection pools to cache and poolmaxsize* is the maximum number of connections to save in the pool

import microrequests

mr = microrequests.init(max_retries=2, pool_connections=10, pool_size=5)
res = mr.get("http://httpbin.org/get")
print(res.text)

Tests

To run tests:

$ tox

TODO

  • Write more tests

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/abhinavs/microrequests. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the code of conduct.

Code of Conduct

Everyone interacting in the microrequests project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

microrequests-0.1.2.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

microrequests-0.1.2-py3-none-any.whl (3.4 kB view details)

Uploaded Python 3

File details

Details for the file microrequests-0.1.2.tar.gz.

File metadata

  • Download URL: microrequests-0.1.2.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for microrequests-0.1.2.tar.gz
Algorithm Hash digest
SHA256 7a200026c70f076bc63abc8ee6ac4b4e603afeaf841abb4c54f23a6be062ddc8
MD5 3b42e43e310b28785344e8a3351084c5
BLAKE2b-256 6e477ba100689437b5fd76817fad4bd0432c51e5051dc57f2918b8a406c85f86

See more details on using hashes here.

File details

Details for the file microrequests-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: microrequests-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 3.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for microrequests-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5f5d85555dd132b93e8ddc2e85439c6c3bbef89f8b94e6ffa0759abf81d8e293
MD5 cf09c8017fc546b2836cd0a518350110
BLAKE2b-256 02945ca603d835eec0a35d90bee32d808d44713dca545044ff3f8e295732fbfd

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page