Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagejava
PoolFactory {    
  /**    
   * Set the proxy to be used when making connections from this pool.
   * @param proxyAddress is host and port formatted like the authority part of a URL
   * but without any userinfo part. See RFC 3986 for details. Examples:
   *
   *  "foo.bar.com:1234" is a fully-qualified domain name and port
   *  "1.2.3.4:567" is an IPv4 address and port
   *  "[1:2::1]:80" is an IPv6 address and port
   */
  setProxy(ProxyType type, String proxyAddress)
}
ClientCacheFactory {
  setPoolProxy(ProxyType type, String proxyAddress)
}

enum ProxyType {
   /**        
    * Use a SNI proxy. With an SNI proxy, the proxyAddress field should be specified as host:port        
    */   
   SNI; 
}


The proxyAddress parameter will be in the familiar URL format[1][2], specifically the authority part of a URL without any userinfo part.

Performance Impact

Connecting through a proxy may impact the performance of client/server messaging, but it is up to the user to decide if they want to use this feature or not. SNI proxies do require the use of TLS, which also adds overhead.

...

What are minor adjustments that had to be made to the proposal since it was approved?


References

Anchor
[1]
[1]
Description of URL syntax from Wikipedia article on URLs https://en.wikipedia.org/wiki/URL#Syntax

Anchor
[2]
[2]
 RFC 3986 sections 3.2.2 and 3.2.3 describing host and port syntax in URLs https://tools.ietf.org/html/rfc3986#section-3.2.2