-
Notifications
You must be signed in to change notification settings - Fork 831
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
Add support for spring-boot-starter-webflux #152
Comments
We would need to modify https://github.com/SeldonIO/seldon-core/tree/master/wrappers/s2i/java/wrapper project to make the setup configurable. Would the specific change be just to swap out Tomcat for Netty?
|
I've taken a better look at what the issue might be. It seems that This StackOverflow answer seems to suggest a way forward. Does this seem a reasonable way forward? I assume I could create my own equivalent to |
Be great if this could be an extension of our wrapper code to allow either to be used. But yes that sounds like the right idea. Its the config in io.seldon.wrapper.config that needs to be selected by the user. The one currently in that package is for Tomcat. Any suggestions on how we could have one for Tomcat and one for Netty and allow the user to decide? We could delete it and its up to the user to create appropriate bindings? But then that makes it harder for people to get running quickly. |
I've created an example spring-boot-starter-webflux that compiles against seldon-core - https://github.com/dorzey/demo-seldon-app I had to add an exclusion filter for I've not had the chance to deploy this to K8 with seldon yet. |
@dorzey I had a look at your example "https://github.com/dorzey/demo-seldon-app" I didn't see this work as you expected, it still starts the Tomcat embedded webserver. Another approach can be to exclude the tomcat dependency thats in seldon-core-wrapper, and use the dependency you want ie. "spring-boot-starter-reactor-netty" so the change to your pom.xml can be as follows:
This should start your app with netty. |
Please reopen if still an issue. |
* add trigger types to pipeline steps * finish triggers to allow for tensor spec
I have a Spring Boot app wrapping a Spark model that uses
org.springframework.boot:spring-boot-starter-webflux
version2.0.0.RELEASE
.The existing
seldon-core-wrapper
uses an older version of Spring Boot and assumes I am using Tomcat as a web container. Thus, when the app starts I get ajava.lang.ClassNotFoundException: org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer
.From performance tests I know that Netty (the default container in webflux) is more performant for my application than Tomcat.
If I wished to use seldon-core what are the possible ways forward?
Thanks!
The text was updated successfully, but these errors were encountered: