Sorry not to be clear enough. I am talking about inbound traffic here, so 
HTTP POST requests to the App Engine. Not HTTP responses from the App 
Engine. 
Our responses from App Engine are zipped just fine by the platform, no 
problems there.

The case here really is HTTP POSTs to the App Engine when the HTTP request 
POST body is compressed. Normal cases are that App Engine will get the 
request as already uncompressed but sometimes the request is coming as is 
thus still compression in place. I am suspecting that it has something to 
do with the request size. I am not sure though. 


 

On Wednesday, 12 January 2022 at 13:20:22 UTC+2 [email protected] wrote:

> My understanding is that that 32MB constraint is only if the responses are 
> not on Cloud Storage or Legacy Blobstore. If you're requesting 
> gzip-compressed responses, then the responses shouldn't be uncompressed, as 
> far as I understand it - according to this 
> <https://cloud.google.com/appengine/docs/standard/java/how-requests-are-handled#response_compression>,
>  
> if the request doesn't specify compressed responses ( by having the header 
> *Accept-Encoding: 
> gzip*) it should return uncompressed responses. The likely reason for 
> some responses being compressed and others not is due to caching 
> <https://cloud.google.com/appengine/docs/standard/java/how-requests-are-handled#response_caching>
>  
> if you've configured, if you've configured it (though I believe there is a 
> predetermined configuration).
>
> Though I'm not sure how to answer your third question, would you mind 
> rephrasing it? I'm not sure what you mean 
>
> On Wednesday, January 12, 2022 at 9:38:57 AM UTC+1 
> [email protected] wrote:
>
>> We use App Engine standard with Java 8. We have a client that sends HTTP 
>> POST (post body as JSON) requests as gzip-compressed. In normal cases, 
>> everything works just fine. The frontend will uncompress the requests and 
>> the App Engine will see the uncompressed request.
>>
>> But with some requests (large ones?) uncompressing is not done by the 
>> frontend. This is seen as the request header *content-encoding=[gzip] *is 
>> still in the request headers and content is binary when the request arrives 
>> in App Engine. Our application is not prepared to uncompress the request 
>> but relies on the frontend to uncompress it. We couldn't find much 
>> information about the rules of uncompressing requests. The page 
>> https://cloud.google.com/appengine/docs/standard/java/how-requests-are-handled#request_limits
>>  
>> says only that the request limit is 32 megabytes. Our failing requests are 
>> far below that limit in both compressed and uncompressed.
>>
>>    - Is there a way to find out why some requests are not uncompressed?
>>    - If it is the size of the request, can the limit be 
>>    configured/increased?
>>    - Is the best practice that the application must handle compressed 
>>    requests also even frontend is taking care of the majority of the 
>>    compressed requests?
>>    - Is there documentation somewhere telling more about compressed 
>>    request limits/handling in App Engine standard? 
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-appengine/31258021-52f0-4f70-8481-55e04d7e03d6n%40googlegroups.com.

Reply via email to