云风:不加班、不炫技,把复杂的问题简单化

9085045ee83e9f80dc1871e5fd39d04a.gif

小学时跟随母亲去成人大学学习编程,初中开始参加信息学奥赛,高中写出人生中第一个成熟软件——Cview,大学发布开源软件风魂系列,后用于网易开发的《大话西游》《梦幻西游》等热门游戏,离开网易创立简悦科技……随着云风在游戏与编程领域的不断深入,他的声名也愈发广为人知,成为大家口中的技术大神。“游戏做得好”“博客写得好”“很极客的一个人”是大家对他的印象,“云风大佬”“云风大神”“云大”是大家对他的称呼。

《新程序员》专访了这位集游戏、编程、开源、创业、攀岩等标签于一身的极客,深入了解其三十多年编程生涯与人生感悟。

作者 | 田玮靖      

出品 | 《新程序员》编辑部

一位43岁的中年人,已有三十多年时光与游戏和编程为伴,恐怕全球都难找几人。

生于1979年的云风,在电脑还是稀罕玩意儿的20世纪80年代初,便成为了他的玩具。电脑没有显示器,用黑白电视接,将《儿童计算机世界》中的程序按步骤写入、运行,就是最好玩的事情。

因为游戏爱上编程,又因编程做好游戏,云风至今都在游戏与编程的世界中感受乐趣。如果让一个超过30年码龄的程序员对年轻人说点什么,他的建议是:想清楚再去做、多听别人的声音、抓住问题的本质、把复杂的问题简单化、看清事物也认清自己、做事情要专注、信任和你共事的人。

3ab561746b3ee769f89fcc686ed1e71c.jpeg

云风

7aa7d8c9914c33953a1c679f1cf53933.png

谈儿时与玩具

《新程序员》:你从小接触游戏和电脑,大概几岁萌生了对编程的兴趣?

云风:我在绚丽的街机厅看到电子游戏,是在八、九岁的时候,那时就想自己做游戏。小学时也写过程序,但不成系统。

在我五岁的时候,家里买了一台电脑,那是我爸的玩具。他给我写了一些比较简单的游戏,也教我编程,但他觉得教不会。大概在我四、五年级的时候,课业较松,有很多自由时间可以支配,我就跟着母亲去成人大学上一门Basic语言的课程,我每堂课都听,并且认真完成老师留的作业。课堂上基本都是四十多岁的中年人,只有我一个小孩,老师自然也就认识我了。学完这门课程后,我做了一些小游戏,但当时的能力还不能把完全东西做好。真正有把握写程序,以及正式学习编程,是上初中后,1990年左右。

当时我所在的中学,素有奥赛传统,包括数、理、化与信息学。奥赛老师是我爸的大学同学,由于在当时想找一个会写程序的人比较难,他就让我爸去代课,我也顺理成章地成为了我爸的正式学生。

初中几年的奥赛经历,让我对自己的编程能力充满信心,觉得自己什么都能做。初三时还进了奥赛省队,作为高中生的后备力量。那时,初中生参加高中奥赛就算拿不到好成绩,也可以到上高中后继续比赛,所以我在这方面非常积极。每逢暑假就去大学,带队老师按本科课程教我们计算机知识,算法、数据结构、编译原理等。

《新程序员》:那时的电脑有显示器吗?用这样的电脑编程,是什么样的感受?

云风:很有意思,它对小孩来说就是玩具。我最早使用的电脑是Z80 CPU的港产机器——Laser310,这是一台只有16K内存的电脑。为了接显示器,在电视还没有普及的年代,我爸就买了一台旧的9寸黑白电视。后来在初中参加奥赛基本都是用Apple II兼容机。学校机房使用的是中华学习机,由于我爸在学校代课,就从学校机房借了一台放在家里用。中华学习机比较简单,它有几本配套书,讲解硬件、软件系统,对于当时的我来说,这是特别好玩的玩具,玩了好几年。

