An Ephemeral Life: The Story of a Software Artifact

  • Agile development: {requirements, plan, design, developer, release}
  • Container: { created, running/paused, stopped, deleted}
  • Java Thread: {new, active, blocked/waiting/ timed waiting, terminated }
  • Java Servlet: { init(), service(), doGet()/doPost(), destroy() }
  • JUnit: { class setup, test setup, execution, test cleanup, class cleanup }

Graceful Exits

One of the most important aspects of life-cycle of ephemeral objects is that at the end of life, they need to return all borrowed resources and gracefully shutdown. The most talked-about borrowed resources are persistent database connections but it’s not limited to that.

Ephemeral Virtual Machines to Ephemeral Environments

The era of server farms was followed by the era of virtual machines. Virtual machines were the next step in improving server density. VMs were followed by containerization which brought virtualization at the application level. Truly speaking, it was not containers but Kubernetes pod which was the next level of abstraction.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Rishi Yadav

Rishi Yadav

This blog is mostly around my cloud-native & Environments-as-a-Service (EaaS) technology insights. I would throw some crypto wisdom here and there.