{"id":46779,"date":"2014-06-20T19:22:12","date_gmt":"2014-06-20T16:22:12","guid":{"rendered":"https:\/\/www.altoros.com\/blog\/?p=46779"},"modified":"2019-09-18T17:48:00","modified_gmt":"2019-09-18T14:48:00","slug":"cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime","status":"publish","type":"post","link":"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/","title":{"rendered":"Cloud Foundry Summit Sessions: How Diego Reenvisions the Elastic Runtime"},"content":{"rendered":"<p><center><small>Recap of the CF Summit 2014: <a href=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-2014-day-one\/\">Day 1<\/a> | <a href=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-2014-day-two\/\">Day 2<\/a> |\u00a0<a href=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-2014-day-three\/\">Day 3<\/a><\/small><\/center><\/p>\n<p>&nbsp;<\/p>\n<div id=\"attachment_46794\" style=\"width: 160px\" class=\"wp-caption alignright\"><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/onsi-fakhouri-pivotal-cloud-foundry-summit-2014.jpg\"><img decoding=\"async\" aria-describedby=\"caption-attachment-46794\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/onsi-fakhouri-pivotal-cloud-foundry-summit-2014.jpg\" alt=\"\" width=\"150\" class=\"size-full wp-image-46794\" \/><\/a><p id=\"caption-attachment-46794\" class=\"wp-caption-text\"><small>Onsi Fakhouri<\/small><\/p><\/div>\n<p>At this year\u2019s CF Summit, <a href=\"https:\/\/tanzu.vmware.com\/team\/fakhouri\" rel=\"noopener noreferrer\" target=\"_blank\">Onsi Fakhouri<\/a> of Pivotal delivered an amazing session on <a href=\"https:\/\/docs.cloudfoundry.org\/concepts\/diego\/diego-architecture.html\" rel=\"noopener noreferrer\" target=\"_blank\">Diego<\/a> highlighting why it is important for Cloud Foundry developers and how it will evolve in the future.<\/p>\n<p>Diego, a large-scale project, which Pivotal is currently working on, will introduce a number of significant changes to the Cloud Foundry architecture. This blog post shares why we should care about Diego, what impact it will have on Cloud Foundry and PaaS, and the reasons for reenvisioning the runtime.<\/p>\n<p>&nbsp;<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_79_2 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#Why_was_the_Elastic_Runtime_rewritten\" >Why was the Elastic Runtime rewritten?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#How_is_Diego_different\" >How is Diego different?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#What_does_it_mean_to_developers\" >What does it mean to developers?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#Current_situation_and_a_roadmap_for_Diego\" >Current situation and a roadmap for Diego<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#Further_reading\" >Further reading<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"Why_was_the_Elastic_Runtime_rewritten\"><\/span>Why was the Elastic Runtime rewritten?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Diego is an almost complete re-write of Cloud Foundry Elastic Runtime. This includes a large part of the system, the entire DEA Pool, together with <a href=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-containers-warden-docker-and-garden\/\">Warden<\/a>, the Health Manager, NATS, etc.<\/p>\n<p>The need to invest into this kind of endeavor came due to multiple drawbacks of the existing architecture:<\/p>\n<ul>\n<li>issues with orchestration<\/li>\n<li>poor separation of concerns<\/li>\n<li>triangular dependencies<\/li>\n<li>tightly coupled components<\/li>\n<li>limitations of Ruby<\/li>\n<li>domain specificity<\/li>\n<li>platform specificity<\/li>\n<\/ul>\n<p>As a result, it is hard for developers to add new features and maintain existing ones, hard to test, and hard to understand how the system works. Onsi Fakhouri illustrated these challenges with several real-life examples:<\/p>\n<ul>\n<li style=\"margin-bottom: 6px;\">Since the Cloud Controller is responsible for too many things, it may be inefficient when deciding how to distribute apps across DEAs. This causes orchestration issues.<\/li>\n<li style=\"margin-bottom: 6px;\">The Cloud Controller, Health Manager, and DEA Pool were designed to work together and are tightly coupled. Due to this, adding new features to the Cloud Controller may negatively affect the Health Manager and\/or the DEA Pool.<\/li>\n<li style=\"margin-bottom: 6px;\">Domain and platform specificity make it difficult for developers to extend the system.<\/li>\n<li>Finally, DEA and Warden (two long-lived, long-running processes) have lots of concurrency and low-level OS interactions. As a result, the Ruby code currently used by the system has been pushed to the limit.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"How_is_Diego_different\"><\/span>How is Diego different?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Diego aims to provide the right level of abstraction that will make it possible to overcome the above-mentioned challenges and make Cloud Foundry more robust.<\/p>\n<p>Unlike the current Elastic Runtime, Diego is written in Go. The project has both powerful concurrency and low-level OS support, while being strongly typed. Then, Diego provides explicit error handling and promotes developer discipline (the Go language requires better developer discipline than Ruby).<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/diego-abstraction-cloud-foundry-summit-2014.jpg\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/diego-abstraction-cloud-foundry-summit-2014.jpg\" alt=\"\" width=\"640\" class=\"aligncenter size-full wp-image-46799\" \/><\/a><\/center><\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"What_does_it_mean_to_developers\"><\/span>What does it mean to developers?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Diego embraces the complexity, necessary in a platform like Cloud Foundry, and tries to make it explicit, transparent, and understandable. Thanks to this, it is easier for developers to work with the system, add and test new features, maintain existing ones, etc. Onsi Fakhouri used some examples to illustrate this.<\/p>\n<p>As we have already said above, Diego is written in Go, a programming language developed in the cloud era. It eliminates many issues caused by Ruby.<\/p>\n<p><p>Diego still has the Cloud Controller, but the DEA Pool has been replaced with the Executor Pool, an eventually consistent, self-managing, monitoring, and healing system. As a result, Cloud Foundry becomes more robust, and the Health Manager is no longer necessary.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/diego-as-self-healing-system-cloud-foundry-summit-2014.jpg\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/diego-as-self-healing-system-cloud-foundry-summit-2014.jpg\" alt=\"\" width=\"640\" class=\"aligncenter size-full wp-image-46801\" \/><\/a><\/center><\/p>\n<p>Diego solves the domain specificity issue by replacing complex notions, such as running apps, with generic ones, such as one-off tasks (one-time jobs) and long-running processes (LRPs). As a result, adding new features becomes easy.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/new-features-of-diego-cloud-foundry-summmit-2014.jpg\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/new-features-of-diego-cloud-foundry-summmit-2014.jpg\" alt=\"\" width=\"640\" class=\"aligncenter size-full wp-image-46802\" \/><\/a><\/center><\/p>\n<p>Diego has been built from ground up to be platform-agnostic. Most of the components, including the Cloud Controller and the layers in the Executor Pool, except for the back-end layer, do not care about the platform. This means, when adding a new platform, developers only need to care about two things: the backend and the binary for that specific platform.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/diego-as-platform-agnostic-solution-cloud-foundry-summit-2014.jpg\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/diego-as-platform-agnostic-solution-cloud-foundry-summit-2014.jpg\" alt=\"\" width=\"640\" class=\"aligncenter size-full wp-image-46803\" \/><\/a><\/center><\/p>\n<p>Removing part of responsibilities from the Cloud Controller has solved the orchestration issues. The Cloud Controller does not have to think about how and where the apps will run any more. Instead, the Executor distributes long-running processes using the auction method.<\/p>\n<p>In total, there are 14 different components, each responsible for a single separate job. It creates a lot of complexity, which is inherent to large-scale systems, such as Cloud Foundry. This is why Pivotal uses the simulation-driven approach when working on Diego. During the session, Onsi Fakhouri demonstrated how it evenly distributes 1,000 apps across dozens of executors, using a piece of the same code that runs in production.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/simulation-driven-development-cloud-foundry-summit-2014.jpg\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/simulation-driven-development-cloud-foundry-summit-2014.jpg\" alt=\"\" width=\"640\" class=\"aligncenter size-full wp-image-46804\" \/><\/a><\/center><\/p>\n<p>Unit testing is done on all components to ensure that each of them operates as expected. In addition, a special library provides shared narrative and integration tests to make sure everything works as it should.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/diego-components-cloud-foundry-summit-2014.jpg\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/diego-components-cloud-foundry-summit-2014.jpg\" alt=\"\" width=\"640\" class=\"aligncenter size-full wp-image-46805\" \/><\/a><\/center><\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Current_situation_and_a_roadmap_for_Diego\"><\/span>Current situation and a roadmap for Diego<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>By now, the team has completed work on the staging components. The part responsible for running apps is half-done. There is already support for Linux and buildpacks.<\/p>\n<p>The list of the features that will be included into the project is a long one. According to Onsi Fakhouri, soon Diego will provide placement pools, process types, persistent disk, shell access, autorebalancing, zero-downtime deploys, support for Doecker files, .NET support, and custom health checks.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/the-features-to-be-introduced-to-deigo-cloud-foundry-summit-2014.jpg\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/the-features-to-be-introduced-to-deigo-cloud-foundry-summit-2014.jpg\" alt=\"\" width=\"640\" class=\"aligncenter size-full wp-image-46807\" \/><\/a><\/center><\/p>\n<p>To sum it up, we may describe the Diego project as Elastic Runtime 2.0. The things that make it different from the one employed in Cloud Foundry today are as follows:<\/p>\n<ul>\n<li>It uses the notions of tasks and LRPs to provide flexible abstraction.<\/li>\n<li>It is platform-agnostic and, therefore, extensible.<\/li>\n<li>It is self-managing, -monitoring, and -healing, making Cloud Foundry more robust.<\/li>\n<li>It embraces complexity.<\/li>\n<\/ul>\n<p>Let&#8217;s see how Diego will evolve to bring even more positive impact to the PaaS.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Further_reading\"><\/span>Further reading<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/how-to-push-private-docker-images-and-enable-caching-on-cloud-foundry-diego\/\">How to Push Private Docker Images and Enable Caching on Cloud Foundry Diego<\/a><\/li>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/net-on-pivotal-cf-scaling-an-app-on-diego\/\">.NET on Pivotal Cloud Foundry: Scaling an App on Diego<\/a><\/li>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-advisory-board-meeting-july-2016-time-to-migrate-to-diego\/\">Cloud Foundry Advisory Board Meeting, July 2016: Time to Migrate to Diego<\/a><\/li>\n<\/ul>\n<hr \/>\n<p><center><small>This post was written by <b>Vitaly Sedelnik<\/b> and edited by <a href=\"https:\/\/www.altoros.com\/blog\/author\/alex\/\">Alex Khizhniak<\/a>.<\/small><\/center><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Recap of the CF Summit 2014: Day 1 | Day 2 |\u00a0Day 3<\/p>\n<p>&nbsp;<\/p>\n<p id=\"caption-attachment-46794\" class=\"wp-caption-text\">Onsi Fakhouri<\/p>\n<p>At this year\u2019s CF Summit, Onsi Fakhouri of Pivotal delivered an amazing session on Diego highlighting why it is important for Cloud Foundry developers and how it will evolve in the future.<\/p>\n<p>Diego, a large-scale project, [&#8230;]<\/p>\n","protected":false},"author":5,"featured_media":46813,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[7],"tags":[208,206],"class_list":["post-46779","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news-and-opinion","tag-cf-summit","tag-oss-cloud-foundry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Cloud Foundry Summit Sessions: How Diego Reenvisions the Elastic Runtime | Altoros<\/title>\n<meta name=\"description\" content=\"Learn how Diego is different to the Elastic Runtime, the reasons for reenvisioning, what it means to developers, and a future roadmap.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cloud Foundry Summit Sessions: How Diego Reenvisions the Elastic Runtime | Altoros\" \/>\n<meta property=\"og:description\" content=\"Recap of the CF Summit 2014: Day 1 | Day 2 |\u00a0Day 3 &nbsp; Onsi Fakhouri At this year\u2019s CF Summit, Onsi Fakhouri of Pivotal delivered an amazing session on Diego highlighting why it is important for Cloud Foundry developers and how it will evolve in the future. Diego, a large-scale project, [...]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/\" \/>\n<meta property=\"og:site_name\" content=\"Altoros\" \/>\n<meta property=\"article:published_time\" content=\"2014-06-20T16:22:12+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-09-18T14:48:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/cloud-foundry-sessions-diego-reenvisioning-elastic-runtime.gif\" \/>\n\t<meta property=\"og:image:width\" content=\"640\" \/>\n\t<meta property=\"og:image:height\" content=\"427\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/gif\" \/>\n<meta name=\"author\" content=\"Alex Khizhniak\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Alex Khizhniak\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/\",\"name\":\"Cloud Foundry Summit Sessions: How Diego Reenvisions the Elastic Runtime | Altoros\",\"isPartOf\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/cloud-foundry-sessions-diego-reenvisioning-elastic-runtime.gif\",\"datePublished\":\"2014-06-20T16:22:12+00:00\",\"dateModified\":\"2019-09-18T14:48:00+00:00\",\"author\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/3d914db6ad1b2908c32c0dc5dcabc420\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#primaryimage\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/cloud-foundry-sessions-diego-reenvisioning-elastic-runtime.gif\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/cloud-foundry-sessions-diego-reenvisioning-elastic-runtime.gif\",\"width\":640,\"height\":427},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.altoros.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cloud Foundry Summit Sessions: How Diego Reenvisions the Elastic Runtime\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\",\"url\":\"https:\/\/www.altoros.com\/blog\/\",\"name\":\"Altoros\",\"description\":\"Insight\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.altoros.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/3d914db6ad1b2908c32c0dc5dcabc420\",\"name\":\"Alex Khizhniak\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/06\/druzya-edit1-150x150.jpg\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/06\/druzya-edit1-150x150.jpg\",\"caption\":\"Alex Khizhniak\"},\"description\":\"Alex Khizhniak is Director of Technical Content Strategy at Altoros and a cofounder of a local Java User Group. Managing distributed teams since 2004, he has gained experience as a journalist, an editor-in-chief, a technical writer, a technology evangelist, a project manager, and a product owner. Alex is obsessed with AI\/ML, data science, data integration, ETL\/DWH, data quality, databases (SQL\/NoSQL), big data, IoT, and BI. The articles and industry reports he created or helped to publish reached out to 3,000,000+ tech-savvy readers. Some of the pieces were covered on TechRepublic, ebizQ, NetworkWorld, CIO.com, etc. Find him on Twitter at @alxkh.\",\"sameAs\":[\"https:\/\/x.com\/https:\/\/twitter.com\/alxkh\"],\"url\":\"https:\/\/www.altoros.com\/blog\/author\/alex\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Cloud Foundry Summit Sessions: How Diego Reenvisions the Elastic Runtime | Altoros","description":"Learn how Diego is different to the Elastic Runtime, the reasons for reenvisioning, what it means to developers, and a future roadmap.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/","og_locale":"en_US","og_type":"article","og_title":"Cloud Foundry Summit Sessions: How Diego Reenvisions the Elastic Runtime | Altoros","og_description":"Recap of the CF Summit 2014: Day 1 | Day 2 |\u00a0Day 3 &nbsp; Onsi Fakhouri At this year\u2019s CF Summit, Onsi Fakhouri of Pivotal delivered an amazing session on Diego highlighting why it is important for Cloud Foundry developers and how it will evolve in the future. Diego, a large-scale project, [...]","og_url":"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/","og_site_name":"Altoros","article_published_time":"2014-06-20T16:22:12+00:00","article_modified_time":"2019-09-18T14:48:00+00:00","og_image":[{"width":640,"height":427,"url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/cloud-foundry-sessions-diego-reenvisioning-elastic-runtime.gif","type":"image\/gif"}],"author":"Alex Khizhniak","twitter_misc":{"Written by":"Alex Khizhniak","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/","url":"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/","name":"Cloud Foundry Summit Sessions: How Diego Reenvisions the Elastic Runtime | Altoros","isPartOf":{"@id":"https:\/\/www.altoros.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#primaryimage"},"image":{"@id":"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#primaryimage"},"thumbnailUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/cloud-foundry-sessions-diego-reenvisioning-elastic-runtime.gif","datePublished":"2014-06-20T16:22:12+00:00","dateModified":"2019-09-18T14:48:00+00:00","author":{"@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/3d914db6ad1b2908c32c0dc5dcabc420"},"breadcrumb":{"@id":"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#primaryimage","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/cloud-foundry-sessions-diego-reenvisioning-elastic-runtime.gif","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2014\/06\/cloud-foundry-sessions-diego-reenvisioning-elastic-runtime.gif","width":640,"height":427},{"@type":"BreadcrumbList","@id":"https:\/\/www.altoros.com\/blog\/cloud-foundry-summit-sessions-diego-re-envisioning-the-elastic-runtime\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.altoros.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Cloud Foundry Summit Sessions: How Diego Reenvisions the Elastic Runtime"}]},{"@type":"WebSite","@id":"https:\/\/www.altoros.com\/blog\/#website","url":"https:\/\/www.altoros.com\/blog\/","name":"Altoros","description":"Insight","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.altoros.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/3d914db6ad1b2908c32c0dc5dcabc420","name":"Alex Khizhniak","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/06\/druzya-edit1-150x150.jpg","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/06\/druzya-edit1-150x150.jpg","caption":"Alex Khizhniak"},"description":"Alex Khizhniak is Director of Technical Content Strategy at Altoros and a cofounder of a local Java User Group. Managing distributed teams since 2004, he has gained experience as a journalist, an editor-in-chief, a technical writer, a technology evangelist, a project manager, and a product owner. Alex is obsessed with AI\/ML, data science, data integration, ETL\/DWH, data quality, databases (SQL\/NoSQL), big data, IoT, and BI. The articles and industry reports he created or helped to publish reached out to 3,000,000+ tech-savvy readers. Some of the pieces were covered on TechRepublic, ebizQ, NetworkWorld, CIO.com, etc. Find him on Twitter at @alxkh.","sameAs":["https:\/\/x.com\/https:\/\/twitter.com\/alxkh"],"url":"https:\/\/www.altoros.com\/blog\/author\/alex\/"}]}},"_links":{"self":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/46779","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/comments?post=46779"}],"version-history":[{"count":16,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/46779\/revisions"}],"predecessor-version":[{"id":46814,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/46779\/revisions\/46814"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media\/46813"}],"wp:attachment":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media?parent=46779"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/categories?post=46779"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/tags?post=46779"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}