webAI and MacStadium(link is external) announced a strategic partnership that will revolutionize the deployment of large-scale artificial intelligence models using Apple's cutting-edge silicon technology.
The goal of every software developer and tester is to produce applications that meet user expectations and achieve business objectives. Standing in their way is the need to understand and predict the production environment and how real-world end users will experience the application.
To combat this challenge, Perfecto Mobile's Eran Kinsbruner, in his recent blog on APMdigest, Are Your Mobile Apps Ready for the Real World? states: "To prepare their mobile apps for the real world, enterprises need to conduct performance testing under real network conditions."
I couldn't agree more.
How do you do this? What concrete steps can you take throughout the development and production lifecycles to test under real network conditions and ensure positive business results?
Virtualized Users, Services and Networks
The most accurate way to test applications under real-world conditions is to discover them, capture them, and virtualize them in your development and test environments.
No development or test environment is truly complete without at least three virtualized components: users, services and networks. These three components build on each other to give an accurate portrayal of how your app will perform in the hands of end users.
Virtualized users, or load, represent synthetic traffic to your application. This load provides insight into how your application scales and reacts to various numbers of end users.
Your application likely is comprised of multiple services or dependencies, some within your own control and some from third parties like Google or Akamai. These services are required for application performance and function but often are unavailable in a test environment.
Leveraging virtualized services, or scripted replies based on real-world service responses within the test environment, allows the application to interact with its dependencies as it would once deployed.
End users and services communicate over networks. Virtualizing these network conditions give you the most accurate picture of how your application will perform once deployed. Network constraints like latency, bandwidth and packet loss can be accurately emulated, making test results more indicative of real-world application behavior.
Without running load or services tests through virtualized networks, you are assuming pristine network conditions, something of a dangerous fantasy when it comes to the real world, especially mobile.
Readying Apps from Development to Deployment
Once you have virtualization tools in place, in what phase of the application lifecycle do you use them?
Start using them as early as possible. You can put network virtualization to work for a single user test from a developer workstation, enabling a reliable view of application behavior even before putting the software on a live device. Virtualization early in the application life cycle will help you detect if you missed anything significant before that error gets lost in the midst of other developers'code.
When you build out test environments, incorporating this comprehensive virtualization strategy gives you the most relevant and meaningful results.
This way, you can test over multiple network variations to see how the app performs when faced with lowered bandwidth or increased packet loss, latency or jitter. Unlike in-the-wild testing, with virtualization you can control these variables. You can repeat tests under different, comparable network configurations.
Once you push the application into production, virtualization remains critical for app maintenance, patches or changing infrastructure. You can now virtualize the real-world conditions your APM tools capture and incorporate them into your test lab. This creates a feedback loop that supports any DevOps initiative.
Even Better than the Real Thing
Virtualization saves time and budget, keeps failing apps from reaching deployment and is more accurate and repeatable than in-the-wild testing. Application issues can be revealed early in their lifecycle and fixed before they affect end users. Once deployed, APM can provide more accurate data for more precise virtualized models. It is the best way to make your apps ready for the real world.
Dave Berg is VP of Product Strategy for Shunra Software.
Industry News
Development work on the Linux kernel — the core software that underpins the open source Linux operating system — has a new infrastructure partner in Akamai. The company's cloud computing service and content delivery network (CDN) will support kernel.org, the main distribution system for Linux kernel source code and the primary coordination vehicle for its global developer network.
Komodor announced a new approach to full-cycle drift management for Kubernetes, with new capabilities to automate the detection, investigation, and remediation of configuration drift—the gradual divergence of Kubernetes clusters from their intended state—helping organizations enforce consistency across large-scale, multi-cluster environments.
Red Hat announced the latest updates to Red Hat AI, its portfolio of products and services designed to help accelerate the development and deployment of AI solutions across the hybrid cloud.
CloudCasa by Catalogic announced the availability of the latest version of its CloudCasa software.
BrowserStack announced the launch of Private Devices, expanding its enterprise portfolio to address the specialized testing needs of organizations with stringent security requirements.
Chainguard announced Chainguard Libraries, a catalog of guarded language libraries for Java built securely from source on SLSA L2 infrastructure.
Cloudelligent attained Amazon Web Services (AWS) DevOps Competency status.
Platform9 formally launched the Platform9 Partner Program.
Cosmonic announced the launch of Cosmonic Control, a control plane for managing distributed applications across any cloud, any Kubernetes, any edge, or on premise and self-hosted deployment.
Oracle announced the general availability of Oracle Exadata Database Service on Exascale Infrastructure on Oracle Database@Azure(link sends e-mail).
Perforce Software announced its acquisition of Snowtrack.
Mirantis and Gcore announced an agreement to facilitate the deployment of artificial intelligence (AI) workloads.
Amplitude announced the rollout of Session Replay Everywhere.
Oracle announced the availability of Java 24, the latest version of the programming language and development platform. Java 24 (Oracle JDK 24) delivers thousands of improvements to help developers maximize productivity and drive innovation. In addition, enhancements to the platform's performance, stability, and security help organizations accelerate their business growth ...