《新程序员》:喜欢编程是觉得有趣,还是因为在计算机稀有的年代,会比其他小朋友厉害?

云风:我从小到大身边总有各方面比我厉害的人。我的父母属于工薪阶层, 经济条件不是很好,没有给我买很多玩具。家里有一台电脑,就觉得很有意思了,但早期没办法跟别人交流其中的乐趣。当时《儿童计算机世界》创刊(1984年),刊登一些有趣的程序,我拿到以后,打开电脑。花两、三个小时把程序敲进去,运行一下,觉得非常好玩。

上中学以后参加奥赛,并不是因为对比赛多么有兴致,而是因为拿到好的比赛成绩可以被保送,保送就意味着不用参加高考。当然,后来没有保送成功,高考前虽然没怎么复习,但成绩也不算太糟糕。

《新程序员》:高中时为什么会想做一个看书的软件——C-View?

云风:读高三时玩拨号的BBS网络(中国惠多网),大家用电话拨到一个固定的位置,传送信件、下载资源。其中最多的就是电子书。在互联网普及之前,BBS网络在国内流行了好几年,求伯君、雷军、马化腾等人都玩过很长时间。

我从小到大都喜欢看书,但没那么多钱买书。我发现在电脑上看书可以省很多钱。在Windows还没诞生的年代,DOS系统是使用最广泛的,很多电脑甚至连硬盘都没有。因此,我想做一个在软盘上快速打开的电子书软件,并自带中文环境。初期发布在BBS网络,按照很多共享软件的注册页面,照猫画虎也做了注册框,注册费10块钱,并留了收费地址。直到大学时间,都一直有人给我邮寄软件注册费。也正因为这个软件积累了一些用户,所以上大学后又更新了一个版本,后来被《电脑报》的光盘收录,在全国发行。

d824a69558fcb3e7637e4a6be8d9b843.jpeg

本文节选自《新程序员004》纸刊+电子刊同步上市

d46db41cbb4f613c2c9f52014899b852.png

谈游戏与产品

《新程序员》:最近在忙什么?

云风:最近两、三年,由于简悦科技被阿里巴巴(以下简称阿里)收购,我就脱离了管理工作。然后,兴趣使然,我做了一个3D游戏引擎。原本计划开源,但我觉得游戏引擎需要完整成熟,才能培养出好的开发社区,因此在完善之前,还是闭源开发。因此,从2021年下半年开始,带了五、六个人的小团队,基于这个自研游戏引擎开发游戏。在做游戏的过程中,能够发现游戏引擎的不足,逐渐完善它。目前是围绕游戏来完善游戏引擎,等我们做下一款游戏的时候,就可以逐步把游戏引擎中通用的部分抽象出来。本质上,做游戏引擎还是为了做游戏,游戏引擎只是其中的一部分。所以,我定义自己目前在做的事情,并不是游戏引擎,还是游戏。 

目前在做的这款游戏,是手机端的单机游戏。定位于城市建设和自动化,基调和我近两年喜欢玩的一款游戏——异星工厂很相似。在2022年春节,我们刚完成游戏的雏形。

现在的状态也很舒服,不负责简悦大团队的事项,又做着自己感兴趣的事情,按现在流行的话说,我已经财务自由了,不会为了赚钱去做什么事,也就没有太大的业绩压力。

《新程序员》:果然自由的基础还是财务自由。

云风:财务自由只是一种流行的说法,其实,自由不自由不在于有多少积蓄,还是看自身的个人需求。我没有太大的需求,自然就感觉财务自由了。当经济比较独立后,来自外界的压力会小得多。但我自己还是有压力的,因为我希望给一起工作的团队一个交代,让同事觉得工作有意义,生活也能过得比较好。

《新程序员》:你们现在忙吗?

