{"id":49971,"date":"2010-09-01T15:44:21","date_gmt":"2010-09-01T12:44:21","guid":{"rendered":"https:\/\/www.altoros.com\/blog\/?p=49971"},"modified":"2020-04-20T18:51:26","modified_gmt":"2020-04-20T15:51:26","slug":"cloud-platforms-google-app-engine","status":"publish","type":"post","link":"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/","title":{"rendered":"Cloud Platforms: Google App Engine"},"content":{"rendered":"<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-platforms-google-app-engine\/#Google_App_Engines_overview_and_pros\" >Google App Engine&#8217;s overview and pros<\/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-platforms-google-app-engine\/#Cons_and_recommended_use\" >Cons and recommended use<\/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-platforms-google-app-engine\/#Further_reading\" >Further reading<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"Google_App_Engines_overview_and_pros\"><\/span>Google App Engine&#8217;s overview and pros<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2010\/09\/google-app-engine-logo-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2010\/09\/google-app-engine-logo-1.png\" alt=\"\" width=\"161\" height=\"150\" style=\"margin: 30px 0px 0px 0px;\" class=\"alignright size-full wp-image-49985\" \/><\/a><br \/>\n<a href=\"https:\/\/en.wikipedia.org\/wiki\/Google_App_Engine\" rel=\"noopener noreferrer\" target=\"_blank\">Google App Engine<\/a> is a cloud computing platform for developing and hosting web applications in Google-managed data centers. It differs from similar solutions, such as Amazon Web Services, which serve as Infrastructure-as-a-Service, while App Engine is Platform-as-a-Service. It virtualizes applications across multiple servers and data centers. Main App Engine offerings include dynamic web serving, persistent storage with queries, automatic scaling, load balancing, APIs for authenticating users and sending e-mails using Google Accounts. The offerings also feature a local development environment for simulating App Engine on a user\u2019s computer and scheduled tasks for triggering events at specified times.<\/p>\n<p><strong>Pros<\/strong><\/p>\n<ul>\n<li style=\"margin-bottom: 6px;\">Google App Engine\u2019s setup, development, and deployment are fairly simple, since App Engine supports a narrow web app scenario and users do not have to instal an operating system, configure Apache, or optimize MySQL.<\/li>\n<li style=\"margin-bottom: 6px;\">The platform supports apps written in several programming languages. With App Engine&#8217;s Java runtime environment, one can build an app using standard Java technologies, including the JVM, Java servlets, and the Java programming language. Any other language can also be employed via a JVM-based interpreter or compiler, such as JavaScript or Ruby.<\/li>\n<li style=\"margin-bottom: 6px;\">App Engine also features a dedicated Python runtime environment, which includes a fast Python interpreter and the standard library. The Java and Python runtime environments are built to ensure that the application runs quickly, securely, and without interference from other apps on the system.<\/li>\n<li style=\"margin-bottom: 6px;\">If necessary, the technology handles deploying the code to a cluster, monitoring, failover, and launching application instances.<\/li>\n<li style=\"margin-bottom: 6px;\">Google App&#8217;s pricing model is another advantage: one needs a zero-cost package to get started with the solution. All applications can use up to 500 MB of storage, as well as enough CPU and bandwidth to support an efficient app serving around 5 million page views per month, absolutely free. When a user enables billing for an application, her\/his free limits are raised, and s\/he only pays for the resources used above the free levels.<\/li>\n<li style=\"margin-bottom: 6px;\">A platform provides a powerful distributed storage service that features a query engine and transactions. Just as the distributed web server grows with one\u2019s traffic, the distributed datastore grows with her\/his data. The App Engine datastore is not like a traditional relational database. Data objects, or &#8220;entities,&#8221; have a kind and a set of properties. Datastore entities are &#8220;schemaless.&#8221; The structure of data entities is provided by and enforced by one\u2019s application code. The Java JDO\/JPA interfaces and the Python datastore interface include features for applying and enforcing structure within one\u2019s app. The app can also access the datastore directly to apply as much or as little structure as it needs. The datastore is strongly consistent and uses optimistic concurrency control. An update of an entity occurs in a transaction that is retried a fixed number of times if other processes are trying to update the same entity simultaneously. One\u2019s application can execute multiple datastore operations in a single transaction, which either all succeed or all fail, ensuring the integrity of her\/his data.<\/li>\n<li>Applications run in a secure environment that provides limited access to the underlying operating system. The sandbox isolates the application in its own secure, reliable environment that is independent of the hardware, operating system, and physical location of the web server.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Cons_and_recommended_use\"><\/span>Cons and recommended use<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Below, we enlist certain difficulties you may encounter working with App Engine.<\/p>\n<ul>\n<li style=\"margin-bottom: 6px;\">The Google App Engine PaaS delivers a computing platform and solution stack as a service, often consuming cloud infrastructure and sustaining cloud applications. It facilitates deployment of applications without the cost and complexity of buying and managing the underlying hardware and software layers. App Engine provides more infrastructure to make it easy to write scalable applications, but can only run a limited range of applications designed for that infrastructure.<\/li>\n<li style=\"margin-bottom: 6px;\">Though high security is an advantage of Google App Engine, it also brings a set of limitations, including that an application can only access other computers on the Internet through the provided URL fetch and e-mail services. An application cannot write to the file system. An app can read files, but only files uploaded with the application code. The app must use the App Engine datastore, memcache, or other services for all data that persists between requests. Further, application code only runs in response to a web request, a queued task, or a scheduled task, and must return response data within 30 seconds in any case. A request handler cannot spawn a subprocess or execute code after the response has been sent.<\/li>\n<li>Google Datastore is implemented on top of Google BigTable and it is the only persistence mechanism eligible to be used.<\/li>\n<\/ul>\n<p>Google App Engine can be deployed as a solution for individual developers who need to test the scalability of their applications or who are involved in some basic projects.<\/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\/cloud-platforms-enstratus\/\">Cloud Platforms: enStratus<\/a><\/li>\n<li><a href=\"https:\/\/blog.altoros.com\/cloud-platforms-windows-azure%e2%80%94ideal-cloud-architecture-for-net-developers.html\">Cloud Platforms: Windows Azure\u2014Ideal Cloud Architecture for .NET Developers<\/a><\/li>\n<li><a href=\"https:\/\/blog.altoros.com\/cloud-platforms-amazon-ec2%e2%80%94extremely-scalable-cloud-computing-environment.html\">Cloud Platforms: Amazon EC2\u2014Extremely Scalable Cloud Computing Environment<\/a><br \/>\n<hr\/>\n<p><center><small>The post was written by Sergey Bushik and Katherine Vasilega.<\/small><\/center><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Google App Engine&#8217;s overview and pros<\/p>\n<p>\nGoogle App Engine is a cloud computing platform for developing and hosting web applications in Google-managed data centers. It differs from similar solutions, such as Amazon Web Services, which serve as Infrastructure-as-a-Service, while App Engine is Platform-as-a-Service. It virtualizes applications across multiple servers and data [&#8230;]<\/p>\n","protected":false},"author":91,"featured_media":49981,"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":[873],"class_list":["post-49971","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news-and-opinion","tag-cloud-native"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Cloud Platforms: Google App Engine | Altoros<\/title>\n<meta name=\"description\" content=\"This post explores App Engine\u2014a platform for web applications development and hosting in data centers managed by Google.\" \/>\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-platforms-google-app-engine\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cloud Platforms: Google App Engine | Altoros\" \/>\n<meta property=\"og:description\" content=\"Google App Engine&#8217;s overview and pros Google App Engine is a cloud computing platform for developing and hosting web applications in Google-managed data centers. It differs from similar solutions, such as Amazon Web Services, which serve as Infrastructure-as-a-Service, while App Engine is Platform-as-a-Service. It virtualizes applications across multiple servers and data [...]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/\" \/>\n<meta property=\"og:site_name\" content=\"Altoros\" \/>\n<meta property=\"article:published_time\" content=\"2010-09-01T12:44:21+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-04-20T15:51:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2010\/09\/Google-App-Engine-Logo.gif\" \/>\n\t<meta property=\"og:image:width\" content=\"640\" \/>\n\t<meta property=\"og:image:height\" content=\"360\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/gif\" \/>\n<meta name=\"author\" content=\"Sergey Bushik\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sergey Bushik\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 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-platforms-google-app-engine\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/\",\"name\":\"Cloud Platforms: Google App Engine | Altoros\",\"isPartOf\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2010\/09\/Google-App-Engine-Logo.gif\",\"datePublished\":\"2010-09-01T12:44:21+00:00\",\"dateModified\":\"2020-04-20T15:51:26+00:00\",\"author\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/b1588e029bffc9e82320cb62d5dda0f2\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/#primaryimage\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2010\/09\/Google-App-Engine-Logo.gif\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2010\/09\/Google-App-Engine-Logo.gif\",\"width\":640,\"height\":360},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.altoros.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cloud Platforms: Google App Engine\"}]},{\"@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\/b1588e029bffc9e82320cb62d5dda0f2\",\"name\":\"Sergey Bushik\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/9ec216a3fe68ed3ae4b784a92bb30921d74cb00f297901c553f9218c78f0c2d5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/9ec216a3fe68ed3ae4b784a92bb30921d74cb00f297901c553f9218c78f0c2d5?s=96&d=mm&r=g\",\"caption\":\"Sergey Bushik\"},\"description\":\"Sergey Bushik is an accomplished software engineer with 12+ years of experience in designing and building secure, scalable, and highly performant solutions. He has vast experience in creating multi-tier and multi-layered applications. In addition, Sergey can boast of a solid background in web development. He is a Sun Certified Enterprise Architect, a frequent speaker and participant of international conferences dedicated to big data, as well as an author of several NoSQL\\\\NewSQL benchmarks.\",\"url\":\"https:\/\/www.altoros.com\/blog\/author\/sergey-bushik\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Cloud Platforms: Google App Engine | Altoros","description":"This post explores App Engine\u2014a platform for web applications development and hosting in data centers managed by Google.","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-platforms-google-app-engine\/","og_locale":"en_US","og_type":"article","og_title":"Cloud Platforms: Google App Engine | Altoros","og_description":"Google App Engine&#8217;s overview and pros Google App Engine is a cloud computing platform for developing and hosting web applications in Google-managed data centers. It differs from similar solutions, such as Amazon Web Services, which serve as Infrastructure-as-a-Service, while App Engine is Platform-as-a-Service. It virtualizes applications across multiple servers and data [...]","og_url":"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/","og_site_name":"Altoros","article_published_time":"2010-09-01T12:44:21+00:00","article_modified_time":"2020-04-20T15:51:26+00:00","og_image":[{"width":640,"height":360,"url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2010\/09\/Google-App-Engine-Logo.gif","type":"image\/gif"}],"author":"Sergey Bushik","twitter_misc":{"Written by":"Sergey Bushik","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/","url":"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/","name":"Cloud Platforms: Google App Engine | Altoros","isPartOf":{"@id":"https:\/\/www.altoros.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/#primaryimage"},"image":{"@id":"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/#primaryimage"},"thumbnailUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2010\/09\/Google-App-Engine-Logo.gif","datePublished":"2010-09-01T12:44:21+00:00","dateModified":"2020-04-20T15:51:26+00:00","author":{"@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/b1588e029bffc9e82320cb62d5dda0f2"},"breadcrumb":{"@id":"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/#primaryimage","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2010\/09\/Google-App-Engine-Logo.gif","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2010\/09\/Google-App-Engine-Logo.gif","width":640,"height":360},{"@type":"BreadcrumbList","@id":"https:\/\/www.altoros.com\/blog\/cloud-platforms-google-app-engine\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.altoros.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Cloud Platforms: Google App Engine"}]},{"@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\/b1588e029bffc9e82320cb62d5dda0f2","name":"Sergey Bushik","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/9ec216a3fe68ed3ae4b784a92bb30921d74cb00f297901c553f9218c78f0c2d5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9ec216a3fe68ed3ae4b784a92bb30921d74cb00f297901c553f9218c78f0c2d5?s=96&d=mm&r=g","caption":"Sergey Bushik"},"description":"Sergey Bushik is an accomplished software engineer with 12+ years of experience in designing and building secure, scalable, and highly performant solutions. He has vast experience in creating multi-tier and multi-layered applications. In addition, Sergey can boast of a solid background in web development. He is a Sun Certified Enterprise Architect, a frequent speaker and participant of international conferences dedicated to big data, as well as an author of several NoSQL\\NewSQL benchmarks.","url":"https:\/\/www.altoros.com\/blog\/author\/sergey-bushik\/"}]}},"_links":{"self":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/49971","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\/91"}],"replies":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/comments?post=49971"}],"version-history":[{"count":28,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/49971\/revisions"}],"predecessor-version":[{"id":53930,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/49971\/revisions\/53930"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media\/49981"}],"wp:attachment":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media?parent=49971"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/categories?post=49971"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/tags?post=49971"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}