springCloud微服务学习笔记一

        虽然入行已有4载,但所学甚浅,涉猎的技术虽然繁多,但不得其精妙所在,如若不是为了继续生存,可能自己早已随波逐流,哪还能有心思在这写博客。虽已过五五之数,但也算及时悔悟,惊若心中存有梦,唯有沉淀免自辱。

         在程序员这条路上,必定是没有风平浪静,大浪淘沙,虽然前仆后继者众多,到头来终究是黄粱一梦。

SpringCloud个人理解:(本来还想书中抄一段。。。。

         首先spring Cloud 是基于spring Boot来搭建的,微服务的理念提出后,spring Cloud并因此而诞生,他(框架集合)属于微服务架构,对于软件开发者来说既然是架构必然是有若干个框架和组件所组成,spring Cloud顾名思义是基于spring生态圈,至于组件的话就太多了这里我就不一一罗列了,开发中遇到了,引用了那就属于其组件,应为spring特意为他们做了支持。

Spring Boot优点 :

  1.            基于Spring开发web应用更加容易
  2.            采用基于注解方式配置,避免编写大量重复的xml配置文件
  3.            可以轻松集成Spring家族的其他框架,比如Spring JDBC,Spring Data等
  4.            提供嵌入式服务器,开发和部署都变得非常方便

Spring Boot注解:

  1. @SpringBootApplication   表示该类是一个Spring Boot应用,可以直接通过main方法启动
  2. @ RestController   控制层注解Controller和ResponseBody组合注
  3. @RequestMapping 请求接口内容配置
  4. @Service: 注解在类上,表示这是一个业务层bean
  5. @Controller:注解在类上,表示这是一个控制层bean
  6. @Repository: 注解在类上,表示这是一个数据访问层bean
  7. @Component: 注解在类上,表示通用bea能
  8. @Autowired:按类型装配
  9. @Resource: 按名称装配
  10. @Configuration:注解在类上,表示这是一个IOC容器,相当于spring的配置文件,java配置的方式。 IOC容器的配置类
  11. @Bean: 注解在方法上,声明当前方法返回一个Bean
  12. @PostConstruct:注解在方法上,构造函数执行后执行。!!!!!!!!!!!!!!!!!!!!!!!!!!
  13. @PreDestroy: 注解在方法上,在Bean销毁前执行。!!!!!!!!!!!!!!!!!!!!!!!!!!
  14. @ComponentScan:注解在类上,扫描标注了@Controller等注解的类,注册为bean
  15. @Lazy(true):  延迟初始化

 https://www.cnblogs.com/ldy-blogs/p/8550406.html(更详细推荐地址)

接下来是spring Cloud的一些组件

eureka注册中心:

      作为注册中心的实现与之相同功能的还有如zookeeper、Consul等等。Eureka是一款基于AP原则构建,而与dubbo常用与一起的zookeeper是基于CP原则构建,分布式领域中CAP定理,C即为数据一致性,A为服务可用性,P为服务对网络分区故障的容错性。

客户端负载均衡器Ribbon:

     目前主流的负载方案分为两种:一种是集中式负载均衡,在消费者和服务费方中间使用独立的代理方式进行负载,有硬件的,也有软件的如Nginx。另一种则是自己在客户端做负载均衡,ribbon就是一种这样的实现。在前面的一个组件eureka中就自动集成了ribbon。既然是负载均衡当然得有可配置的均衡策略默认基本都是轮询,还要如权重,hash,随即等。各种各样都是基于配置选择。

声明式REST客户端Feign:

     在spring 下的开发中常用的接口调用有httpclient(apache提供),OkHttp,Httpurlconnection(基于jdk实现),RestTemplate(spring提供用于访问rest服务的客户端。Feign的使用我单纯的从书中学习觉得与hession非常的类似,通过注解的接口打成jar包客户端引入后就跟调用本地方法一样。

Hystrix服务容错处理:

    在微服务架构下,很多服务都是互相依赖,如果不能对依赖的服务进行隔离,那么服务本身发生故障,Hystrix通过HystrixCommand对调用进行隔离,这样可以阻止故障的连锁反应,能够让接口调用快速失败并恢复正常,或者回退并优雅降级。其中回退是指某个请求错先错误在预先的请求接口中配置callbak接口,当出现错误就跳到指定的接口中处理,不至于中断程序。还有一大优势是可以合并请求,节省程序在网络请求中的时间开销,也可以配置缓存请求结果非常实用。Hystrix的容错策略有两种一种是线程隔离,信号量隔离。

     Hystrix监控,整合Dashboard查看数据监控,开启请求接口信息记录,并借助Dashboard图形化展示。

     Dashboard整合Turbine支持聚合集群数据监控。

学习待续。。。。。。。。。。。。。。。。

     

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值