-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
[Extension Proposal] Infinispan Embedded Quarkus extension #43449
Comments
/cc @aloubyansky (extension-proposal), @gastaldi (extension-proposal), @geoand (kubernetes), @gsmet (extension-proposal), @iocanel (kubernetes), @maxandersen (extension-proposal), @wburns (infinispan) |
I always found it interesting to be able to have infinispan cache directly - if for nothing else for development purpose its useful. is this for standalone only or clustered usecase? There are some possible "semi-cyclic" dependency alignment that could be problematic, like elasticsearch/hibernate search but if not in the quarkus platform that at least technically isn't a blocker. |
I think for clustered use-case you'd use the infinispan client extension, but I agree it's awesome to use it in a standalone use case. |
cc @Sanne who I think will have a few things to say (though I see you already mentioned the "better use client/server on Kubernetes" disclaimer) |
Looks like there is interest in this extension proposal |
@karesti can you add the respective GitHub IDs to the |
Also, how different it is from https://github.com/infinispan/infinispan-quarkus/tree/14.0.x/embedded? |
The code you point is used to build the native server. it's not meant to be used by users. |
@gastaldi I don't understand what happened here |
@karesti you asked for a Quarkiverse extension, @gastaldi created a repository for that extension. Up to you to populate it with something. I seem to remember you mentioning that the extension already exists, though... so that may not be what you wanted? EDIT: Your repo: https://github.com/quarkiverse/quarkus-infinispan-embedded |
@karesti yes, exactly what @yrodiere explained above (as described in details here). Or did I misunderstand and you were looking for feedback to implement this under https://github.com/infinispan/infinispan-quarkus/ ? |
@gastaldi I did not see the repository link, all good, thanks! |
Infinispan Embedded extension
Infinispan embedded extension for Quarkus let you use Infinispan's in-memory data storage directly within your Quarkus applications. Infinispan Client extension connects to an external Infinispan server. The new embedded extension runs Infinispan inside your app. This allows for faster data access and efficient caching, taking full advantage of Quarkus's lightweight and high-performance features.
Infinispan Embedded in a nutshell
Using Infinispan embedded offers advantages like faster data access due to reduced latency from running in the same process as the application. It simplifies setup for smaller applications by eliminating the need for a separate server, resulting in lower overhead and improved efficiency. This setup allows for greater control over caching and data management, speeding up development and testing, making it ideal for use cases where performance and simplicity are priorities.
However, using Infinispan embedded instead of the client-server model can lead to increased resource consumption within the app, making scaling harder since the whole app must scale together. Deployment becomes more complex, and there may be resource conflicts with other instances. Configuration can be challenging as both Infinispan and app settings need optimization, and data persistence must be managed carefully.
Side note for Kubernetes: Using Infinispan in a client-server model in Kubernetes is preferable. It allows independent scaling of the Infinispan Server, making it easier to manage workloads. This centralized approach is more resource-efficient and simplifies configuration and monitoring. It also provides high availability and fault tolerance through clustering and replication, supports effective load balancing, and enables access to advanced features like distributed caching, making it ideal for robust data management.
READ MORE : Embedding Infinispan
Voting
Interested in this extension, please +1 via the emoji/reaction feature of GitHub (top right).
Love Infinispan ? Please, star the project! https://github.com/infinispan/infinispan
Repository name
quarkus-infinispan-embedded
Short description
A Quarkus extension for embedded Infinispan integrates in-memory data grid features directly into Quarkus applications, enabling efficient caching and data storage.
Repository Homepage URL
No response
Repository Topics
Team Members
The text was updated successfully, but these errors were encountered: