tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Amit Pande <Amit.Pa...@veritas.com>
Subject Re: JIO Connector support in Tomcat 8.5
Date Wed, 15 Feb 2017 02:00:32 GMT
Any suggestions on this?

Could the Tomcat NIO connector be modified to receive the file descriptor from the other process
( mentioned below)?

Thanks,

Amit

-------- Original Message --------

Subject: Re: JIO Connector support in Tomcat 8.5

From: Amit Pande <Amit.Pande@veritas.com>

Date: Feb 13, 2017, 19:20

To: Tomcat Users List <users@tomcat.apache.org>

Thanks for a quick reply.

What does our custom connector do?

Well, we have a server program which is listening on a port which is mandatory to be open/accessible
for the outside world. Outside world only talks to this component which in turn hands off
(dup system call) the socket to the other processes. Tomcat being one such process.

Our custom connector accepts the handed-off socket and then resumes the normal processing
done by Tomcat.

Now for NIO connector, seems we need to have a custom implementation of the SocketChannel
but not sure how it might work.

Thanks,

Amit

-------- Original Message --------

Subject: Re: JIO Connector support in Tomcat 8.5

From: Christopher Schultz <chris@christopherschultz.net>

Date: Feb 13, 2017, 18:58

To: Tomcat Users List <users@tomcat.apache.org>

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Amit,

On 2/13/17 6:55 PM, Amit Pande wrote:
> As I understand, the JIO/BIO connector support has been dropped in
> Tomcat 8.5 +.

Correct.

> While I understand the need to push to the NIO based connectors,
> just wondering whether the JIO connector support could have been
> left as it in Tomcat 8.5 and beyond.

No.

> We had extended the BIO connector to have a custom implementation
> and that is broken now once we move to latest Tomcat versions.

You will have to figure something out.

Why did you need to create your own connector?

> We're evaluating refactoring our custom connector but would
> appreciate if there are any suggestions to get the BIO
> implementation going even in 8.5 and beyond so that our custom
> connector's functionality isn't regressed.

BIO is problematic because of many requirements for non-blocking
behavior. It's easy to emulate blocking behavior (e.g.
ServletRequest.getInputStream) based upon non-blocking building blocks
(e.g. NIO connector) but next to impossible to emulate non-blocking
behavior (websocket, comet, etc.) using blocking building blocks (BIO
connector).

Unfortunately, the reality is that a blocking I/O connector is no
longer feasible for Tomcat.

So... what does your custom connector do? Perhaps there's a better way
to achieve your goal, or perhaps Tomcat's connectors could be
re-factored to make it easier to customize something specific for you
without having to re-write the whole connector.

- -chris
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBCAAGBQJYolY6AAoJEBzwKT+lPKRYpCEQALefIMml43cS3r254mGE/pFS
+QWDnaPG2t96oXM8GExUWm6jGBCGarxt7FBxxku112DS8+5NzkmEmP8BdkAkOIeN
7p/1jiGhZ4Koz7ER4JUzAXbbSFmJBjOXWfxYPzecZHrBBdfndoBx2PWRe/Ew4LNY
ujJLSwZWuUSlZu1CBzPT/UU0klthqRRsfHH8JrHe64Jm+qZuPIITjr0G15IYSEU3
SihVCFMmA//yQfRb8rNN9UCM8lYYtu4oYwiythPNt30wz0e5XzOemyX+f/MMlFyD
yWrKlOI9x+g9OVoMNSYvsq+9EO/TTzTW6mWtW26rnHskEz0i/98QIVqg9XIRIvrM
3mPq6Ufuq6Aq75WIVtJcKUe4voDu9KSmOHb7AKsLPFrB6WbzDluSSWD3VpxM/q5R
gluvGG9CcCIRl1ie1ljg3qO90ZPno38RuQl+vxKSsGlY5t/mSce1M4ffBgJdg/T7
GpKZ/+GYTUuDg/jE+9pav/yO2mx8Hj/Oo6TvGCACT4o+sRXtceORcq93c8npCT0L
4+jvS2aJT0Gud3jn2gZ9qZnXGdFWdq59LTnZ1/s6p9gGHglCtWBx9j3fMkS53y1y
41giiY9GXKuEzyHUlSaTT3rLucJCzcJWvHi/k1muqclUn5/Ht2NVHXoLmxVPxgzL
K0bIRYJ9K2R/ou+6YPiV
=zu1M
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message