IT Questions and Answers :)

Friday, August 16, 2019

What kind of service provider gets the same benefits from a composable system that a user does?

What kind of service provider gets the same benefits from a composable system that a user does?

  • CaaS
  • Cloud-based storage
  • PaaS
  • AaaS 

What kind of service provider gets the same benefits from a composable system that a user does?


#1 Innovate Faster

First and foremost, using a PaaS to deploy and run your application enhances your agility.
The Web is accelerating the pace of innovation. To compete, you need to quickly transform new ideas into real applications and evolve those applications with agility in order to meet fast-changing business and technical requirements. Market opportunities exist very briefly. Your business needs to build, deploy, and iterate in days or weeks, not months or years.
Setting up platform-level software to run your application is time-consuming and complex. By simplifying, automating, and in many cases eliminating the steps associated with setting up the foundation for your application, you can get your application deployed much more quickly in the first place, and you can iterate, adapt, and extend it more rapidly over time.
It takes us 50% less time to deploy on Engine Yard Cloud because it’s so easy to configure servers. We can deploy with just a few clicks and add another instance with just one more click—and on top of it all, everything is pre-configured by Rails experts at Engine Yard who could write the book on best practices for rapid deployment.

Do-it-Yourself on EC2 Use Engine Yard PaaS Use Engine Yard PaaS
  1. Build app
  2. Set up EC2 account
  3. For each desired instance:
    1. a. Install/configure OS
    2. b. Install desired language version, runtime
    3. c. Install frameworks and other libraries/gems
    4. d. Install/configure application server
    5. e. Install/configure HTTP server
    6. f. Install/configure load balancer
    7. g. Install/configure other components (DB, cache)
    8. h. Debug integration of stack
    9. i. Install/configure application on stack
  4. Get instances working together
  1. Build app
  2. Set up Engine Yard account
  3. Click several configuration choices
  4. Click “Boot”
  1. Repeat items a-i above, per instance
  2. Get instances working together
  1. Use Update Instances wizard
  1. Do a-i above for new instances
  2. Reconfigure application servers, load balancers, DB, etc.
  3. Ensure consistent stacks
  4. Get instances working together
  1. Use Add Instances wizard


#2 Focus Resources

Eliminating much of the overhead to deploy and manage applications doesn’t just mean you can do certain things faster. It means you don’t have to do certain things at all. Which means that you don’t even need to know how to do them. Which allows you to be even better at knowing how to do the things that differentiate your business, like building applications with innovative features and exceptional user experiences.
Let’s say you’re an entrepreneur with a great idea and some seed funding, or you’re an enterprise line-of-business manager with some spare budget you’d like to put on a special project. Do you want to spend your precious funding on some generalist developers who can code moderately well and also do system administration, or would you rather get top-notch coders who don’t necessarily have deployment expertise? Would you rather spend a dedicated headcount on an ops person or have an additional application developer?
By deploying on Engine Yard Cloud, we’ve saved at least 60% on engineering resources—this productivity boost translates directly to more features and faster time to market.
- Chris McNeilly, CTO, Motista


#3 Save Money

Focusing development resources and spending less headcount on unneeded expertise are both benefits that intuitively translate into reducing costs. But beyond these obvious things are even more ways that PaaS saves real money compared with doing it yourself on IaaS.
With PaaS you are tapping into a real economy of scale. Imagine the number of hours it would take to set up the core stack—the platform-level components—for your applications. Imagine the hours consumed on an ongoing basis to maintain the stack. Imagine the cost of those hours, and consider the incremental value from this work to your application. Now consider those same costs amortized across thousands of applications. There is very little differentiating value from doing this low-level work yourself, so clearly, buying platform from a provider is more efficient than building it yourself.
We estimate that our costs are 3-5x lower than if we had to pay the direct and indirect costs of owning and managing our own infrastructure and deploying our large array of applications.
- Eric Peng, CEO, PlayMesh
There are also less obvious hidden costs, such as the cost of downtime when one of your administrators makes a mistake configuring your application server and no one can access your Web application for hours. According to a study by Uptime Institute, 70 percent of data center downtime is caused by human error. Consider both the hard costs of downtime, such as lost business and unexpected support costs, and the soft costs, such as idled employees and a tarnished reputation.


#4 Get the Best Technology

The benefit of economies of scale doesn’t simply stop at getting the same thing for less money. What you actually end up with is something better, for less money. The stack and platform-level technology you would build yourself will almost never be as good as what a top PaaS will provide. Few companies have both the ability to pay and the attractiveness to hire the world’s best platform builders. The top platform builders are in companies whose main business is platform. People who are world-class in a given discipline for the most part want to work somewhere where that discipline is core to the business, not in an ancillary or supporting role.
A PaaS typically employs specialists who constantly tune, optimize, load-balance, reconfigure, and so on. The result of faster page loads is often a reduction in bounce rates, because customers are more satisfied with the service level they experience. And since search engines use bounce rates and page load times to prioritize paid search rankings, faster application performance can substantially improve your application visibility and business performance.
We’ve mentioned the stack itself several times, and getting the best stack means getting a stack with the latest versions of all components, configured optimally to work with each other and as the foundation for applications such as yours. In addition to the stack itself, there is the deployment mechanism, the platform software that instantiates virtual servers on the infrastructure and installs instances of the stack on them. Many aspects differentiate a good deployment mechanism from a bad one: what configuration parameters are exposed, what component options exist, how stack versions are managed, what activities are automated, what components are pre-built into binaries versus compiled at deployment time, and so on.
With Engine Yard, we can deploy our application in five minutes, and we know we’re running on the best technology stack. If we were managing our own servers, we’d have to take resources away from development to invest in a dedicated IT/infrastructure engineer. Instead, we’re able to focus on building new features.
- Damon Danieli, Founder and CTO, Z2Live
Above all of this, there is the user interface, which may include GUI and CLI variants. Getting the user interface and user experience right is make-or-break for platform interaction. The best platform user interfaces will be simple yet flexible—the things you don’t care to customize shouldn’t get in the way, and the things you do want to customize should be easy to do so. The interface needs to be both learnable and usable—i.e. quick to get started with but also powerful enough to support the expert user.

#5 Stay Up to Date

A particular challenge of deploying your application on a self-built stack is the sheer number of components that need to be tracked, maintained, updated, and re-integrated over time. It’s one thing to get it all set up and humming along in the first place, but the first time you need to swap in an update to the app server or the load balancer or the cache you may find yourself in a nightmare of reconfiguration. One bad experience like this leads many do-ityourselfers to remain indefinitely on an increasingly outdated stack for fear of rocking the boat. The downside of course is that you end up missing out on the latest security updates, performance improvements, and new features— and what may have started as competitive advantage becomes a weighty impediment to keeping up with your competitors.
With PaaS, you not only get the best possible stack as of the moment you deploy, you also get a stack that keeps up with you over time, ensuring that your application is always running on the latest and greatest. You don’t fall behind your competitors, and you also don’t waste time and incur risk by doing it yourself. The PaaS experts constantly incorporate and test component updates and bring them into the platform. At Engine Yard, updates are rolled out in a way that minimizes risk of incompatibility and gives you complete control over how updates are brought into your production applications.
Engine Yard Cloud is a scalable, reliable platform that’s been developed and fine-tuned by cloud experts. We have an easy and repeatable deployment process that is 200% better than managing our own datacenter.
- John Schult, Director of Product Engineering, Vitrue


#6 Maximize Uptime

