Performance downgrade for simple get request in kubernetes environment

In a simple get request, by default trust_env is set to true, so the get request will check for the environment variables for proxy setting, but if it is in a large kubernetes cluster, the environment variables will be sufficiently large and each scan has a very heavy workload but not used on networking.

## Expected Result

Expected there will be an option to override the environment variables checking, so that we do not need to waste lots of CPU time to scan through the environment everytime when we call get request.

OR

A setter method to set the trust_env to false and bypass all the environment checking so as to reduce the loop resource.


## Actual Result

In a heavy loading kubenetes cluster, there are around 20k environment variables when creating new service container (just because it has too many services)
While performing loading test in the same namespace environment, every get request call will scan through 20k elements, if we have 10 request per second, it is already occupied whole single CPU core
If we deleted all the environment variables at the very beginning before the requests, it just take 10% or less resource for the same loading.

## Reproduction Steps

```python
import requests
# if we get from private network, we possibly don't need the proxy setting
r = requests.get('http://10.0.0.1')

```

## Reference

https://github.com/psf/requests/blob/master/requests/sessions.py#L701
https://github.com/psf/requests/blob/967a05bfffcb68f97296eda197b062221c2ebc0d/requests/utils.py#L760
https://github.com/psf/requests/blob/967a05bfffcb68f97296eda197b062221c2ebc0d/requests/utils.py#L699

> In a simple get request, by default trust_env is set to true, so the get request will check for the environment variables for proxy setting, but if it is in a large kubernetes cluster, the environment variables will be sufficiently large and each scan has a very heavy workload but not used on networking.

We're not (ourselves) scanning the environment but relying on https://github.com/python/cpython/blob/2afd1751dd9a35d4ec03b708e3e5cddd72c43f7e/Lib/urllib/request.py#L2482 to do so. Complaints about the relative speed of doing that in a Kubernetes environment, need to be addressed with the standard library.

> A setter method to set the trust_env to false and bypass all the environment checking so as to reduce the loop resource.

```py
import requests
s = requests.Session()
s.trust_env = False
s.get('http://10.0.0.1')
```

Why can't you use a session? 

Is it 2 more lines of code? Absolutely. 

Does it fix this for you without requiring an API change in a library that's not accepting them (and hasn't been for years)? Absolutely. 


> but if it is in a large kubernetes cluster, the environment variables will be sufficiently large

Also, it sounds like there's a fundamental misunderstanding here of kubernetes and how pods and environment variables interact. Frankly speaking, given the number of people who are using K8s these days - and python on K8s - if this were a inherent property of K8s, I'd expect this to have been raised sooner. Instead, this sounds like a problem with your specific use of K8s and something that isn't common and is likely fixed in your service/pod definition(s)

FYI: We hit this same issue in production.

> Also, it sounds like there's a fundamental misunderstanding here of kubernetes and how pods and environment variables interact. Frankly speaking, given the number of people who are using K8s these days - and python on K8s - if this were a inherent property of K8s, I'd expect this to have been raised sooner. Instead, this sounds like a problem with your specific use of K8s and something that isn't common and is likely fixed in your service/pod definition(s)

It's not really a fundamental misunderstanding of Kubernetes and pods and environment variables. Especially as folks start using more and more microservices and things like Knative, it can pop up very easily. We hit it with about 100 microservices.

@hmliu6 if you're not using the env vars, you can set `enableServiceLinks: False` in your pods and that should properly address the issue.