TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Twelve-factor app development on Google Cloud

228 pointsby 9nGQluzmnq3Mover 5 years ago

9 comments

adamwigginsover 5 years ago
I&#x27;m the author of 12factor (although really it is an aggregation of the work and insights from many people at Heroku). It continues to surprise and please me that this piece continues to be relevant eight years later—a virtual eternity in software&#x2F;internet time.<p>Fun fact: I debated whether to call it &quot;the Heroku way&quot; or somesuch. Glad I went with a standalone name, feel like that allowed it to take on a life beyond that product. For example I doubt Google would have wanted a page about &quot;Heroku Way app development on GCP&quot; in their documentation. :-)
评论 #21538462 未加载
评论 #21417106 未加载
评论 #21417880 未加载
danenaniaover 5 years ago
12 factor seems to have stood the test of time really well—I was introduced via Heroku (who I think invented it?) quite a long time ago in tech years, and yet it still seems to be probably the most popular ‘framework’ for devops.<p>In fact, my startup EnvKey[1] was heavily inspired by the 12 factor approach. While it has always worked well for me, one bit that always felt thorny was using the environment for configuration and secrets. It’s obviously great to get this stuff out of code, but then you face new issues on how to keep it all in sync across many environments and pass potentially highly sensitive data around securely.<p>EnvKey fills in this gap using end-to-end encryption and a seamless integration that builds on top of environment variables—it’s a drop-in replacement if you already use the environment for config. Check it out if you’re looking for something to smooth out this aspect of 12 factor! We have lots of folks using it with GCP&#x2F;GKE.<p>1 - <a href="https:&#x2F;&#x2F;www.envkey.com" rel="nofollow">https:&#x2F;&#x2F;www.envkey.com</a>
评论 #21416373 未加载
评论 #21416378 未加载
评论 #21416688 未加载
评论 #21416189 未加载
kccqzyover 5 years ago
&gt; In non-cloud environments, web apps are often written to run in app containers such as GlassFish, Apache Tomcat, and Apache HTTP Server. In contrast, twelve-factor apps don&#x27;t rely on external app containers.<p>This comment stood out to me. Why does this have anything to do with cloud vs non-cloud?<p>Furthermore I think there are merits to both of the approaches. But the article phrased it as if one is clearly more superior than the other.<p>I think we should also not forget that for the longest time, even before there was Google Cloud, there was App Engine that adopted the former approach: you simply write your handlers in Python, and the server provided by Google runs your handlers. Nowadays in the new Python App Engine runtime they added gunicorn by default so it&#x27;s less clear.
评论 #21417453 未加载
评论 #21416374 未加载
Dowwieover 5 years ago
Backing Services section is over promising. Changing databases isn&#x27;t a simple configuration change. Every database doesn&#x27;t speak the same SQL. It doesn&#x27;t have the same optimizations nor configuration. Also, your organization probably won&#x27;t be making that change-- ever. Even if you could swap, you very likely won&#x27;t.<p>This is similar to the claim that by using an ORM, you can easily change databases except that the ORM actually can achieve it because it abstracts away the differences. Yet, very rarely does this valuable feature get used.
评论 #21418450 未加载
评论 #21417609 未加载
bogleover 5 years ago
Also worth reading is &quot;Beyond the Twelve-Factor App&quot; (O’Reilly). It goes into the 12 factors and expands them to 15 for cloud-native apps. I believe I got a free e-book via Pivotal&#x27;s content library.
评论 #21420890 未加载
ethagnawlover 5 years ago
&gt; A better approach is to store configuration in environment variables.<p>It&#x27;s about damn time, Google! I&#x27;ve been working on a number of GCP projects this year and have consistently bumped up against the awkwardness that was Google&#x27;s (former?) preference for configuration files over environment variables.
评论 #21416125 未加载
评论 #21416257 未加载
dathinabover 5 years ago
Hmm, non of the 12 factors is really be specific to the cloud. I mean ok, the implementation of some of the thinks might slightly differ. E.g. you should still abstract over storage, but it&#x27;s not necessary a external service as this additional external dependency is just not no always necessary.<p>It&#x27;s kinda funny how cloud forces people to finally use patterns recommended since years.
SenHengover 5 years ago
I wonder if anyone else does this. I have a private, env-var only repo per project that I very simply import (git clone) while building. I&#x27;m sure there are some risks like possible leakage if a team member&#x27;s github account is compromised but it seems like a very nice, clean way of managing secrets. I even get the benefit of a version control.
评论 #21417678 未加载
rasikjainover 5 years ago
Its interesting to see this 12-factor popping up today. We used this 12-factor app development methodology at one of my client and they had good documentation about it. This was in 2015-2016 and I believe this is still relevant.