云风:还算有点忙,但至少我负责的团队,从不鼓励加班。我们在晚上六、七点钟就下班,下班后也不谈工作。在我看来,做开发这项工作,最主要的是把事情想清楚,再按照计划好的工作时间做事。比如一件事你做了两年,回头看有多少时间在做有效工作?可能你做了很多无谓的事情,占用了太多时间。你会发现,最终有效工作花掉的时间并不多。因此,要少犯错误、少走弯路,减少返工,这样就会有很多时间被节省下来。如果事情没有做好,我作为团队领导者责任最大,是我带着大家走了弯路。

《新程序员》:你认为做产品最重要的因素是什么,怎样才能做一款被大家认可并追捧的产品?

云风:其实我不太做面向最终用户的东西,而是更偏底层,是给其他程序员用的。不过我认为,作为产品的首批用户,首先自己要喜欢它,让自己满意。我不太赞成仅为迎合市场调研结果或别人的想法去做产品。自己喜欢的东西,总有人也会喜欢。如果自己不喜欢,就不应该参与这件事。

《新程序员》:相比其他领域,做游戏开发的难点是什么?

云风:游戏的前端开发决定着一款游戏给用户呈现怎样的画面质量和交互效果,一个永恒的话题是把图形技术做好,而图形技术的发展速度非常快,也比较复杂,需要投入大量的时间学习,更新知识储备。可能有些游戏不在乎画面,但在国内目前的大环境下,必须考虑这方面。而游戏的后端开发,关系着游戏系统的稳定性,系统不能出故障,即使出现问题也必须尽快修复。如果是单机游戏,就不涉及后端开发。

另外,游戏软件和其他领域软件,最大的不同在于时效性。通常,软件开发关注输入和输出,输入正确,输出也正确,中间的过程无误,程序员的事情就做完了。可能会去优化代码,让它运行得更快。但在游戏领域,如果不能在10毫秒内把任务运行完,拖延到20毫秒,就是不及格的,而这在很多其他领域,其实不是个事儿。游戏领域之所以特别强调代码的优化,是因为“人”是整个系统的一部分。“人”的感受是决定了系统运作是否合格。10毫秒运行一个任务对用户来说是“很流畅”,但20毫秒就意味着“卡”,损害了系统中“人”的感觉。因此,游戏系统中的许多事务必需在限定时间内处理完,而这一点却非常难以衡量。不同的硬件会有不同的环境,很难确定事务能否正确按时处理。

《新程序员》:很多伟大的项目往往由一个人或者一个极小数量的群体发起并成长起来的,但在企业里,作为开发者缺乏高层决策能力,项目的开展也讲求完美的计划,多人头脑风暴,你认为这两者之间是否存在“矛盾”?

云风:我个人不太喜欢多人头脑风暴,大部分时候都是在浪费时间,只有极少数头脑风暴能带来一点灵感。我们启动新项目时,通常只在吃饭的时候,大家凑在一起聊一聊,很少在工作时间开大会。

首先,我个人比较反感开会这件事,我认为做好工作计划,大家各自执行就好了,然后团队负责人尽量了解其他人在做什么事,做好沟通工作。一堆人为了沟通专门坐在一起开会,是非常没有效率的。

其次,项目做得好不好,最为关键的往往只在一两个人。

07105b08d7055a04e4301efe08aa0da5.png

谈开源与贡献

《新程序员》:你是什么时候关注开源的?

云风:在读大学的时候,1997年左右,彼时互联网刚刚兴起,大家使用的大部分软件来自盗版。有一次我买到一张光碟,里面是各种各样的非商业开源软件。还买到过一套Linux的光碟。这给我带来了很大的冲击,居然有光碟中不是盗版软件,而可以合法免费使用。我发现,其实这个世界上有很多软件并不是商业模式的运作方式。后来,在学校机房下载到很多开源的开发工具,也做了一些开源的软件,当时只觉得做开源软件供大家使用是件很有意思的事,而且在这个过程中可以认识很多有趣的人,

当时大部分软件是英文文档,没有中文说明书,而我又很喜欢游戏引擎。机缘巧合,我接触到了Allegro ,我就加了他们的邮件列表,写邮件讨论问题或回答别人的问题。当时翻译了这个游戏引擎的中文文档,大概用了一个多学期的时间。因此还收获了一个意外惊喜,我此前的的英文水平非常差,高考英文分数很低,大学第一次考英语4级也没过。我从来没想到翻译文档能加强了我的英语应试能力。第二次报考英语4级,没有备考却竟然及格了。更巧合的是,我最近发现Allegro居然还在发展,而我最喜欢的异星工厂一开始就是用它开发的。

再后来我去网易工作,也是源于开源。当时网易做《大话西游》的团队,使用了我在网上开源的底层系统——风魂,网易希望我兼职做底层渲染的开发。远程工作一个多月后,为了便于团队间的沟通,才正式入职网易。因此,从机缘角度来说,是我先做了开源软件,才进入网易做《大话西游》系列,并且一待就是十年。在网易期间还开源过一些小项目,用户比较多的一个项目是Google Protobuf(通讯协议),很多年都是国内游戏领域的一个事实标准。

创立简悦后,做了Skynet,它一诞生就用开源的方式,发布在GitHub上。因为我当时在业界有点名气,所以Skynet一经发布就吸引了很多用户。这个项目从产生想法到衍生出第一个可用版本,不到一个月的时间,发展至今,一直有很多用户在维护它、完善它。

这也是我第一个拥有很多用户并一直维护的开源项目。早在大学期间的开源项目,都是自己把项目完善后才发到网上。之所以在 Skynet 雏形时就开源,是受 Linus Benedict Torvalds(操作系统Linux之父、Git的开发者,以下简称Linus)影响。2007年,Linux团队与BitKeeper(彼时是非开源但有条件免费的版本控制工具)产生合作纠纷,Linus决定不再使用BitKeeper,大约三天后,Git(开源版本控制系统)横空出世。可能最初连1000行代码都不到的Git雏形,一直发展到现在。很多开源的大项目都是从一开始就在众人眼皮下生长起来的。

除了上述事件外,我更多的是参与一些开源项目的开发。我们正在开发的游戏引擎使用了很多开源的库,基本每个使用过的开源项目,我们都参与了开发,包括提修改、修补丁以及与主要开发者交流等。另外,我觉得作为一个开源爱好者,甄选合适的库也是很重要的能力,非常考验一个人的眼光和读代码的能力。

《新程序员》:您如何看待开源的发展及它对世界的影响?未来开源还会向哪些方向发展?

云风:世界上要解决的问题是非常多的,尤其是一些根源问题,但每个问题都只能找到极少的几个人去解决。因为对于程序员而言,做得好的人和做得不那么好的人,会相差几个数量级。如果你需要解决的问题非常需要人去做的话,那么可能你在世界上只能找到那么几个人可以把这个事情做好,不是说其他人做不好,其他人可能不关心这个问题,或者不是他的领域。如果这个前提正确,你就会发现很多基础设施的问题和一些很专注的问题,若限定在一个公司里边,根本找不到合适的人。只有群体足够大,大到世界范围,才可以找到对的人把事情做好或把问题很好的解决,我觉得这是开源最大的意义:把特定的事情和擅长做这些事的人连接、聚集在一起。

正因此,不是所有的代码都应该开源,比如一项特别专注于某个领域或某项技术的业务代码,开源没有意义,因为不需要有很多人参与。反之,越是能被大众广泛使用的项目,越值得开源。游戏引擎同理,大家不需要把精力都浪费在同样的事情上。 

当然,开源的发展与互联网的发展相互关联,如果互联网不那么发达,就没办法把世界各地、各种各样的人连接在一起。举个例子,为什么在早年间美国的大学之间会流行开源、黑客文化等?因为他们有自己的网络。当人和人不能顺畅沟通的时候,就谈不上做开源这件事,而开源又会极大地促进互联网行业的发展,因此我认为,至少对于通用的、底层的设施,必然会走向开源,不应该有第二条路。

《新程序员》:你对中国的开发者在开源领域,有哪些期待或倡导?

云风:当我们作为开源领域的参与者或贡献者时,最重要的能力不是代码写得比别人好多少,而当我们作为一个开源项目的主导者,最重要的能力是与人沟通的能力,听更多人的意见,求同存异。这和我们在公司当差不一样,在公司里,大家都拿工资,下级需要听从上级的安排,但在开源领域,大家可能都是“为爱发电”,只有信任才能让彼此更好地协作,把事情做好,因此,通过网络语言让别人相信你的想法,愿意跟你共事,是相当重要的。

另外,怎么让你的项目吸引更多人,一起把你的项目做好,也非常重要。拿到一个开源项目,私下做一个分支,我不喜欢这样的开发方式,我觉得对于开源项目,如果它是一个基础设施,所有参与贡献的开发者就应该抱紧了朝一个方向走下去,即使这个方向有人并不喜欢,但可以先参与进去,慢慢将其修正为自己喜欢的方向,或逐渐改变自己的想法,尽量减少分叉。对于这种情况,你需要花费很多时间与参与者或用户,也可以称其为潜在的开发者,保持良好的关系。

d03e33684a1409983ceb137dfbc0ec72.png

谈人生与感悟

《新程序员》:如今,你已经有三十多年码龄了,在你的编程生涯中,从前和现在的做事方式或观念有没有一些变化?

云风:改变都是渐进的,从趋势上来看,我越来越趋向于写更简单的程序,而不追求性能更好。但我想说,把程序写简单,不论是空间性能还是时间性能都更容易变好。性能是一种自然而然的结果,不必刻意追求。

现在做事情也更有规律。二十几岁时,我经常通宵写代码,一旦进入状态能写到第二天早上七、八点,还不觉得累,觉得一天能做很多事,非常有满足感。而现在,我会在每天早上或头天晚上临睡前想好接下来要做什么事、几个小时完成、大概怎么做,以及在每天下午四、五点钟思考下一步的计划。即使这个时间段我有很好的工作状态,也会去想下一步该怎么做、应该在哪里停下来。在下班之前,我会把工作告一段落,并想好第二天怎么接着启动更好。如果是周五,就告一个大的段落,如果这件事比较重要,我在周末两天也会思考,但不会动手做。把事情分阶段完成,讲究节奏,不倾向于突击,是我在做事方面比较大的改变,三思而后行。

《新程序员》:以你多年的从业经历来看,优秀的研发人员具有哪些品质和能力?

云风:很多能力都重要,近两年我认为,比较重要的能力是抓住问题的本质。就是可以用足够简单的方法去解决根源问题,抛开中间的一些枝节干扰。

为什么我会强调用简单的方法?Keep it Simple and Stupid,即KISS原则。在20年前,我不完全理解这个道理,比如,我在大学期间以及刚毕业的时候,比较喜欢做程序的优化,让自己写的代码比别人写的代码跑得快。很多年轻程序员和我一样,都喜欢炫技。但我现在看来,这些事不是解决问题的本质。这与把事情做简单有什么关系?以前我认为写出复杂的程序并且不出错是一种出色的能力,可随着时间的推移,我的代码需要被别人维护,可能还要和其他人合作,这时我们需要在这群人之间找到一个共同的基点,让代码更容易理解。所以我们需要让代码足够简单,让别人一看就明白。什么样的代码是好代码?并不是看上去好像没有问题的代码,而是看上去所有东西都清清楚楚,断定它肯定不会出问题的代码。

最近几年,我写程序很少炫技。炫技在短时间内看,是用一个很巧妙的方法把问题解决掉了,但经不起时间的检验。把复杂的问题简单化,对程序员而言是一项非常重要的能力。

另一项重要能力是评估事物的能力,知道一件事情大概是怎么回事,需要多长时间完成,需要什么条件完成,这是靠经验堆出来的。也要对自身有清晰的认知,这样你才能规划好你做整件事情的流程和时间,减少返工。通常一件事谁都能做,比如,同样是2000行代码,有人只需要两天,有人却需要两周、两月,为什么?当一个程序员经验不足时,他评估一件事可以用两天搞定,但他可能又花费两周甚至两月来解决他做事过程中发现的问题,改错、返工,导致和预期完成时间出入很大。这就是能力的差异,否则程序员的能力差异体现在哪里?别人会的东西,你学习后也能掌握,所以真正在做事时,能力的差异就在于一个人的评估能力。

《新程序员》:那么,有哪些人生感悟、研发感悟可以分享给大家吗? 

云风:第一,做事情要专注。想好一件事情就去做,只要花的时间和精力足够多,不三心二意,这件事终究会给你回报。每个人的生命都几乎一样长,你不可能比别人多出很多时间和精力,你也不会比别人差在哪或好多少,那么,一件事情做得好不好,就看你投入的时间多不多。但过程中是有方法的,不能蛮干,时常回顾自己怎么才能把这件事学好、做好,发现错误或更好的方向,及时修正。

我现在40多岁,每个人从十几岁开始明白这个世界的道理,到了40多岁,也就30年的时间,每个人都是30年。如果这30年间你都做一件事,那你会超越大部分人。对于任何事情,如果你处于金字塔上层的位置,就会觉得自己是个很有用的人。很多事情必需你来做才能做好的时候,自然而然,这个世界就会给你回报。

第二,信任和你共事的人,接受他们做得不好的方面。以把整件事情做好为主。每个模块都按照你的想法做,通常是行不通的。你可以找准你真正想要的那件事,围绕那件事情,把它做好,其他事情放心交给你的伙伴。我反复讲,人不会比其他人强多少,也不会差多少,你找对人一起做事,接纳其他人的不同想法,求同存异,把整件事做好就可以了。

dddbb6c756db3da97dc05890648142ca.png

谈兴趣与偶像

《新程序员》:你是很多开发者的偶像,你知道吗?

云风:可能有感觉,但我很少谈偶像这件事。

《新程序员》:你有自己的偶像吗?

云风:我可能会钦佩某些人,但谈不上“偶像”,我会觉得他有些事情做得很好,而已。比如,我觉得Linus做了两件非常厉害的事情。一件是开发了Linux操作系统,另一件是开发了Git版本控制系统。这两件中的任何一件都足以改变世界,但他做了两件,我觉得他很了不起。而且他平常发表的一些观点,我也比较认同。

《新程序员》:你的一位粉丝想问你什么时候再出书?

云风:随着阅历的增加,知道的事情越多,感到自己不知道的事情越多,而且觉得自己的想法不够成熟。写《游戏之旅》这本书是二十来岁,当时觉得自己很多东西都懂,如今觉得自己不懂的更多了,所以就不太敢写。但我觉得翻译书籍也挺好的,翻译《程序员修炼之道》(第2版)花费了我大半年的时间。做翻译也是一种创作,并不是把英文一字一句翻译成中文,而是按照自己的理解,把作者原本想表达的内容以准确、可读的文字重新表达。

《新程序员》:你现在业余时间还会攀岩吗,攀岩的时候会想些什么?

云风:比较少,一周会去一次。当你真的爬上墙,你不会想什么,你会聚精会神地思考这条线路怎么完成。

《新程序员》:喜欢这项运动是因为过程比较专注吗?

云风:我觉得攀岩是个很有意思的事情,因为我是一个不太喜欢社交的人,自己玩自己的。过程中就想着面前的问题该怎么解决,如果能力不足,再提高自己的能力,完成线路后非常有快感和成就感。

《新程序员》:攀岩和研发有没有什么共同点?

云风:所有事情都能找到一些共同点。攀岩时要去思考线路的每一步怎么完成,每个人的身体状况和攀爬能力不同,方法也不同。所以攀岩之前,需要根据自己的条件,预想一套完整的计划,攀爬就是兑现这个计划。研发也是这样,不能想到哪做到哪,否则中间错了一步,退回来的代价很大。


