Connection Reset between F5 and APNS

Our Java backend application is responsible for sending millions of push notifications. However, we are encountering an issue where thousands of connection resets occur daily. This irony leads to an inability to keep up with the volume, resulting in a lag that affects real-time performance.

The application is built on Java, utilizing JDK 1.8 and the Apache HttpClient for network communications. Below is the Maven dependency we use:

XML

<dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.14</version> </dependency>

Additionally, we employ Spring’s RestTemplate to dispatch push notifications. Here is a snippet of the pseudo-code used to call the Apple Push Notification service (APNs):

Java

ResponseEntity<T> postForEntity = restTemplate.postForEntity(apnsURL, entity, responseType); getResponse(aPNSResponse, postForEntity); AI-generated code. Review and use carefully. More info on FAQ. It’s important to note that our calls to APNs are not made directly but are routed through an F5 load balancer, which then communicates with the APNs endpoint.

Could someone guide us in the right direction to resolve these connection reset issues?

The focus of the Apple Developer Forums is Apple APIs, tools, and web services. APNs is clearly an Apple web service, but I don’t see any indication that APNs is causing this issue.

The symptoms you’ve described suggest that the TCP connection between you and APNs is being reset. It’s hard to say what’s causing that. It could be APNs itself, but it could just as easily be code running on your platform or some middlebox between you and APNs. Now, if you were running your push provider on a Mac then I would tell you to use a packet trace to investigate where this reset is coming from. However, you’re not, and that’s about as I can help.

My advice is that you work with your platform vendor and your network management folks to identify the source of the connection reset. If you have evidence that the reset it coming from APNs directly, let us know.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Thanks for the reply. Would it be possible to discuss this over a call?

Would it be possible to discuss this over a call?

No.

Some factoids about DTS support policies:

  • DTS does most of its support business here on DevForums.

  • In specific circumstances we provide one-on-one support via a DTS code-level support request.

  • That support is done via email. You can learn more about it on our page on the Developer website.

  • Regardless, our role is to support Apple APIs, tools, accessory development, and some developer-facing web services. We don’t provide support for non-Apple platforms.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Hello Team,

Could you please provide answers to the following queries?

  1. What is the maximum number of tokens we can obtain?
  2. Additionally, how many connections are permitted per token?
Connection Reset between F5 and APNS
 
 
Q