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 hashes)

Uploaded Source

Built Distribution

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

Uploaded Python 3

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