In today’s digital world, software strategy is central to business strategy. To stay competitive, organizations need customized software applications to meet their unique needs — from customer engagements to new product and services development. Drawn-out development projects are no longer acceptable, given business demands. Therefore, the need to speed up application development, testing, delivery, and deployment is no longer optional but a must-have competency.
At the same time that developers are confronting this challenge to deliver solutions more quickly, they are also facing the most diverse technology ecosystem in the history of computing. To address this challenge, development teams must modernize architecture, infrastructure, and processes to deliver higher-quality applications with greater agility.
Cloud native development is an approach to building and running applications that fully exploits the advantages of the cloud computing model. Cloud native development multidimensionality involves architecture, infrastructure, and processes based upon four key tenets:
- Services-based architecture: could be microservices or any modular loosely coupled model for independent scalability and flexibility of maintenance and polyglot language runtimes.
- Containers and Docker image: as the deployment unit and self-contained execution environment with consistency and portability across cloud infrastructures.
- DevOps automation: implementing processes and practices and instrumentation of development to test deployment of applications.
- API-based design: The only communication allowed is via service interface calls over the network. No direct linking, no direct reads of another team’s data store, no shared-memory model with an outside- in perspective.
Continue reading “Cloud Native Application Development – Adopt or Fail”
I really dislike the term “legacy apps,” especially when it is used by vendors. It feels like they are calling my baby (i.e. my app) with a bad name. I love the quote by Martin Fowler, “All we are doing is writing tomorrow’s legacy software today.” I am certainly not advocating to stick to your old applications forever. All applications and systems have a life-cycle that goes from build to retire. Somewhere in between lies the stage of renewing the capabilities of the system, often named as modernization, enhancement, or rehab. This is the most important phase from the perspective of extending the life of the application and enhancing the long term value harvested from it.
In IT, each generational transition has called for modernizing and redesigning applications, business processes and IT infrastructure to exploit new technologies’ capabilities and efficiencies. App modernization isn’t carried out as a fashion statement or status symbol but for hard business reasons. Regardless of the era, the benefits of a periodic app overhaul include better performance, more features, greater usability, and higher reliability.
Continue reading “There is no magical OFF switch for legacy apps”
I am excited to announce the general availability of Red Hat JBoss Data Grid 7.1! This is the only Red Hat software ranked highly in two separate Forrester waves categories: In-Memory Data Grid and In-Memory Database. On top of that, no other vendor offers any unified in-memory data management solution that is recognized in both waves — JBoss Data Grid is the one product with the versatility to span both categories.
In-memory computing is all about high performance and scale-out architecture. The primary focus of this release to enhance the performance of JBoss Data Grid as an in-memory data management platform for hybrid transactional and analytical (HTAP) workloads.
New Capabilities and Features
- Performance improvements. JBoss Data Grid 7.1 features core performance improvements, especially in clustered write operations. Current tests have shown up to 60% increase in write throughput under load. (We have modified various default settings to improve JBoss Data Grid performance.)
- Elastic scale external state management for JBoss Web Server (Tomcat) and Spring applications (on-premise or cloud/Openshift). JBoss Data Grid 7.1 features the ability to externalize HTTP sessions from a JBoss Web Server node to a remote JBoss Data Grid cluster. This helps make the JBoss Web layer stateless and enables a rolling update of the application layer, while retrieving the session data from the JBoss Data Grid layer. Additionally, JBoss Data Grid 7.1 features Spring session support, which enables you to externalize HTTP session from a Spring (or Spring Boot) deployment to a remote JBoss Data Grid cluster.
- Real-time analytics, through Apache Spark 2.x integration supporting RDD and DStream interfaces.
- New string-based querying with Ickle (tech preview). JBoss Data Grid 7.1 introduces a new string-based querying language, Ickle, as technology preview, which enables you to specify combinations of relational and full-text predicates (based on Apache Lucene). This enhances the querying feature-set available in client-server mode by bringing several additional operations that were previously available only in library mode.
- Ease of administration. Update and save node-level configurations are now available through the administration console.
- Feature enhancements to Hot Rod clients, including streaming large-sized objects in chunks from the JBoss Data Grid server to a Java client and adding cross-site failover for C++, C# and Node.js clients.
Today we announced three new Red Hat JBoss Middleware services on OpenShift based on JBoss Fuse, JBoss BRMS, and JBoss Data Grid.
Performance and Scalability for Cloud Applications
With cloud computing, businesses expect and demand that their applications deliver higher performance, availability, reliability, flexibility, and scalability than ever before. But the influx of data is creating new obstacles that make it difficult for applications to meet the demands and expectations.
Continue reading “In-Memory Performance and Elastic Scale Data Management as a Cloud Service”