Welcome!

Microservices Expo Authors: Elizabeth White, Pat Romanski, Liz McMillan, Charles Araujo, Flint Brenton

Related Topics: @DevOpsSummit, Java IoT, Microservices Expo, @CloudExpo, @ThingsExpo

@DevOpsSummit: Article

APIs: A Costly Blind Spot | @CloudExpo #API #IoT #DigitalTransformation

The increased adoption of APIs brings with it some exciting opportunities

APIs: A Costly Blind Spot for Your Application
by Priyanka Tiwari

APIs have taken the world by storm in recent years.

The use of APIs has gone beyond just traditional "software" companies, to companies and organizations across industries using APIs to share information and power their applications.

According to SmartBear's State of API 2016 Report:

  • More than half of API providers began developing APIs within the last five years.
  • 1 in 5 API providers began developing APIs in the last two years alone.

The increased adoption of APIs brings with it some exciting opportunities.

For some organizations, APIs are the biggest revenue drivers. For example, Salesforce generates nearly 50% of annual revenue through APIs. In other cases, APIs can increase a business's footprint and initiate collaboration. Netflix, for example, reported over 5 billion calls per day to its API in 2014.

Increasingly, more organizations are adapting 3rd party or public APIs to accelerate R&D and leverage external programming talent. For example Visa, a leading player in highly regulated payment processing industry, recently released a set of APIs that includes 150 endpoints across all Visa products and welcome partners to their API ecosystem.

Another example of a thriving API ecosystem is Fitbit. Who reportedly saved over $1 million in R&D when it opened its APIs in 2011. Since then, hundreds of apps use FitBit APIs to collaborate and innovate.

What does this all mean for you?

All of these examples highlight the incredible opportunity that APIs present. But they also show the importance of API performance. Whether a business is using APIs to generate revenue, increase collaboration, or reduce costs - they need APIs to function properly at all times.

The importance of API performance isn't limited to organizations that provide APIs. For example, if your application depends on a third party API to complete a critical function for your users, you also need to be concerned about how that API is performing.

When an API breaks or malfunctions, your application feels the effects and so do your users.

  • One-third of API consumers will consider switching API providers permanently upon encountering an API quality issue.
  • 31% of consumers will report the problem externally to peers, customers, or partners.

When your application lags or crashes as the result of a problem with a third party app, your users will look to you for a solution and will associate a poor experience with your application, even if the issue is beyond your control.

Unfortunately, when SmartBear asked API consumers about the average time it takes providers to resolve an API quality issue, less than 10% said that issues are resolved within 24 hours. Nearly 1-in-4 said that quality issues remain unresolved for one week or more.

Bottom Line: Simply checking that your API is available is not enough.

If you look closely, APIs are not so different than your other online assets like websites, web applications, and mobile applications. They need to be up and running at all times, need to perform within a threshold defined by the consumer, and need to be functionally correct for all end users.

Gone are the days when performance could be measured in seconds. API performance is measured in milliseconds and simply 1/20th second of a delay could lead to unacceptable user experience and unsatisfied end user.

Functional correctness for APIs is as critical if not more as API availability. If the API doesn't return the right data at right places, it's as good as broken for your app.

What can you do?

First, spend the time to map out your expectations around uptime and response time.

Synthetic monitoring can be used to understand performance of third-party APIs before in pre-production environments. Proactively monitoring your APIs will help understanding infrastructure requirements of your APIs. This step will also help identify API's contribution to the availability and performance of your application.

Next, address the challenges that could keep you from resolving an API issue.

According to the State of API 2016 Report, the three biggest barriers to solving API issues are:

  • Determining the root cause of the issue (45%)
  • Isolating the API as being the cause of the issue (29%)
  • Engaging the correct person(s) to fix the problem (25%)

Addressing these challenges before an issue occurs will limit the amount of time it takes to resolve problems with your API.

Finally, you'll want to invest in the necessary tools to protect your application from API performance problems.

Proactively monitoring the APIs you consume will help you ensure availability, performance and functional correctness of your APIs and the applications that use them. Proactively monitoring the applications for all diverse user cases will help you find and fix issues before they impact your end users. Correlating API performance with the application performance will help you improve overall application performance and isolate faulty components in case of performance degradation.

