You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There may be performance issues going between the WebFlux and Cats Effect threadpools, particularly when
119
+
running in an environment with a small number of CPU cores. This has to do with how time sharing is handled with fibers / virtual threads;
120
+
in Cats Effect, a fiber generally [only yields on an IO boundary](https://typelevel.org/cats-effect/docs/2.x/datatypes/io), or in other words, when one of it's composite IO blocks completes.
121
+
This is fundamentally different from true threads where the OS scheduler ensures each thread gets a fair amount of CPU time regardless of
122
+
where / what each thread is doing.
123
+
124
+
Ideally there is at least one CPU core dedicated to each thread in each pool, but I am not sure how thread affinity works here
125
+
or if it is even possible to exclusively bind a CPU to each of these threads. I also plan to provide better detail on
126
+
what happens under load in situations where there are fewer cores than threads, or even a single core.
127
+
103
128
# Future Improvements
104
129
## Spring Security
105
-
In particular, add JTW authentication and secured endpoints + tests
130
+
* Add OAuth2 request/ refresh tokens
131
+
* Add Oauth2 client to support third party authentication (Google, etc)
106
132
107
133
## Async Rest Controller
108
134
Create an AsyncController that demonstrates adapting Spring's async programming model
0 commit comments