Skip to main content

Infrastructure As messy cfgs

发信人: dumbCoder (HumbleCoder 不懂就问-_-), 信区: Programming
标  题: Re: K8S , golang别犹豫
发信站: BBS 未名空间站 (Fri Mar  8 13:52:16 2019, 美东)

以下是我的个人观点:

面向配置文件配置 -- 没问题, 配置文件就是用来定义 high-level 的意愿的.

面向配置文件编程 -- 一般是这个系统或者工具设计有问题, 虽然这事儿在整个 
industry 经常发生...

一旦有大量的配置文件,需要编程来动态生成的时候... 最好应该设计成 API 编程, 
而不是捣鼓配置文件.
配置文件是个high-level & weak modeling tool, 编程语言(with function, API) 是
low-level & strong modeling tool.
所以一旦走上了面向配置文件编程的路线,设计的东西就会很 complex, fragile.
比如永远在更新,永远复杂的一逼的各种前端框架 -- 面向 HTML, CSS 配置文件编程.
还有传统 Java 里面那一坨坨的 XML cfgs, 也是这种毛病.

整个 industry 经常重复做错的一件事: 
发明一个  high-level 的, 但是描述能力很弱的抽象工具,
然后因为这个工具 high-level, 捣鼓几下能直接看到效果,
就使劲忽悠大家用, 如果这个工具背景强, 有钱做 market,
这个祸害就扩散开了, 过几年再看... 又会有类似的新祸害出来, 号称可以拯救旧祸害
导致的各种问题...
于是, 整个 industry 就像时尚界一样, 可以这几年流行这个, 那几年流行那个... 
真正 well design 的创新工具到底有多少?


【 在 guvest (我爱你老婆Anna) 的大作中提到: 】
: 写写emacs/vim, 解决这些问题?
: 图灵完备的一大动力是自动化生成配置文件。
: 本来配置文件不是图灵完备的。加上模版和eval就成了正经的coding.
: 如果不熟悉emacs/vim. 可以写写MS word VBA自动产生yaml. Excel也行。
:
: 你先捏着鼻子配置会儿k8s那一坨坨yaml再说

:
: 面向配置文件编程, 面向黑盒编程, 面向 stackoverflow 编程    @
_@
:
: Infrastructure As messy cfgs  

:

Comments

Popular posts from this blog

CKA Simulator Kubernetes 1.22

  https://killer.sh Pre Setup Once you've gained access to your terminal it might be wise to spend ~1 minute to setup your environment. You could set these: alias k = kubectl                         # will already be pre-configured export do = "--dry-run=client -o yaml"     # k get pod x $do export now = "--force --grace-period 0"   # k delete pod x $now Vim To make vim use 2 spaces for a tab edit ~/.vimrc to contain: set tabstop=2 set expandtab set shiftwidth=2 More setup suggestions are in the tips section .     Question 1 | Contexts Task weight: 1%   You have access to multiple clusters from your main terminal through kubectl contexts. Write all those context names into /opt/course/1/contexts . Next write a command to display the current context into /opt/course/1/context_default_kubectl.sh , the command should use kubectl . Finally write a second command doing the same thing into ...

OWASP Top 10 Threats and Mitigations Exam - Single Select

Last updated 4 Aug 11 Course Title: OWASP Top 10 Threats and Mitigation Exam Questions - Single Select 1) Which of the following consequences is most likely to occur due to an injection attack? Spoofing Cross-site request forgery Denial of service   Correct Insecure direct object references 2) Your application is created using a language that does not support a clear distinction between code and data. Which vulnerability is most likely to occur in your application? Injection   Correct Insecure direct object references Failure to restrict URL access Insufficient transport layer protection 3) Which of the following scenarios is most likely to cause an injection attack? Unvalidated input is embedded in an instruction stream.   Correct Unvalidated input can be distinguished from valid instructions. A Web application does not validate a client’s access to a resource. A Web action performs an operation on behalf of the user without checkin...