博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
周伯通的空明拳,米诺斯的星尘傀儡线,SAP Kyma的Serverless
阅读量:2437 次
发布时间:2019-05-10

本文共 2245 字,大约阅读时间需要 7 分钟。

Jerry一直认为,金庸的《天龙八部》里的武学建模已经有点脱离传统武侠小说的范畴了,像已经走上玄幻道路的灵鹫宫“八荒六合唯我独尊功”,以及杀伤力足够能被视为现代激光武器的鼻祖,大理段式的“六脉神剑”之类。而另一部经典的射雕三部曲里很多的武功设定则中规中矩,其中周伯通自创的七十二路空明拳,是金老独具匠心的创造之一。

周伯通被黄药师困在桃花岛,宅了十余年,从《道德经》中参悟到「以虚击实」,「以不足胜有余」的武学(编程)思想。《道德经》有云:「天下莫柔弱于水,而攻坚强者莫之能胜,其无以易之。弱之胜强,柔之胜刚,天下莫不知,莫能行。」

webp

而这套拳力“若有若无”的武功,使用在生产环境最经典的一幕,就是在百花谷和杨过的“黯然销魂掌”PK的时候:

周伯通生性好武,虽在百花谷隐居,每日仍是练功不辍,但以他如此功力,普天下哪里找对手去?这时见杨过愿意比武,自是心痒难搔,跃跃欲试,心想若再多言,只怕他忽而又不愿动手了,岂不是错过良机?当下左掌一提,喝道:“看拳!”右手一拳打了出去,使的是七十二路的“空明拳法”。

杨过左手还了一掌,猛觉得对方拳力若有若无,自己掌力使实了固然不对,使虚了也是极其危险,不禁暗暗吃惊,当下展开十余年来在狂涛怒潮中所苦练的掌法还击出去。

webp

无独有偶,在车田正美笔下的《圣斗士星矢》里,也有很多像周伯通一样,拥有一套招式若有若无的好手。如果按照动漫里越晚出场的人物实力越强的设定,那么最强的人物无疑是Jerry这张卡片里秀的,冥界三巨头之首,天贵星的狮鹫米诺斯,第一域的最高主宰者。

webp

webp

米诺斯的绝技星尘傀儡线,能够用一根根看不见的丝线将对手的身体缠绕起来,从而使其像一具傀儡一样,只能按照自己的意志来活动,是一种非常可怕的招式。在对手眼中,这些由米诺斯小宇宙形成的丝线若有若无,根本无从防御。米诺斯最高光的战绩,就是一度全面压制在黄金圣斗士中实力位居中上游的加隆,后者尽管拥有银河星爆这种绝招,但是在米诺斯的星尘傀儡线面前,毫无反击的机会。

webp

webp

同样,Jerry第一次接触SAP Kyma基于Serverless架构的Lambda Function时,感受同周伯通和米诺斯的对手一样有些疑惑:名字都叫Serverless了,没了服务器,那我的函数代码到底运行在什么地方的?

比如在最近Jerry写的一系列SAP Kyma的文章里介绍过,我在Kyma上创建了一个名为zjerry-lambda的函数,基于nodejs8:

webp

可以直接在Kyma的测试控制台里调用这个Lambda Function:

webp

Serverless的字面意思,不是暗示我们没有服务器了吗?那么这段函数代码到底运行在哪里的?

米诺斯的星尘傀儡线,在冰系法师,百鸟座冰河的冻气之下,终于被冻结成肉眼可见的丝线了。同样的,因为SAP Kyma是基于Kubernetes的,因此我们还是可以通过Kubernetes提供的一些工具,来探索SAP Kyma上Lambda Function运行原理的一些蛛丝马迹。跟Jerry一起看看吧。

webp

首先找到zjerry-lambda函数创建后,对应生成的pod,把名字抄下来:zjerry-lambda-86668f75d4-pfbk6

webp

使用kubectl的交互式参数-ti,进入这个pod内部:

kubectl exec -ti zjerry-lambda-86668f75d4-pfbk6 -n ctu-demo -- /bin/sh

webp

进入之后,查看进程列表,发现了node kubeless这个进程,Jerry顿时觉得有点眉目了:

webp

看样子,SAP Kyma的Lambda Function是通过一个node进程执行的。查看一下这个pod里都有哪些文件:

webp

打开kubeless.js看看里面的内容:

webp

如果您是一位nodejs开发人员,看到上面Jerry高亮的红色内容,一定会恍然大悟。SAP Kyma的Lambda Function,其实运行在对应的Kubernetes pod里启动的express应用框架上。

Express的依赖定义在pod内部的package.json里:

webp

而待执行的Lambda Function逻辑,通过环境变量FUNC_HANDLER进行注入,在Jerry这个例子里,函数体名称为main:

webp

webp

在Lambda Function的Serverless框架,即kubeless.js运行时,会从pod内部的kubeless这个文件夹里,找到应用开发人员编写的Lambda Function,加载并运行。

大家可以看到,Jerry红色高亮的位于pod内部的handler.js, 其内容就是Kyma控制台里编写的函数体。

webp

至此,SAP Kyma的Lambda Function实现,在Jerry眼中没有任何神秘可言了。回到Serverless这个术语本身,并不意味着整个场景里不再需要服务器的参与,而是服务器的这个关注点,在Serverless架构下,已经从应用开发人员的视角中隐藏起来罢了。

感谢阅读。

更多阅读

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

webp

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24475491/viewspace-2654195/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/24475491/viewspace-2654195/

你可能感兴趣的文章
交换机及路由器如何才能更加安全?(转)
查看>>
chinaunix
查看>>
bxp读写分离怎么设置(转)
查看>>
复制表结构的通用存储过程(转)
查看>>
Symbian OS SDKs简介(转)
查看>>
[组图]基于Nokia S60的游戏开发之四(转)
查看>>
屡次选错终致项目暴毙(转)
查看>>
WinXP优化 全面消除操作系统的复制乱码(转)
查看>>
symbian 60 开发的一个问题-让左右键都能弹出菜单(转)
查看>>
SQL Server静态页面导出技术(转)
查看>>
黑客软件最常用的连接端口一览(转)
查看>>
解决无盘多机启动慢的方法(转)
查看>>
检查字符串strSource是否为big或big5码(转)
查看>>
EXCEL读取与写入数据的最佳方案(转)
查看>>
windows运行命令详解(转)
查看>>
sql语句插入的数据中含有单引号怎么办(转)
查看>>
RJ45接头接法(转)
查看>>
将数据库的内容放到下拉列表中(转)
查看>>
突破网吧及机房管理限制的方法(转)
查看>>
WAP 2.0--XHTML mobile profile(转)
查看>>