Recurring Revenue Authors: Elizabeth White, Liz McMillan, AppDynamics Blog, Pat Romanski, Ed Featherston

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
For basic one-to-one voice or video calling solutions, WebRTC has proven to be a very powerful technology. Although WebRTC’s core functionality is to provide secure, real-time p2p media streaming, leveraging native platform features and server-side components brings up new communication capabilities for web and native mobile applications, allowing for advanced multi-user use cases such as video broadcasting, conferencing, and media recording.
Amazon has gradually rolled out parts of its IoT offerings, but these are just the tip of the iceberg. In addition to optimizing their backend AWS offerings, Amazon is laying the ground work to be a major force in IoT - especially in the connected home and office. In his session at @ThingsExpo, Chris Kocher, founder and managing director of Grey Heron, explained how Amazon is extending its reach to become a major force in IoT by building on its dominant cloud IoT platform, its Dash Button strat...
SYS-CON Events announced today that SoftNet Solutions will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. SoftNet Solutions specializes in Enterprise Solutions for Hadoop and Big Data. It offers customers the most open, robust, and value-conscious portfolio of solutions, services, and tools for the shortest route to success with Big Data. The unique differentiator is the ability to architect and ...
A critical component of any IoT project is what to do with all the data being generated. This data needs to be captured, processed, structured, and stored in a way to facilitate different kinds of queries. Traditional data warehouse and analytical systems are mature technologies that can be used to handle certain kinds of queries, but they are not always well suited to many problems, particularly when there is a need for real-time insights.
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 @...
The best way to leverage your Cloud Expo presence as a sponsor and exhibitor is to plan your news announcements around our events. The press covering Cloud Expo and @ThingsExpo will have access to these releases and will amplify your news announcements. More than two dozen Cloud companies either set deals at our shows or have announced their mergers and acquisitions at Cloud Expo. Product announcements during our show provide your company with the most reach through our targeted audiences.
One of biggest questions about Big Data is “How do we harness all that information for business use quickly and effectively?” Geographic Information Systems (GIS) or spatial technology is about more than making maps, but adding critical context and meaning to data of all types, coming from all different channels – even sensors. In his session at @ThingsExpo, William (Bill) Meehan, director of utility solutions for Esri, will take a closer look at the current state of spatial technology and ar...
Everyone knows that truly innovative companies learn as they go along, pushing boundaries in response to market changes and demands. What's more of a mystery is how to balance innovation on a fresh platform built from scratch with the legacy tech stack, product suite and customers that continue to serve as the business' foundation. In his General Session at 19th Cloud Expo, Michael Chambliss, Head of Engineering at ReadyTalk, will discuss why and how ReadyTalk diverted from healthy revenue an...
SYS-CON Events announced today that Streamlyzer will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Streamlyzer is a powerful analytics for video streaming service that enables video streaming providers to monitor and analyze QoE (Quality-of-Experience) from end-user devices in real time.
You have great SaaS business app ideas. You want to turn your idea quickly into a functional and engaging proof of concept. You need to be able to modify it to meet customers' needs, and you need to deliver a complete and secure SaaS application. How could you achieve all the above and yet avoid unforeseen IT requirements that add unnecessary cost and complexity? You also want your app to be responsive in any device at any time. In his session at 19th Cloud Expo, Mark Allen, General Manager of...
SYS-CON Media announced today that @WebRTCSummit Blog, the largest WebRTC resource in the world, has been launched. @WebRTCSummit Blog offers top articles, news stories, and blog posts from the world's well-known experts and guarantees better exposure for its authors than any other publication. @WebRTCSummit Blog can be bookmarked ▸ Here @WebRTCSummit conference site can be bookmarked ▸ Here
In past @ThingsExpo presentations, Joseph di Paolantonio has explored how various Internet of Things (IoT) and data management and analytics (DMA) solution spaces will come together as sensor analytics ecosystems. This year, in his session at @ThingsExpo, Joseph di Paolantonio from DataArchon, will be adding the numerous Transportation areas, from autonomous vehicles to “Uber for containers.” While IoT data in any one area of Transportation will have a huge impact in that area, combining sensor...
Almost everyone sees the potential of Internet of Things but how can businesses truly unlock that potential. The key will be in the ability to discover business insight in the midst of an ocean of Big Data generated from billions of embedded devices via Systems of Discover. Businesses will also need to ensure that they can sustain that insight by leveraging the cloud for global reach, scale and elasticity.
The security needs of IoT environments require a strong, proven approach to maintain security, trust and privacy in their ecosystem. Assurance and protection of device identity, secure data encryption and authentication are the key security challenges organizations are trying to address when integrating IoT devices. This holds true for IoT applications in a wide range of industries, for example, healthcare, consumer devices, and manufacturing. In his session at @ThingsExpo, Lancen LaChance, vic...
Cloud based infrastructure deployment is becoming more and more appealing to customers, from Fortune 500 companies to SMEs due to its pay-as-you-go model. Enterprise storage vendors are able to reach out to these customers by integrating in cloud based deployments; this needs adaptability and interoperability of the products confirming to cloud standards such as OpenStack, CloudStack, or Azure. As compared to off the shelf commodity storage, enterprise storages by its reliability, high-availabil...
In the next forty months – just over three years – businesses will undergo extraordinary changes. The exponential growth of digitization and machine learning will see a step function change in how businesses create value, satisfy customers, and outperform their competition. In the next forty months companies will take the actions that will see them get to the next level of the game called Capitalism. Or they won’t – game over. The winners of today and tomorrow think differently, follow different...
The IoT industry is now at a crossroads, between the fast-paced innovation of technologies and the pending mass adoption by global enterprises. The complexity of combining rapidly evolving technologies and the need to establish practices for market acceleration pose a strong challenge to global enterprises as well as IoT vendors. In his session at @ThingsExpo, Clark Smith, senior product manager for Numerex, will discuss how Numerex, as an experienced, established IoT provider, has embraced a ...
SYS-CON Events announced today that Super Micro Computer, Inc., a global leader in Embedded and IoT solutions, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 7-9, 2017, at the Javits Center in New York City, NY. Supermicro (NASDAQ: SMCI), the leading innovator in high-performance, high-efficiency server technology, is a premier provider of advanced server Building Block Solutions® for Data Center, Cloud Computing, Enterprise IT, Hadoop/Big Data, HPC and ...
The Internet of Things (IoT), in all its myriad manifestations, has great potential. Much of that potential comes from the evolving data management and analytic (DMA) technologies and processes that allow us to gain insight from all of the IoT data that can be generated and gathered. This potential may never be met as those data sets are tied to specific industry verticals and single markets, with no clear way to use IoT data and sensor analytics to fulfill the hype being given the IoT today.
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.