Click here to Skip to main content
13,901,221 members
Click here to Skip to main content
Add your own
alternative version

Tagged as

Stats

1.5K views
Posted 12 Dec 2017
Licenced CPOL

Why SSD is Critical to Dev/Test Environments

, 12 Dec 2017
Rate this:
Please Sign up or sign in to vote.
A cloud provider like Alibaba Cloud has deliberately made compute with SSD predictable and cost-effective, providing developers more of what they need to build great applications for production in the cloud.

Alibaba Cloud provides a comprehensive suite of global cloud computing services to help power and grow your business. Create an account today and get $300 in new user free credit.

In most development teams, the infrastructure provided to developers follows a “just enough” principle, where developer machines, local or cloud, have just enough resources needed to build and test applications at a bare minimum. Premium infrastructure like load balancers, SSD drives, and more CPU are reserved for production.

This is not optimal. Application development stands to benefit significantly by providing development environments with resources that are comparable to those available in production.

This includes SSD. Below, I explain how providing SSD to development can greatly improve dev/test environments.

Why SSD is a Luxury

The primary reason organizations decide to keep SSD resources to a minimum is price. For most cloud providers, SSD is priced multiple times more than standard disk resources.

As cloud providers expand their offerings, SSD will become more common, and the price will drop over time. But Alibaba Cloud decided to get ahead of current price concerns, and out of the gate, their SSD offering is priced substantially less—nearly half the price of other cloud providers—and it’s just $4.50/month for the smallest Linux instance. Developers can benefit from SSD in a big way, especially those building net new applications.

Why SSD Matters in Dev

There is more to cloud resource cost than just resources. There is also the cost of not leveraging them properly. Why do developers need that type of power? There are several key reasons:

  1. Parity: A major challenge for developers when it comes to knowing how applications will run in production is having enough parity with production that they can run the application in a development environment that closely resembles production. Without parity, deploying applications is a guessing game. You assume that the infrastructure’s impact on the application is small enough that there is no risk. But we have seen plenty of instances where this is not the case. This applies not only to SSD. By giving developers equivalent resources, their development environments become full-blown continuous integration (CI) environments. And they can know confidently how the application will perform when it’s pushed to production.
  2. Testing: Great performance means you can test faster and test more. In addition to faster and more frequent testing, performance testing can begin to shift left, giving you accurate benchmarks of performance closer to code creation.
  3. Optimization: More testing and parity means that with an accurate picture of how the application will run when the code is created, developers can better optimize both their development environment and production, and they can communicate more effectively with Ops on what resources are needed for the application. This is where soft ROI comes in. If developers can more confidently predict how many resources the application will need to run under load, then the Ops team does not need to overshoot resources, resulting in decreased costs—and there is a good chance that better estimates of required resources in development environments will actually result in cost savings.

It also means that developers can start to embrace more complex testing against real data. Often organizations will avoid testing against real data because access to the data or transfer rates are slow. As a result, a lot of testing has turned to application mocks, or not testing the backend at all. But with SSD, developers can do more testing with real data.

With high-performance applications, such as those developed in the science domains, access to SSD may be necessary. How quickly information is serialized to the disk can impact how the applications run and are architected.

Greedy Devs

The cost of SSD is a challenge that developers face when deciding whether SSD is something they need in their development environments. Plus, costs with many cloud providers are unpredictable. One developer’s monthly spend could be many multiples of another. This unpredictability makes organizations uneasy because the cost of development should be concrete, and production should follow ideal application usage.

Developers don’t just want more power, they want to be more efficient and effective. And they will often turn to local development environments over the cloud in order to get the power they need. But local environments don’t match production. A cloud provider like Alibaba Cloud has deliberately made compute with SSD predictable and cost-effective, providing developers more of what they need to build great applications for production in the cloud.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Chris_Riley
United States United States
ABOUT

Chris Riley is a technologist who has spent 12 years helping organizations transition from traditional development practices to a modern set of culture, processes and tooling. In addition to being a Gigaom Research analyst, he is an O’Reilly author, regular speaker, and subject matter expert in the areas of DevOps Strategy and culture and Enterprise Content Management. Chris believes the biggest challenges faced in the tech market is not tools, but rather people and planning.

Throughout Chris’s career he has crossed the roles of marketing, product management, and engineering to gain a unique perspective of how the deeply technical is used to solve real-world problems. By working with both early adopters and late, he has watched technologies mature from rough solutions to essential and transparent. In addition to spending his time understanding the market he helps ISVs selling B2D and practitioner of DevOps Strategy. He is interested in machine-learning, and the intersection of BigData and Information Management.

EXPERTISE

application lifecycle management (alm) devops enterprise content management (ecm) information architecture (ia) information governance

You may also be interested in...

Pro
Pro

Comments and Discussions

 
-- There are no messages in this forum --
Permalink | Advertise | Privacy | Cookies | Terms of Use | Mobile
Web04 | 2.8.190306.1 | Last Updated 12 Dec 2017
Article Copyright 2017 by Chris_Riley
Everything else Copyright © CodeProject, 1999-2019
Layout: fixed | fluid