Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enabling Compression to Websocket on Netty #10863

Open
TheAntimist opened this issue May 19, 2021 · 9 comments
Open

Enabling Compression to Websocket on Netty #10863

TheAntimist opened this issue May 19, 2021 · 9 comments
Milestone

Comments

@TheAntimist
Copy link

TheAntimist commented May 19, 2021

Play Version

2.8.8

API

Java

Operating System

Windows and Linux

JDK

~/ java -version
openjdk version "13.0.1" 2019-10-15
OpenJDK Runtime Environment (build 13.0.1+9)
OpenJDK 64-Bit Server VM (build 13.0.1+9, mixed mode, sharing)

Actual Behavior

I am currently implementing a websocket server in Play. As part of doing that I noted that the server does not support the permessage-deflate Websocket Extension.

Netty had added this as part of their 4.1 release . An example of a server implementation is here .

Possible Solution

I went over the codebase, and found that using the ChannelPipeline object during the handshake here, HttpStreamsServerHandler.java#L187 to add the WebSocketServerCompressionHandler could work.

Although, I cannot be certain if this would work or be the right way to achieve it, I could surely raise a PR, if someone pointed me in the right direction.

EDIT: I just checked that this was a duplicate of #4186 . But would like to atleast get a response on how to move forward before closing this issue.

@TheAntimist TheAntimist changed the title Enabling Compression to Websocket Enabling Compression to Websocket on Netty May 19, 2021
@prongs
Copy link

prongs commented Dec 3, 2021

Hey @TheAntimist did you manage to get it to work?

@mkurz mkurz added this to the 2.9.0 milestone Dec 6, 2021
@mkurz
Copy link
Member

mkurz commented Dec 6, 2021

Let's add this to the 2.9 release

@TheAntimist
Copy link
Author

@prongs Unfortunately not yet.
@mkurz Awesome! Let me try and get a prototype PR out during the upcoming holidays.

@mkurz
Copy link
Member

mkurz commented Dec 12, 2021

Let me try and get a prototype PR out during the upcoming holidays.

@TheAntimist Sure 😉 I am happy to review.

@mkurz
Copy link
Member

mkurz commented Jan 23, 2022

@TheAntimist Will you work on this?

@TheAntimist
Copy link
Author

@mkurz I started work on it, but got covid. Just getting recovered and starting work on this again soon.

@mkurz
Copy link
Member

mkurz commented Jan 23, 2022

@TheAntimist Oh, I am sorry, hope you get better soon! I didn't want to push you, just asking if there is still interest. Take your time.

@TheAntimist
Copy link
Author

@mkurz No worries, I intended on getting it done earlier. I will try to finish this within the upcoming 2-3 weeks once I get recovered.

@mkurz mkurz modified the milestones: 2.9.0, Play.next Feb 11, 2022
@TheAntimist
Copy link
Author

TheAntimist commented Feb 13, 2022

@mkurz Just to let you know I've started working on this again last week. Been testing it and checking a few things, hopefully I'll get it completed soon.

TheAntimist added a commit to TheAntimist/playframework that referenced this issue Feb 14, 2022
mkurz pushed a commit to mkurz/playframework that referenced this issue Mar 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants