1
下雨天
窗外下起了雨,滴答滴答...
周末了,本该很开心才对,小奈的心情却有点郁闷。坐在公交上,想着下午被Leader怼的话,心情十分不美丽。好不容易下班了,还下雨了,得找表哥好好倾诉。
2
求助于表哥
大仁:哟哟哟,你这是怎么啦?
小奈:今天被Leader一顿怼…
大仁:为什么会被Leader怼呢?
小奈:是这样的,我方案今天上交的时候Leader说很多地方做得不对,前后端都没分清,微服务就更不用说了。
大仁:不要气馁,产品上有什么问题你可以问我呀。
3
前后端区别
小奈:前后端怎么区分?后端写代码,前端负责显示?
大仁:这个前后端的区别,我画张图给你看看就知道了。
大仁:前端也要写代码的,后端写的代码没有界面显示,前端才有。
好比饭店一样,服务员是前端, 厨师是后端开发。服务员会给你端菜(看得到的前端),
但是做菜的是厨师(后端处理数据返给前端)。
小奈:那前后端怎么交互?
大仁:你看到那个窗口没有,服务员通过窗口拿菜,菜就是用户要的数据,窗口就是接口,前后端通过接口来协作,接口是后端的工作。
小奈:哦~那后端是不是做的比较多、比较累一点。
大仁:是的,厨师累一点。
不过今时不同往日,现在客人要求高了。要求服务员长得漂亮(界面好看) 还要会耍杂技(交互好)。这样说你可以理解么 ?
小奈:UI和UE有什么不一样么?
大仁:视觉设计(界面设计)ui像是服务员的衣服,ue (界面交互) 就是点击这个按钮怎么跳转, ue像是服务员的上菜流程、手势等。
数据库就是神奇的物料仓库,厨师要做什么菜,需要从仓库里取, 取的时候会自动复制了一份,这个数据库以后再和你仔细讲。
小奈:哇,理解了,表哥好厉害呀。
大仁:总结起来的话,涉及界面展示的属于前端,当请求数据的时候,就是常见的增删改查,属于后端工作,后端需要提供好这些窗口,把菜放在那里,服务员就可以过去拿。
4
微服务vs单体应用
小奈:那微服务又是什么呢?
大仁:我再画2张图(产品经理就是爱画图)。
大仁:你们公司是搞电商的,电商后台系统比较大而全。基本上由用户管理、商品管理、订单管理、物流管理、采购管理、资产管理、内容管理等组成。
而且项目早期研发的时候,都是都所有功能堆在一起,部署在一台服务器上。这种其实就是所谓的“单体应用”。
但是呢,随着业务发展,流量越来越大,这种单体应用的弊端就变得明显了。
怎么理解呢?单体应用之间各个模块互相依赖,如果某个模块挂了,就会影响其它模块。
或者做优惠活动的时候,对用户管理和优惠券这些模块压力较大,但是做负载均衡的时候其它模块也得上,浪费资源。
小奈:那怎么办?
大仁:其实把各个模块单独拎出来就好了。那里需要强化就强化那里。模块间依赖性也不会那么大。
小奈:那前期为什么不直接用微服务?
大仁:微服务其实比较花时间,但是各个服务拆分好后,对后续扩展和性能等的好处多多。所以很多创业项目前期都是单体应用,大公司除外。
5
一杯奶茶
为了感谢大仁悉心指导,小奈点了奶茶给大家喝,分奶茶的时候,看到大明一手鼠标一手键盘目不转睛地盯着屏幕。
6
小明来了
“叮咚叮咚.....”
今天的故事讲完了,小明和小奈会在2.1章--初次见面,如果有什么不懂的可以进入我的圈子(目前54人,抓紧机会)继续提问,如果有错误的地方还望指出,一起进步。
另做个发文时间小调查。
Jack
领取专属 10元无门槛券
私享最新 技术干货