您好,欢迎来到网暖!

当前位置:网暖 » 站长资讯 » 建站基础 » 网络技术 » 文章详细 订阅RssFeed

漫谈微服务

来源:网络整理 浏览:343次 时间:2022-08-19
序言

   最美的期待周笔畅 - 最美的期待

    每天一睁眼,就在倒计时,时间如流水,过的好快好快,还没来得及思考,就已经到了黄昏。。。


    每天一上班,将所有要处理的事情加载进内存,启动的好慢,不过每个人应该都会很习惯这种方式,都加载进大脑,然后进行区分优先级,然后处理。。。一天就已经过去。。。其实这就是SOA。。。


    那么有没有想过用另外一种方式来进行处理,每天划分为各个时间段,就像CPU的时钟,滴答。。。滴答。。。每个小时处理不同的事情,固定的事情,提供固定的服务。。。。其实这就是微服务

微服务

   微服务,是微笑服务还是微小的服务呢?micro service,微服务只是相对于SOA来说,那么SOA又是什么?


    SOA,面向对象的服务,对象???你有对象么。。。你又向你的对象提供了什么服务。SOA一般都是所谓的三层架构,没什么太激动人心的地方,不想太过于赘述。。。一句话描述就是SOA就是一个单体应用,这个应用可以提供各种服务,就像一个电子网站,提供了商品的服务,提供了库存的服务,而这一切都是打成了一个war包,使用的是单一的数据库,使用的是单一的语言。


    微服务只是SOA的一种进化,然而谈到了微服务,又离不开REST架构,RESTful API又是微服务的催化剂,那么什么是REST架构呢?


    REST架构,主要是用来描述资源的一种状态,常用的的就是使用http协议来发送请求,而在服务端提供统一的接口,对资源的CRUD,使用http的方法post,get,put,delete来达成。。。。RESTful API主要是定义了客户端向服务端发送请求的一种规则和约束,例如使用什么协议来进行交互,使用什么样的格式来发送响应,是json还是xml还是yaml,都是可以进行相互转化的,

    在很多地方都已经使用了restful的api来提供服务,例如github,例如k8s,提供了各种restful api接口,其实换句话说,就是当你请求这些资源的时候,有一个固定的URL来找到这个资源,你可以直接使用浏览器或者curl来发送请求,从而对资源进行操控。


    微服务中提倡使用restful api来提供各种服务,从而各个服务之间都是轻量级的通信。而在使用微服务的时候,和SOA的最大区别是,需要将单一的应用拆分为多个细小的服务单元,从而相当于一个团队,拆分为几个小团队,而当提供微服务的时候,又正好切合了容器的思想,容器也是轻量级的应用,运行一个小进程,提供一个服务。。。


    在进行开发的时候,所有的IDE其实都是比较适合于开发SOA的应用,一个庞大的应用代码库,各种各样的模块,各种各样的服务,进行开发的时候,都要加载这一大坨BUG进内存。。。卡不卡。。。。当进行编译运行的时候,卡不卡。。。。当进行部署的时候,启动tomcat或者jetty的时候,卡不卡。。。当你部署的时候,卡不卡。。。当你调试的时候,卡不卡。。。当你抓BUG的时候,这个不卡,但是心累,你也不知道这坨代码是谁写的。。。当你需要快速迭代的时候。。。修复一个小BUG,需要发布N长时间。。。累不累。。。当其中的一个组件出现内存溢出的时候,整个服务挂了。。。累不累。。。。当你加入一个新的项目组的时候,看那么一堆垃圾代码,累不累。。。


    微服务,你值得拥有。。。。


    微服务,微小的服务,微笑的服务,一小块代码,加载速度快,一小块代码,几个人组成一个团队,高内聚,低耦合,从前端到后端,从nginx到mysql,都是自己管理,有了自己的数据库,有了自己的nginx,有了自己的架构,有了自己的前端,有了自己的语言,想用什么语言,就用什么语言,为什么?因为服务之间的交互都是通过restful api啊,不依赖语言,只要提供接口就好了,就是这么轻松。。。


    微服务,发布的时候很快,tomcat启动的很快,部署的更快,我要快速迭代,just do it。。。


    微服务,加入新团队,哎呦,就那么点代码,看一眼就够了。。。。确认过眼神,就是这个BUG。。。


    微服务,故障隔离。。。我的服务挂了,并不会整站挂掉。。。我的内存溢出了。。我被killer kill了,么关系,只是一个微服务而已。。。


    微服务,devops,我自己的服务,我能单独进行管理,无ops理念自从诞生。。。


    微服务好处这么多,你就能用好???是Silver bullet?并不是!!!


    服务之间的依赖怎么办?强依赖。。。你挂了,我也得挂。。。升级的时候如何处理???对于这种情况,就只能我升级,那么你也就得跟着升级,可能我的api发生了变化,可能我的一些配置发生了变化。。。


    服务之间公用一个数据库怎么办?你有你自己的数据库,我有我自己的数据库,那么如何做到数据同步,如何做到数据冗余?那就只能数据库同步了。。。


    从SOA拆分到micro service,怎么拆。。。这个是技术活。。。。拆分到了微服务,怎么监控?日志怎收集?如何追踪生产问题。。。


    分布式事务怎么办?怎么处理。。。。无状态的怎么办?需要持久化的怎么办???


    其实以上的都是废话,。。没有太大的激动人心的特性。。。