When setting up your first API monitor, there are a few important steps you'll need to consider:

  • Re-use functional tests from development: Given that your functional API tests are set up to assert and provide relevant error messages, the corresponding API monitors will have the ability to give you much more detailed error information for root cause analysis than regular availability monitors.
  • Create tests that mimic your use cases: If you are mainly integrating with 3rd party APIs, need to make sure that you know about their failures before your users notice. Here it is essential that the monitors you create actually mimic how you use that API. Monitor the entire flow of your use cases; don't just monitor the first API request; monitor them all, in sequence - just like your application uses them.
  • Use a dedicated account: Many (most) APIs require you to specify some kind of credentials or access key in your requests; make sure you are using a dedicated account(s) for your monitoring, both for your own APIs and 3rd party ones.

With the right plan, you'll be able to cover your application's blind spot and ensure that your APIs and apps are exceeding user expectations.

More Stories By SmartBear Blog

As the leader in software quality tools for the connected world, SmartBear supports more than two million software professionals and over 25,000 organizations in 90 countries that use its products to build and deliver the world’s greatest applications. With today’s applications deploying on mobile, Web, desktop, Internet of Things (IoT) or even embedded computing platforms, the connected nature of these applications through public and private APIs presents a unique set of challenges for developers, testers and operations teams. SmartBear's software quality tools assist with code review, functional and load testing, API readiness as well as performance monitoring of these modern applications.