PaaS offerings can help you achieve your availability goals and give you innovative new disaster recovery/ business continuity options. PaaS vendors have the tools, technologies, and experience to help you avoid the unplanned outages that cause downtime. The best PaaS vendors embed technologies and techniques in their products to keep availability high enough that they can offer service-level agreements (SLAs) at or above 99.9% availability. Engine Yard, for example, employs application templates and configuration recipes that minimize human error, ensure up-to-date snapshots of content assets, and allow fast and easy rollbacks if something goes awry.
Beyond basic data backup and OS hardening, PaaS vendors can protect your data in other ways. With Engine Yard, for example, completed transactions can be recovered in the case of database failures, so you never lose data from a committed transaction. And because application configuration is all captured in application templates and recipes, it’s easy to reproduce your application in another availability zone if the primary zone has a disruption. Engine Yard automatically spreads your application across multiple availability zones, enhancing application resilience.


#7 Scale Easily

It’s one thing to get the best technology at the best cost for a given size of business. It’s another thing to achieve that at many different sizes—potentially spanning orders of magnitude—as your business grows. When building a platform yourself, you basically have three choices: you can optimize for the scale you’re at now, you can optimize for a scale you expect to be at a later date, or you can invest a lot in building your own scaling mechanism. In the first case you risk having to redo your platform and incur downtime when you outgrow your initial set-up. In the second case you will likely waste resources due to overprovisioning. And in the third case, you will like spend a lot of opportunity cost building something that ends up not nearly as good as what you can get from a PaaS.
With a PaaS, on the other hand, you get the benefit of a great scaling mechanism developed by experts over time and in response to the needs of many customers. On top of that, the PaaS scaling mechanism leverages the underlying infrastructure’s elasticity but presents it in an easy-to-use way, abstracting the complexity of the mechanism’s details. For example, to add instances in the Engine Yard Cloud you simply click the ‘Add’ button, and a wizard walks you through a couple of checkboxes.
We were the victims of our own success—we had so many people using our applications we couldn’t keep up with the need to expand. On top of that, we’re a game studio, not an infrastructure company, so we were inexperienced when it came to configuring servers to scale based on changing traffic patterns. This is where Engine Yard really shines because scaling Rails applications is one of their specialties.
- Eric Peng, CEo, PlayMesh


#8 Strengthen Security

Security showcases another distinct advantage of the PaaS model. With the sheer volume and the diversity of security threats on an upward spiral, protecting against attacks is best left to specialists. A PaaS offering provides continual security updates for individual stack components as they are issued. At Engine Yard the stack engineering team maintains fully updated Rails and PHP technologies, so security vulnerabilities in core language or framework components are quickly remedied and customers are automatically notified following the patch.


#9 Do Your Project Right

An interesting behavior happens in real-world enterprises when departments or lines of business can’t get corporate approval or fast enough turnaround to build and deploy a new Web application; they tend to do it anyway. Through the back door. They go to a digital media agency; they re-channel some discretionary budget and hire consultants; they get it done using the “easier to get forgiveness than permission” principle.
These unofficial or back-door efforts usually result in a mess, sooner or later. At the very least, they add to the complexity and inefficiency of the environment, because they introduce new and unapproved tools, processes, and/or infrastructure. In other cases they create an even bigger mess: what if the new Web service really takes off, and suddenly the LOB manager needs to procure budget to scale up? What if the new Web service unexpectedly disrupts, corrupts, or causes downtime in legacy applications? It might not be as easy to get “forgiveness” as presumed.
PaaS dramatically cuts the risk, cost, and complexity of new projects. It brings predictability to both the cost and the ramifications of introducing new Web applications and services. To the extent needed, a PaaS offering can complement and add value to existing development and IT operations. Simply put, it doesn’t need to come in through the back door.


#10 Get the Best Support

As outlined above, when you build and run on a PaaS, you use technology that has been developed and refined in response to the needs of thousands of customers. But it’s not just the technology that embodies that aggregated expertise. It’s the people themselves. When you call Engine Yard Support, you speak to someone who has dealt with hundreds of problems in the same domain as yours. You speak to someone who has access to—may even be sitting next to—some of the leading experts in the community, whether for core Ruby or PHP language stack components or complementary open source projects.


Post a Comment

Popular Posts