闲扯

   没有太多的思考,没有太多的思维,都是一些没有太好的特性值得说道,那就说说一些和技术无关的东西。。。


    看的太多,发现懂的越来越渺小,当深入进去,你会发现,出不来,到处都是迷途,到处都是未知,到处都是变数,那么你如何处理?。。。打乱,重组。。。记忆,遗忘。。。所有的东西都有相同的规律,你记住了什么,你又遗忘了什么,你思考了什么,你将获得什么。。。有的时候,深入细节的时候,迷茫的时候,退出来,看看你的初心,看看整体的架构,然后继续深入,这个也是极好的,在总体上进行把控。。。


    内心想要什么,就应该去争取什么???这个问题思考的太多,想的半夜无法入眠,但是依旧心如止水鉴常明。。。无欲无求。。。


    容灾?本来还觉着这个可能很好玩,但是看了一眼,其实也就那么个样子,难点在于数据同步,如何做到服务容灾,又如何做到存储容灾。。。连参与的激情都没有了,没啥太大的技术心动。。。。


    我不怕你骗我。。。我就怕你骗不住我。。。。


    这个季节。。。风不静。。。心不平。。。雨不来。。。。花不开。。。。叶不落。。。而我。。。。还在这里。


    

    还好,我脾气不大。。。还好,我不粗鲁。。。还好,我的脑子只是暂时不见了。。。依旧会回来。。。。

    


推荐站点

  • 腾讯腾讯

    腾讯网(www.QQ.com)是中国浏览量最大的中文门户网站,是腾讯公司推出的集新闻信息、互动社区、娱乐产品和基础服务为一体的大型综合门户网站。腾讯网服务于全球华人用户,致力成为最具传播力和互动性,权威、主流、时尚的互联网媒体平台。通过强大的实时新闻和全面深入的信息资讯服务,为中国数以亿计的互联网用户提供富有创意的网上新生活。

    www.qq.com
  • 搜狐搜狐

    搜狐网是全球最大的中文门户网站,为用户提供24小时不间断的最新资讯,及搜索、邮件等网络服务。内容包括全球热点事件、突发新闻、时事评论、热播影视剧、体育赛事、行业动态、生活服务信息,以及论坛、博客、微博、我的搜狐等互动空间。

    www.sohu.com
  • 网易网易

    网易是中国领先的互联网技术公司,为用户提供免费邮箱、游戏、搜索引擎服务,开设新闻、娱乐、体育等30多个内容频道,及博客、视频、论坛等互动交流,网聚人的力量。

    www.163.com
  • 新浪新浪

    新浪网为全球用户24小时提供全面及时的中文资讯,内容覆盖国内外突发新闻事件、体坛赛事、娱乐时尚、产业资讯、实用信息等,设有新闻、体育、娱乐、财经、科技、房产、汽车等30多个内容频道,同时开设博客、视频、论坛等自由互动交流空间。

    www.sina.com.cn
  • 百度一下百度一下

    百度一下,你就知道

    www.baidu.com