Skip to content

Conversation

Arooba-git
Copy link

Hi! 🙂

We detected a blocking call in http-codec module with the help of BlockHound:
sf2-blocking

This PR fixes the blocking code so the pipeline remains reactive end to end. :) We re-ran the tests and also compared the performance (CPU usage and latency) before and after the fix:

Before
sf-latency-before
sf2-cpu-bef

After
sf2-cpu-aft
sf2-latency-after

@spring-projects-issues spring-projects-issues added the status: waiting-for-triage An issue we've not yet triaged or decided on label Jul 23, 2023
@jhoeller jhoeller added in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement and removed status: waiting-for-triage An issue we've not yet triaged or decided on labels Aug 3, 2023
@jhoeller jhoeller added this to the 6.0.12 milestone Aug 3, 2023
@jhoeller jhoeller changed the title Move blocking writeResource operation to boundedElastic in http-code module Move blocking writeResource operation to boundedElastic Aug 3, 2023
@poutsma poutsma self-assigned this Aug 16, 2023
@poutsma poutsma modified the milestones: 6.0.12, 6.1.0-RC1 Aug 28, 2023
@poutsma
Copy link
Contributor

poutsma commented Aug 28, 2023

As with #30903, this PR uses the bounded elastic scheduler for all writing operations, including zero-copy operations that do not burden the CPU. I will address this by localizing the usage of the bounded elastic scheduler to just the blocking operations. Doing so will require new method signatures for a public method, so rescheduling to 6.1.

@poutsma poutsma closed this in 76c032c Aug 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants