Welcome!

Recurring Revenue Authors: Pat Romanski, Mehdi Daoudi, Kevin Jackson, Lucia Schöpfer, Jyoti Bansal

Blog Feed Post

Supercharge Your Web Applications Using JBoss Data Grid

A few weeks ago, on January 16, Divya Mehra and I have delivered a webinar on using the JBoss Data Grid for improving the scalability and performance of web applications. As expected, the webinar has elicited a lot of questions, not all of which could be answered in the allotted time. As they were really interesting though we are trying to answer them here, also for the benefit of a larger audience.

You can watch the webinar here and download it from here.

In our application we have WebSphere running and use JSF + Richfaces and Spring with Oracle 11g. Can JBoss Data Grid be integrated even if we do no use JBoss EAP?

Yes it can. You can use it in either mode: library or remote client-server.

Can data grid operations participate in a distributed transaction? If so, does it ensure that the commit occurs throughout a cluster? Will all nodes be updated?

Yes, JBoss Data Grid supports distributed transactions in both library and remote client-server mode. The nodes can be enlisted as XA resources. Changes will be propagated across the cluster, but are guaranteed to be propagated to all nodes by the end of the transaction only if the replication mode is synchronous. If the replication mode is asynchronous, there are no such guarantees, although the changes will be eventually replicated.

What usage statistics are available from JDG (e.g. cache hits / misses)? Does a UI for viewing these come with the product or is it just JMX data that the client application has to process?

The data collected from monitoring the JBoss Data Grid activity is available as JMX MBeans. It can be visualized using the JBoss Operations Network, included in the product, or with any other JMX tools and clients (jconsole, VisualVM).

Eventual consistency will be available only in V7.0? What happens now if remote distributed JDG nodes cannot communicate and replicate an update? Would the client hang in that case?

Eventual consistency refers to a weaker consistency model than the strong consistency model which is currently implemented by JBoss Data Grid, maximizing availability at the expense of consistency (refer to the CAP theorem for details). With the current strong consistency model, in the case of communication failure, the behaviour of the client will largely depend on the synchronization model chosen – in the case of synchronous replication, the client may block until the client times out (but never indefinitely). In the case of asynchronous replication it will return immediately (even if replication to other nodes isn’t complete yet). Since JBoss Data Grid currently focuses on a strong concurrency model, eventual consistency will be effectively a new feature of the framework, allowing to deal with the state being inconsistent across the cluster under the control of the framework (for example, a GET operation may involve examining all copies of the data and a quorum-based decision as to which is the correct one).

If I use JBoss Data Grid in Library Mode, how do I add a node concretely?

In Library mode, each application creates its own node, embedded in the application. If  multiple deployments of the application exist (for example in a cluster environment), the nodes will communicate with each other.

Is there any way to delete or clear data from the JBoss Data Grid without having to restart it?

Sure, there is. Data can be removed explicitly through remove() or clear() operations in the application, and their equivalents in the command-line interface (CLI) available in JBoss Data Grid 6.1. Eviction and expiration strategies can be set up as well, for removing unused or stale data from the cache.

Is there a strategy for distributing data in the grid and somehow coordinating parallel work on that distributed data?

JBoss Data Grid will provide a distributed execution framework in JBoss Data Grid 6.1, which will provide a flexible framework for coordinating parallel work. Building on top of that, at a higher level, map/reduce capabilities will be available as well.

When you add additional data grid nodes, do you use distributed locking across nodes and, if so, what impact does that have to the performace of the data grid as more nodes are added?

JBoss Data Grid uses lazy remote locking by default, which reduces traffic. But generally speaking, in a data grid scenario, only a subset of the data is available on each node (and there is a limited number of replicas across the cluster), so the addition of new nodes does not necessarily result in an increase of the number of locks. It all depends on how many nodes the data is replicated. The impact of distributed locking can be further reduced if the grouping API is used, to group keys commonly updated together within a single transaction.

But the demo performance data of 20% improvement is based on an in-memory cache without remote calls compared to remote database calls. It’s not a fair comparison. What about a remote cache compared to a remote database?

We will try to produce more data to illustrate other scenarios. It should be noted, however, that JBoss Data Grid is an in-memory data grid by design. Also, while remote calls add to the overhead, the biggest cost in the type of scenario we envisioned comes from the more expensive IO operations elicited by the database access, as well as the reduced concurrency when locking data in the database.

Does the JBoss Data Grid API have a way to ask for all of the keys (across the cluster) — sort of a master index?

In JBoss Data Grid 6.1, this will be possible through a map-reduce operation.

I saw data being accessed using get/put. Do you use SQL or NoSQL to access data?

JBoss Data Grid uses a key-value pair model so access to data is similar to a map. However, other methods of searching for data, such as index-based querying and map-reduce will be available in JBoss Data Grid 6.1.

Does the data grid allow me to specify how many copies of a piece of data are created and distributed? If I have a 20 node cluster, can I request that it be replicated to 2 of the 20 for example?

Yes, the replication and distribution strategies are configurable.


Read the original blog entry...

More Stories By Daniel Thompson

I curate the content on this page, but the credit goes to my talented colleagues for the posts that you see here. Much of what you read on this page is the work of friends at How to JBoss, and I encourage you to drop by the site at http://www.howtojboss.com for some of the best JBoss technical and non-technical content for developers, architects and technology executives on the Web.

@ThingsExpo Stories
Web Real-Time Communication APIs have quickly revolutionized what browsers are capable of. In addition to video and audio streams, we can now bi-directionally send arbitrary data over WebRTC's PeerConnection Data Channels. With the advent of Progressive Web Apps and new hardware APIs such as WebBluetooh and WebUSB, we can finally enable users to stitch together the Internet of Things directly from their browsers while communicating privately and securely in a decentralized way.
"Tintri was started in 2008 with the express purpose of building a storage appliance that is ideal for virtualized environments. We support a lot of different hypervisor platforms from VMware to OpenStack to Hyper-V," explained Dan Florea, Director of Product Management at Tintri, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
Data is an unusual currency; it is not restricted by the same transactional limitations as money or people. In fact, the more that you leverage your data across multiple business use cases, the more valuable it becomes to the organization. And the same can be said about the organization’s analytics. In his session at 19th Cloud Expo, Bill Schmarzo, CTO for the Big Data Practice at Dell EMC, introduced a methodology for capturing, enriching and sharing data (and analytics) across the organization...
Manufacturers are embracing the Industrial Internet the same way consumers are leveraging Fitbits – to improve overall health and wellness. Both can provide consistent measurement, visibility, and suggest performance improvements customized to help reach goals. Fitbit users can view real-time data and make adjustments to increase their activity. In his session at @ThingsExpo, Mark Bernardo Professional Services Leader, Americas, at GE Digital, discussed how leveraging the Industrial Internet and...
Data is the fuel that drives the machine learning algorithmic engines and ultimately provides the business value. In his session at 20th Cloud Expo, Ed Featherston, director/senior enterprise architect at Collaborative Consulting, will discuss the key considerations around quality, volume, timeliness, and pedigree that must be dealt with in order to properly fuel that engine.
Why do your mobile transformations need to happen today? Mobile is the strategy that enterprise transformation centers on to drive customer engagement. In his general session at @ThingsExpo, Roger Woods, Director, Mobile Product & Strategy – Adobe Marketing Cloud, covered key IoT and mobile trends that are forcing mobile transformation, key components of a solid mobile strategy and explored how brands are effectively driving mobile change throughout the enterprise.
IoT is at the core or many Digital Transformation initiatives with the goal of re-inventing a company's business model. We all agree that collecting relevant IoT data will result in massive amounts of data needing to be stored. However, with the rapid development of IoT devices and ongoing business model transformation, we are not able to predict the volume and growth of IoT data. And with the lack of IoT history, traditional methods of IT and infrastructure planning based on the past do not app...
With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo 2016 in New York. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place June 6-8, 2017, at the Javits Center in New York City, New York, is co-located with 20th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry p...
"LinearHub provides smart video conferencing, which is the Roundee service, and we archive all the video conferences and we also provide the transcript," stated Sunghyuk Kim, CEO of LinearHub, in this SYS-CON.tv interview at @ThingsExpo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
Internet of @ThingsExpo, taking place June 6-8, 2017 at the Javits Center in New York City, New York, is co-located with the 20th International Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. @ThingsExpo New York Call for Papers is now open.
"There's a growing demand from users for things to be faster. When you think about all the transactions or interactions users will have with your product and everything that is between those transactions and interactions - what drives us at Catchpoint Systems is the idea to measure that and to analyze it," explained Leo Vasiliou, Director of Web Performance Engineering at Catchpoint Systems, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York Ci...
The 20th International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held June 6-8, 2017, at the Javits Center in New York City, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Containers, Microservices and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding business opportunity. Submit your speaking proposal ...
WebRTC is the future of browser-to-browser communications, and continues to make inroads into the traditional, difficult, plug-in web communications world. The 6th WebRTC Summit continues our tradition of delivering the latest and greatest presentations within the world of WebRTC. Topics include voice calling, video chat, P2P file sharing, and use cases that have already leveraged the power and convenience of WebRTC.
20th Cloud Expo, taking place June 6-8, 2017, at the Javits Center in New York City, NY, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy.
Discover top technologies and tools all under one roof at April 24–28, 2017, at the Westin San Diego in San Diego, CA. Explore the Mobile Dev + Test and IoT Dev + Test Expo and enjoy all of these unique opportunities: The latest solutions, technologies, and tools in mobile or IoT software development and testing. Meet one-on-one with representatives from some of today's most innovative organizations
DevOps is being widely accepted (if not fully adopted) as essential in enterprise IT. But as Enterprise DevOps gains maturity, expands scope, and increases velocity, the need for data-driven decisions across teams becomes more acute. DevOps teams in any modern business must wrangle the ‘digital exhaust’ from the delivery toolchain, "pervasive" and "cognitive" computing, APIs and services, mobile devices and applications, the Internet of Things, and now even blockchain. In this power panel at @...
Data is the fuel that drives the machine learning algorithmic engines and ultimately provides the business value. In his session at Cloud Expo, Ed Featherston, a director and senior enterprise architect at Collaborative Consulting, discussed the key considerations around quality, volume, timeliness, and pedigree that must be dealt with in order to properly fuel that engine.
"A lot of times people will come to us and have a very diverse set of requirements or very customized need and we'll help them to implement it in a fashion that you can't just buy off of the shelf," explained Nick Rose, CTO of Enzu, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
The WebRTC Summit New York, to be held June 6-8, 2017, at the Javits Center in New York City, NY, announces that its Call for Papers is now open. Topics include all aspects of improving IT delivery by eliminating waste through automated business models leveraging cloud technologies. WebRTC Summit is co-located with 20th International Cloud Expo and @ThingsExpo. WebRTC is the future of browser-to-browser communications, and continues to make inroads into the traditional, difficult, plug-in web co...
Buzzword alert: Microservices and IoT at a DevOps conference? What could possibly go wrong? In this Power Panel at DevOps Summit, moderated by Jason Bloomberg, the leading expert on architecting agility for the enterprise and president of Intellyx, panelists peeled away the buzz and discuss the important architectural principles behind implementing IoT solutions for the enterprise. As remote IoT devices and sensors become increasingly intelligent, they become part of our distributed cloud enviro...