云风:原网易游戏核心成员、杭州研究中心总监,后联合创办的简悦科技为现阿里游戏的前身。具有丰富的程序开发经验,是开源爱好者、硬核游戏玩家。早期在 cfido 和水木清华 BBS 发表了多篇关于游戏制作的文章。1997 年开始维护的个人网站是最早用简体中文介绍游戏制作的网站之一,收录个人文章超过百万字,在游戏界颇有名气。

— 推荐阅读 —

《新程序员001-004》已全面上市 

现在订阅即有机会获取『CSDN夏季定制T恤』一件

欢迎扫描下方二维码或点击进入立即订阅

即可畅享电子书及精美纸质书。

62aa516df4c1e12b2f8115062c803a82.jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/511270.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Timing:在线自习室快速搭建

通过超低延迟的音视频通信技术、视频连麦、弱网传输算法,快速搭建自习场景,提升自习效率。 客户简介 氪细胞主打产品Timing,是国内最早推出,也是规模最大的在线自习室,是新一代的教育与社交融合平台,主打高…

Nacos2.0的K8s服务发现生态应用及规划

简介:Nacos 是阿里巴巴于 2018 年开源的注册中心及配置中心产品,帮助用户的分布式微服务应用进行服务发现和配置管理功能。随着 Nacos2.0 版本的发布,在性能和扩展性上取得较大突破后,社区开始考虑如何提供更加云原生方向的功能和…

webview 和 React Native 中吸顶效果实现

作者 | 👽来源 | Sharing一、前言 在跨端开发中,离不开一些吸顶的交互场景,可以参考淘宝或是京东类电商 app 中一些 tab ,在整个容器滑动的过程中,吸顶效果非常的连贯和丝滑的,当然这些 tab 可能是用 nativ…

AHPA:开启 Kubernetes 弹性预测之门

简介:阿里巴巴云原生团队和阿里达摩院决策智能时序团队合作开发 AHPA 弹性预测产品,该产品主要出发点是基于检测到的周期做“定时规划”,通过规划实现提前扩容的目的,在保证业务稳定的情况下,让你真正实现按需使用。 …

Kubernetes 在科技革命中的演变

作者 | Anthony Spiteri仅在一两年前,对于那些希望通过向现代数据平台转型走在前沿的企业来讲,容器化可是热门词汇。Kubernetes,也被称为 K8s,当时还不成熟,仅处于起步阶段,对更广泛的IT界来说仍然有些陌生…

在阿里巴巴,我们如何先于用户发现和定位 Kubernetes 集群问题?

简介:本文整理自阿里云高级研发工程师彭南光(光南) 在 KubeCon China 2021 大会的演讲实录,分享了阿里巴巴是如何通过自研通用链路探测定向巡检工具 KubeProbe 应对大规模集群的稳定性挑战的。关于阿里云云原生团队在本次 KubeCon 上分享的全部内容沉淀于…

“虎力全开”采购季,存储产品已就位

简介:两百多年前,有个叫吴锡麒的少年,在“江南三月听莺天,买酒莫论钱”。如今又逢暮春三月,一年一度的开年大促——阿里云上云采购季也拉开了序幕。 两百多年前,有个叫吴锡麒的少年,在“江南三月…

武汉高性能计算大会2022举办,高性能计算生态发展再添新动力

武汉高性能计算大会2022会上,华为重磅发布了鲲鹏高性能计算解决方案,为了进一步推进高性能产业的生态繁荣,武汉高性能计算产业联盟成立启动,长江欧拉生态创新中心签约并揭牌,首批鲲鹏科研创新使能计划成员也正式亮相。…

学信网:研究生云复试平台快速搭建上线

通过覆盖全球的音视频通信服务,支撑学信网视频面试稳定运行和效率提升。 案例简介 研究生复试工作碰到疫情,各大院校先后发布复试流程调整通知,将复试工作从线下搬到了线上,这也是历史上的第一次。要在短期内完成视频面试系统的…

