- How is this new functionality related to XAP product?
- The new functionality is part of the existing GigaSpaces XAP product
editions and will be available to all XAP users in our upcoming releases
- What type of applications can benefit from these functionalities?
- This is relevant for all types of applications. This functionality
provides ease of use, reduced administration overhead and cost
efficiency. It enables applications to benefit dynamic environments as
well as reduce
- Does this functionality work without virtualization?
- Yes. As noted in the previous answer, it’s relevant to all GigaSpaces
applications. The benefit for cloud and virtualization users is the
ability to register custom event handlers to dynamically expand or
reduce the capacity of the cluster by allocating new resources on the
fly.
- What communication protocols are used between agents and agents+grid manager?
- The communication protocol used is called LRMI (lightweight RMI) that
is the basis for all network communication within GigaSpaces XAP. It is
an optimized version of the standard Java RMI protocol on top of TCP/IP
with support for automatic failover, failure detection and highly
efficient serialization.
- How can I reduce the latency overhead?
- The main factor for latency is the network roundtrip associated with
every call to the data grid. So when accessing the data grid multiple
times within the same business transaction or when performing complex
calculations that involve multiple accesses to the data grid, this can
add up to a significant amount of time. To reduce this overhead, you
can collocate the code that accesses the data with the data. That means
that each data grid instances can also be used for code execution and
not just serve requests for data. The code executes on the node, and
accesses each of the data grid instance locally in memory speeds. The
end result is then returned back to the client. If the business
transaction needs to access data located on more than one node, it can
direct the code to execute on each of the relevant nodes and then
aggregate the results at the client side. The code can be static
(compiled and deployed on the server) or dynamic, which means it is
sent from the client to the data grid nodes when executed.