question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Handle multiple sets of credentials with a single ApnsClient instance

See original GitHub issue

Now that we’ve introduced connection pooling in #492, the next big step will be to get clients to choose connections from different sub-pools depending on the topic to which a notification should be sent (and therefore which credentials the client should use). To get there, we’ll probably need to introduce some abstract notion of ApnsCredentials that has subclasses/implementations for X509 certificates and PKCS#8 signing keys, and then extend the existing connection pool infrastructure to add “keyed” pool functionality.

The end result will be that callers will only need to have a single ApnsClient instance for all of their destination apps, which will probably be a big win for high-volume users.

Issue Analytics

  • State:open
  • Created 6 years ago
  • Reactions:5
  • Comments:8 (3 by maintainers)

github_iconTop GitHub Comments

2reactions
jchamberscommented, Jun 18, 2018

It’s the next major feature planned, but there’s isn’t a specific timeline for release.

0reactions
aptituzcommented, May 6, 2022

Just some cents from a user about the KeyedPooledObjectFactory topic above:

We could build everything around topics, which would be reasonably simple and straightforward, but maaaaay introduce some unnecessary overhead in cases where people are sending to lots of topics with the same credentials. If we keyed based on credentials instead, we’d have connections allocated per credential set rather than per topic.

We are one of those users having several topics with the same keys. Thus, I think it wouldn’t be ideal to have connection pools per topic (but of course I may be biased here). In case its of any worth for you: in our service we have the concept of an app-group and topics are mapped to app-groups. Maybe a similar concept would be helpful for pushy?

Read more comments on GitHub >

github_iconTop Results From Across the Web

Pull requests · jchambers/pushy - GitHub
Handle multiple sets of credentials with a single ApnsClient instance. #948 opened on Feb 27 by jchambers • Draft v0.16.0.
Read more >
ApnsClientBuilder (Pushy 0.10 API)
An ApnsClientBuilder constructs new ApnsClient instances. ... Sets the TLS credentials for the client under construction using the contents of the given ...
Read more >
ApnsClientBuilder (Pushy 0.12.1 API) - javadoc.io
An ApnsClientBuilder constructs new ApnsClient instances. ... Sets the TLS credentials for the client under construction using the contents of the given ...
Read more >
VMware Workspace ONE UEM 2105 - Console Basics
You can only choose multiple entities of a single type per session. For example, you may assign multiple groups to up to 10...
Read more >
com.turo.pushy.apns.ApnsClientBuilder.java Source code
Client builders may be reused to generate multiple clients, and their settings may be changed from one client * to the next. APNs...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found