@MicroservicesExpo Stories
You often hear the two titles of "DevOps" and "Immutable Infrastructure" used independently. In his session at DevOps Summit, John Willis, Technical Evangelist for Docker, covered the union between the two topics and why this is important. He provided an overview of Immutable Infrastructure then showed how an Immutable Continuous Delivery pipeline can be applied as a best practice for "DevOps." He ended the session with some interesting case study examples.
Both SaaS vendors and SaaS buyers are going “all-in” to hyperscale IaaS platforms such as AWS, which is disrupting the SaaS value proposition. Why should the enterprise SaaS consumer pay for the SaaS service if their data is resident in adjacent AWS S3 buckets? If both SaaS sellers and buyers are using the same cloud tools, automation and pay-per-transaction model offered by IaaS platforms, then why not host the “shrink-wrapped” software in the customers’ cloud? Further, serverless computing, cl...
All organizations that did not originate this moment have a pre-existing culture as well as legacy technology and processes that can be more or less amenable to DevOps implementation. That organizational culture is influenced by the personalities and management styles of Executive Management, the wider culture in which the organization is situated, and the personalities of key team members at all levels of the organization. This culture and entrenched interests usually throw a wrench in the work...
"We view the cloud not as a specific technology but as a way of doing business and that way of doing business is transforming the way software, infrastructure and services are being delivered to business," explained Matthew Rosen, CEO and Director at Fusion, in this SYS-CON.tv interview at 18th Cloud Expo (http://www.CloudComputingExpo.com), held June 7-9 at the Javits Center in New York City, NY.
Without lifecycle traceability and visibility across the tool chain, stakeholders from Planning-to-Ops have limited insight and answers to who, what, when, why and how across the DevOps lifecycle. This impacts the ability to deliver high quality software at the needed velocity to drive positive business outcomes. In his general session at @DevOpsSummit at 19th Cloud Expo, Eric Robertson, General Manager at CollabNet, will discuss how customers are able to achieve a level of transparency that e...
We all know that end users experience the internet primarily with mobile devices. From an app development perspective, we know that successfully responding to the needs of mobile customers depends on rapid DevOps – failing fast, in short, until the right solution evolves in your customers' relationship to your business. Whether you’re decomposing an SOA monolith, or developing a new application cloud natively, it’s not a question of using microservices - not doing so will be a path to eventual ...
"DivvyCloud as a company set out to help customers automate solutions to the most common cloud problems," noted Jeremy Snyder, VP of Business Development at DivvyCloud, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
We all know that end users experience the Internet primarily with mobile devices. From an app development perspective, we know that successfully responding to the needs of mobile customers depends on rapid DevOps – failing fast, in short, until the right solution evolves in your customers' relationship to your business. Whether you’re decomposing an SOA monolith, or developing a new application cloud natively, it’s not a question of using microservices – not doing so will be a path to eventual b...
"This all sounds great. But it's just not realistic." This is what a group of five senior IT executives told me during a workshop I held not long ago. We were working through an exercise on the organizational characteristics necessary to successfully execute a digital transformation, and the group was doing their ‘readout.' The executives loved everything we discussed and agreed that if such an environment existed, it would make transformation much easier. They just didn't believe it was reali...
"Opsani helps the enterprise adopt containers, help them move their infrastructure into this modern world of DevOps, accelerate the delivery of new features into production, and really get them going on the container path," explained Ross Schibler, CEO of Opsani, and Peter Nickolov, CTO of Opsani, in this SYS-CON.tv interview at DevOps Summit at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Most companies are adopting or evaluating container technology - Docker in particular - to speed up application deployment, drive down cost, ease management and make application delivery more flexible overall. As with most new architectures, this dream takes a lot of work to become a reality. Even when you do get your application componentized enough and packaged properly, there are still challenges for DevOps teams to making the shift to continuous delivery and achieving that reduction in cost ...
Don’t go chasing waterfall … development, that is. According to a recent post by Madison Moore on Medium featuring insights from several software delivery industry leaders, waterfall is – while still popular – not the best way to win in the marketplace. With methodologies like Agile, DevOps and Continuous Delivery becoming ever more prominent over the past 15 years or so, waterfall is old news. Or, is it? Moore cites a recent study by Gartner: “According to Gartner’s IT Key Metrics Data report, ...
Your homes and cars can be automated and self-serviced. Why can't your storage? From simply asking questions to analyze and troubleshoot your infrastructure, to provisioning storage with snapshots, recovery and replication, your wildest sci-fi dream has come true. In his session at @DevOpsSummit at 20th Cloud Expo, Dan Florea, Director of Product Management at Tintri, provided a ChatOps demo where you can talk to your storage and manage it from anywhere, through Slack and similar services with...
Many organizations are now looking to DevOps maturity models to gauge their DevOps adoption and compare their maturity to their peers. However, as enterprise organizations rush to adopt DevOps, moving past experimentation to embrace it at scale, they are in danger of falling into the trap that they have fallen into time and time again. Unfortunately, we've seen this movie before, and we know how it ends: badly.
"I focus on what we are calling CAST Highlight, which is our SaaS application portfolio analysis tool. It is an extremely lightweight tool that can integrate with pretty much any build process right now," explained Andrew Siegmund, Application Migration Specialist for CAST, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Explosive growth in connected devices. Enormous amounts of data for collection and analysis. Critical use of data for split-second decision making and actionable information. All three are factors in making the Internet of Things a reality. Yet, any one factor would have an IT organization pondering its infrastructure strategy. How should your organization enhance its IT framework to enable an Internet of Things implementation? In his session at @ThingsExpo, James Kirkland, Red Hat's Chief Archi...
In his general session at 19th Cloud Expo, Manish Dixit, VP of Product and Engineering at Dice, discussed how Dice leverages data insights and tools to help both tech professionals and recruiters better understand how skills relate to each other and which skills are in high demand using interactive visualizations and salary indicator tools to maximize earning potential. Manish Dixit is VP of Product and Engineering at Dice. As the leader of the Product, Engineering and Data Sciences team at D...
Without a clear strategy for cost control and an architecture designed with cloud services in mind, costs and operational performance can quickly get out of control. To avoid multiple architectural redesigns requires extensive thought and planning. Boundary (now part of BMC) launched a new public-facing multi-tenant high resolution monitoring service on Amazon AWS two years ago, facing challenges and learning best practices in the early days of the new service.
We all know that end users experience the internet primarily with mobile devices. From an app development perspective, we know that successfully responding to the needs of mobile customers depends on rapid DevOps – failing fast, in short, until the right solution evolves in your customers' relationship to your business. Whether you’re decomposing an SOA monolith, or developing a new application cloud natively, it’s not a question of using microservices - not doing so will be a path to eventual ...
Docker is sweeping across startups and enterprises alike, changing the way we build and ship applications. It's the most prominent and widely known software container platform, and it's particularly useful for eliminating common challenges when collaborating on code (like the "it works on my machine" phenomenon that most devs know all too well). With Docker, you can run and manage apps side-by-side - in isolated containers - resulting in better compute density. It's something that many developer...