企业深入使用微服务后会面临哪些问题?云原生全链路灰度给了新思路

简介:如何落地可灰度、可观测、可回滚的安全生产三板斧能力,满足业务高速发展情况下快速迭代和小心验证的诉求,是企业在微服务化深入过程中必须要面对的问题。在云原生流行的当下,这个问题又有了一些新的思路与解法。 作者&#…

40 张图 详解 Docker 容器监控

作者 | 飞向星的客机来源 | CSDN博客前言在企业中,通常业务是不允许随意停止的,否则将给企业带来巨大的经济损失。运维工程师要保证业务正常运行,就必须利用工具时刻监控业务的运行状态,容器中的业务也不例外。除了容器自身的监控…

Spring Cloud Gateway 突发高危漏洞,下一代云原生网关恰逢其时?

简介:Log4j2 的漏洞刚告一段落,Spring 官方在 2022 年 3 月 1 日发布了 Spring Cloud Gateway 的两个 CVE 漏洞:分别为 CVE-2022-22946(严重性:Medium)与 CVE-2022-22947(代码注入漏洞&#xff…

云小蜜 Dubbo3.0 实践:从微服务迁移上云到流量治理

简介:阿里云-达摩院-云小蜜对话机器人产品基于深度机器学习技术、自然语言理解技术和对话管理技术,为企业提供多引擎、多渠道、多模态的对话机器人服务。17 年云小蜜对话机器人在公共云开始公测,同期在混合云场景也不断拓展。为了同时保证公共…

解析并执行 shell 命令

‍‍作者 | 闪客来源 | 低并发编程新建一个非常简单的 info.txt 文件。name:flash age:28 language:java在命令行输入一条十分简单的命令。[rootlinux0.11] cat info.txt | wc -l 3这条命令的意思是读取刚刚的 info.txt 文件,输出它的行数。 在上一回中,…

EventBridge消息路由|高效构建消息路由能力

简介:企业数字化转型过程中,天然会遇到消息路由,异地多活,协议适配,消息备份等场景。本篇主要通过 EventBridge 消息路由的应用场景和应用实验介绍,帮助大家了解如何通过 EventBridge 的消息路由高效构建消…

哪吒汽车选择BlackBerry QNX为中国新能源轿跑——哪吒S保驾护航

BlackBerry与合众新能源汽车有限公司近日宣布达成合作,合众汽车旗下汽车品牌——中国造车新势力哪吒汽车,在其即将量产的运动型智享轿跑——哪吒S中搭载了BlackBerry QNX为其保驾护航,旨在确保关键系统的功能安全、网络安全与可靠性的同时&am…

异步请求积压可视化|如何 1 分钟内快速定位函数计算积压问题

简介:本文分为三个部分:概述中引入了积压问题,并介绍了函数计算异步调用基本链路;并在指标介绍部分详细介绍了指标查看方式,分类解读了不同的指标含义;最后以一个常见的异步请求积压场景为例,介…

并发-分布式锁质量保障总结

简介:并发问题是电商系统最常见的问题之一,例如库存超卖、抽奖多发、券多发放、积分多发少发等场景;之所以会出现上述问题,是因为存在多机器多请求同时对同一个共享资源进行修改,如果不加以限制,将导致数据…

以网强算,中国移动算网建设激发澎湃能量

近日,在首届中国算力大会上,中国工程院院士张宏科发表演讲认为,“信息网络已经成为大国博弈的核心与关键,面临机遇期,我们亟需新型网络体系与技术创新,满足自主可控和建设网络强国的重大战略需求&#xff0…

云上的移动性能测试平台

简介:功能决定现在,性能决定未来。欢迎大家围观《云上的移动性能测试平台》, 了解EMAS性能测试平台的能力与规划。 1. 功能决定现在,性能决定未来 性能测试在移动测试领域一直是一个大难题,它最直观的表现是用户在前…