1. 谁是小百
小百是一名拥有一年工作经验的软件工程师,在上海的一家小规模的科技公司工作,时常有居安思危的意识,随着软件行业的发展,他意识到当前自己所做的基础的编程工作可能不能应对未来的日新月异的需求,因此他陷入了焦虑,目前其工作内容主要的公司内部自研管理系统的开发与运维。
临近年末,小百焦虑的状态在工作中不经意间表露了出来,其领导察觉出他最近似乎有一些心事,随后的一天下午,他忙完自己手头的事情便把小百叫到自己的办公室。
“最近怎么样?”领导轻声关切的问道。
“嗯?没有、没有,最近都挺好的”。
“看你似乎有一些心事?”
“没事的,你说说,在咱们项目组还是很开放的”
因为小百的直级领导平时也挺帮助小百的,之间也没有上下级那种感觉,所以小百对领导平时也没有什么戒备,便说出了自己的真实想法💡。
“最~~近~就是有一些焦虑,近几年互联网饱和的声量越来越大,觉得现在行业发展很快很多专业的知识,我都用不上就怕以后不知道怎么办了”。
“哈哈哈,你是担心这个呀,其实我理解你,最近几年各行各业都不好过,因为我也是这么过来的,行业的发展也不是一成不变的,其实每一个行业都一样,我们也要不断的调整自己的状态,你有这样的察觉已经很赞了,我前段时间遇到的另一个开发同学,他与你相反,又是处于极度客观的状态,所以说极度悲观和极度乐观都是不是一个好的思考方式,还得辩证的的去思考”。
“扯得有些远了,咱们谈正事,嗯~不可否认这些年在快速发展,你像我之前都是使用.net进行编程,后来转成JAVA,现在你再看看GO与Python语言又有迎头赶上之趋势,技术是日新月异,不过你要相信一件事情,万变不离其宗,最核心的内容实际还是数据结构、操作系统、网络编程、计算机组成原理这样底层内容,其他只是其衍生和表现。你看看都这么多年过去了,底层的操作CPU架构不还是X86架构吗,整个类型再加上Arm最后再加上苹果的M芯片,其实没有什么大的变革。”领导不慌不忙的说道并喝了口茶水。
“嗯嗯,这个我也是知道的”小百随口回复到。
“不错,我对你的这一状态是非常称赞的,其实我很早就想找你了,只是一直没有抽取来时间,我和其他领导在你工作的期间都很认可你,也希望你继续努力,另外既然你提到了想应用新的技术,那我给你留下一个课题怎么样,不知道你有没有兴趣呢?”领导欣慰地问道。
领导听了小百的描述,当时就明白了小百的想法,知道他是想去实践更多的技术。
“有!”小百激动地回复。
“是这样的,咱们公司业务扩张,在年后核心部门也要增加人手,核心业务用的也就是你所期望的新技术,但是在这之前,还需要对人员进行考核的,那么你也不例外哦,所以这样,我给你留一个秒杀的课题,要是你能自己把这个想明白了再来找我,你看如何呢,这包括了技术原型,疑难问题,设计等等,虽然你工作一年,但是我相信你经过自己的学习和琢磨肯定能做到,你觉得怎么样?要是在学习的过程中有问题,随时可以联系我”
“好!那就这么定了”小百一口答应内心充满了喜悦。
2. 一通电话
当天下班后小百就一直去思考这个预留的课题🤔状态“秒杀系统”,这可以如何思考呢?他又突然有点后悔,觉得自己答应的太仓促,但现在已经在领导前面下了军令状,也没有办法收回,只能先查资料、看博客进行了解。
'苍茫的天涯是我的爱 绵绵的青山脚下花正开……'这正是小百的手机铃声,手机屏幕显示是乐乐,乐乐的小百的发小,比小百工作年限久一些,也是一名程序员,在一家互联网大厂工作。
“怎么了?”小百像往常一样接过电话。
“周末出去玩,我发现了一个好地方。”乐乐在电话那头兴致勃勃地说道
“不去不去,现在没时间,后面要忙起来了喽~~~”
“呦,怎么了,现在都不想出去玩了?”乐乐打趣地问道。
“今天领导找我谈话了,我之前不是给你说,现在工作有些焦虑嘛,最近领导找我沟通后,现在领导给我安排了一个任务,让我设计一个‘秒杀系统’”小百显然有些兴奋地说。
“这样啊,太好了,那你要珍惜这个机会,你要是技术上有什么问题,你直接微信发我好了”
“嗯,不过现在我正想问你一个问题,你说秒杀系统是不是不能设计成单体的服务?”小百问道
“一般来说是这样的,不过也看需求,看业务量,但是对于现在你来讲,就多考虑下,多提供几种策略和方案给我你领导就行,你像我们现在的服务就是微服务进行部署的,用的SpringCloudAlibaba那一套,因为用户量挺大的”。
“SpringCloudAlibaba我之前听你说过,我一直就增删改查,之前就只是听过微服务什么是,还没用真正去了解过,那我好好研究下。”小百说道
“对的,你再去了解下,除了它们的使用,你更重要的也要了解它们的使用背景和解决的问题,不要一下子陷入技术的细节,最重要的是思想,那你先忙,我们后面再约,随时联系,等你的好消息~”小腾回复到。
3. 提升认知
挂了电话后,小百继续逛各大博客论坛,之后的一些天,他都沉迷于微服务等相关内容的了解中,
一种软件开发技术- 面向服务的体系结构(SOA)架构样式的一种变体,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于HTTP的RESTful API)
小百了解到,其实微服务主要是对业务模块进行拆分,使得各个业务更加独立轻盈的运行,同时使用分布式部署,能够大大增加系统的稳定性。
当前需要进行秒杀系统的设计,那么就需要考虑系统稳定性、模块关联性更内容,高并发、高可用、高性能。这样概念点其实之前小百平常在公共号上看到过,但以前都是刷到后就没有思考这里涉及的问题。
他开始思考一个问题,为什么自己所做的管理系统没有进行微服务架构呢?显而易见地答案是没必要,因为是内部OA系统并发和使用没有那么高,同时考虑到公司的成本因此通过单体进行部署。
秒杀系统的设计需要吗?
秒杀系统因为对准确度和性能要求较高,因此肯定需要这样的设计思路,也就是秒杀系统是需求按照三高架构的选择进行设计。
解决了这个概念性的问题后,小百又有了新的问题,如何下手呢?了解到阿里巴巴已经提供了一套成熟的解决方式,也已经在Apache基金会孵化成功,同时根据小腾的建议,他此时觉得需要深入学习springcloudalibaba是很有必要的了。
4. 春节不回家
时间很快来到了春节前后,放假前的最后一天,大家都耐不住等待放假,有的人已经提前请假回家了,有的人在工位上开始闲聊,小百今年也是因为疫情的原因,不打算回家,打算响应政府的号召留沪过年,已经决定了不回家,所以此刻的他显得不慌不忙,他的电脑页面上出现更多的还是微服务、springcloudalibaba等字眼。
今天除夕各个公司都放的早一点,小百显然已经提前替朋友预约了年夜饭,6点多大家也都已经陆续赶过来。
“来来来,今年都多吃一点,都辛苦一年了,哈哈哈” 张强说到,他的小百的一位学长已经来上海5年了,
“是呀,今年的疫情太烦人了”李洋附和道,他是小百的老乡,跟他一起来上海的,也来了一年多了,
“疫情确实影响很大,年终奖都没有发,不知道明年怎么样,小百,那么发年终奖了吗?你明年怎么计划的”这位是小腾,也就是上面跟小百通话的那个发小
“我们呀,也没法,哎,明年还继续待着,公司明年应该有新项目我还想参与进去,领导也都给我讲了”小百回答道。
“领导的话,你也信”张强诡异的说到,显然能看出张强似乎已经受了很大的伤害,
“怎么?”
“信一一半把,领导的话信一半就行,涨工资我们老板说给我们说了一年多了,还是没有什么动静,一有事情就兄弟长兄弟短的,一谈到钱上就开始说一些有的没有,不过呀,我就是随便说说,你也别往心里去,也是看公司”张强语重心长的说
“嗯~嗯”小百点点头,毕竟刚工作没多久,阅历还是有限的。
吃完饭后,各自回家,小百一个人除夕的晚上,外面充满的鞭炮声,又是合家欢的声音,小百到家后就给爸妈拨打了视频电话。
“下班了?今天晚上吃饭了没?今年回不了家也别饿着自己,照顾好自己”电话那头传来了爸妈熟悉的声音。
“吃了,都跟小腾他们吃过饭了,你们在家也搞好身体,过年期间好好休息下,就是今年回不了家了”小百急切答复爸妈。
“哎,那没用办法,疫情搞成这样子,谁都不想这样,你就在那好好呆着,要是有什么事情就跟我们说,需要钱吗,让你爸给你带点过去,这段时间吃的好的”老妈安慰道
“不用,不用,我还有的,今年还发年终奖了,没事,我够”小百回复道
“那就好,自己在外面也照顾好自己呀”。
“知~道~了”
……
打完电话,小白下楼去买些东西,路过居民楼,看到其他家里团聚在一起,小百的心情此刻显得有些复杂
回到家,因为最近这段是已经囤了很多相关资料书籍,因此借此时刻,闲来无事,又向往常一样打开了资料、课本继续整理和学习了,回顾最近的学习内容,并进行巩固复习,晚上就早早睡觉了。
加依赖
加配置
加注解