[undertow-dev] [3.x] HttpString migration

Carter Kozak ckozak at ckozak.net
Wed Apr 24 10:13:38 EDT 2019


That's a good point, it looks like there's a relevant discussion here https://github.com/netty/netty/issues/8548 and https://github.com/netty/netty/issues/8540

On Wed, Apr 24, 2019, at 09:51, David Lloyd wrote:
> Also worth noting is that the JDK recently introduced "compact
> strings", which allows for storage and creation of strings in 8-bit
> encoding under some circumstances. So String might actually be an
> okay long term choice in the end after all.
> 
> References:
> - JEP 254 https://openjdk.java.net/jeps/254
> - https://bugs.openjdk.java.net/browse/JDK-8054307
> - https://dzone.com/articles/compact-strings-in-java-9
> 
> On Tue, Apr 23, 2019 at 11:43 PM Stuart Douglas <sdouglas at redhat.com> wrote:
> >
> > This is one of the things I am not 100% sure about. I think CharSequence is probably the way to go, but I need to investigate the performance of the various options.
> >
> > With the Servlet API end users need to use String anyway, so if we made AsciiString part of the API we may end up with worse Servlet performance but better native handler performance, so there will probably be a trade off somewhere.
> >
> > Stuart
> >
> > On Tue, Apr 23, 2019 at 10:42 PM Carter Kozak <ckozak at ckozak.net> wrote:
> >>
> >> Greetings,
> >>
> >> I'm curious what the plan is for HttpString in undertow 3.x, since this will potentially be the most frequent migration for components which don't implement custom xnio mechanisms. At the moment, the 3.x branch has replaced most uses of HttpString with String, however netty provides a similar AsciiString type which may provide similar performance characteristics to HttpString. Have we considered using the Netty type directly where HttpString is currently used, or using CharSequence instead of string since AsciiString already implements CharSequence, and HttpString may be updated to support it? Based on UNDERTOW-147 [1] I suppose there's some question as to whether or not a non-string type is desirable for Servlet uses.
> >>
> >> Thanks,
> >> Carter
> >>
> >> 1. https://issues.jboss.org/browse/UNDERTOW-147
> >> _______________________________________________
> >> undertow-dev mailing list
> >> undertow-dev at lists.jboss.org
> >> https://lists.jboss.org/mailman/listinfo/undertow-dev
> >
> > _______________________________________________
> > undertow-dev mailing list
> > undertow-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/undertow-dev
> 
> 
> 
> -- 
> - DML
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/undertow-dev/attachments/20190424/8551e3c6/attachment-0001.html 


More information about the undertow-dev mailing list