1 springcloud注册中心eureka和zookeeper注册中心的区别:

eureka注册中心,在服务选主的时候服务还是可以用的,zookeeper注册中心在选举的时候整个服务瘫痪了,是不可以用的,虽然eureka版本不更新了,
但是老版本的功能适用,满足需求,所以我们还是使用eureka注册中心

2 项目中使用的定时任务采用的是什么

采用的是开源项目徐学礼开发的xxl-job,springtask在传统的项目中是可以使用的,但是在分布式环境中,会存在多个执行的情况,虽然可以使用redis
分布锁实现或者zookeeper分布式锁实现,谁拿到锁就执行,但是那是重复造轮子,所以我们寻找了开源项目xxl-job,他的实现思路跟锁的实现是一样的

3 分布式锁的实现原理

redis跟zookeeper的分布式锁实现原理是一样的,redis是创建key,如果key存在代表存在,就不创建,代表有人拿到锁了,如果key不存在就重新创建,
zookeeeper是创建节点node来实现的

4 hystrix熔断机制
分为两种,一种是线程池熔断,一种是信号量熔断,项目中采用的是线程池熔断,降级,hystrixcommod这个是返回一个结果的,hystrixObservecommod返回多个
结果的,在项目中调用时候,写一个调用服务的实现类,配置下就可以,就可以使用了,同时配置同一接口的访问量,重试时间

5 网关zuul和gateway的区别
zuul采用的是bio,gateway采用的是netty,性能,后者较好,如果写的是前者,就说项目还没有升级,网关其实就相当于门面模式,当我们进入时候,
看到的只是门面,但是根据我们的需要会转发到不同的服务

6 服务注册的安全性,

采用springsecurity进行保护安全的,不是所有人都可以的注册

7 用户信息模块登录信息的维护,采用的jwt

8 feign调用注意事项,必须要加上参数,即使参数名跟参数一样,也是必须要加上,是由于底层实现时候,需要根据这个动态实现,否则无法知道
参数的传递方式

9 接口的安全性,才可以springscurity进行的,

10 ribbon负载均衡:
他跟nginx负载均衡不同.nginx负载均衡是借助外部进行负载均衡,ribbon采用的是代码上的负载均衡,负载均衡常用的策略用,权重,url hash,ip hash,轮询,默认采用的
是轮询

11 hash算法,
取得值的hash进行特定的分发,假设你设定对3 取余,那么 就会根据余数进行分配,例如 redis 采用的是hash solt算法 ,除以16384,也就是将redis集群分为16384个槽,再进行分配

springcloud应用思考的更多相关文章

  1. springcloud微服务架构的思考

    在网上找到一张关于微服务体系架构的图 应用组件: 首先对于整个程序的入口应该是网关,zuul部分 这个组件在springcloud中的gateway服务之后,zuul可以进行网关分配,根据想应的路劲进 ...

  2. SpringCloud(7)---网关概念、Zuul项目搭建

    SpringCloud(7)---网关概念.Zuul项目搭建 一.网关概念 1.什么是路由网关 网关是系统的唯一对外的入口,介于客户端和服务器端之间的中间层,处理非业务功能 提供路由请求.鉴权.监控. ...

  3. 以实例说明微服务拆分(以SpringCloud+Gradle)

    前言 之前,我都是说了很多的关于微服务的概念,说到底,很多人看了之后会认为没有什么意思,因为没有实际的东西说明,即使每个概念都明白了,也很难赋之实践.所以这次,我来用一个实际的例子去说明,在实际的项目 ...

  4. springcloud学习第一坑

    我是根据周立先生所写的<Spring+Cloud与Docker微服务架构实战>来学习SpringCloud的,我会记录下来我日常遇到的所有问题,包括但不仅只包括SpringCloud的问题 ...

  5. SpringCloud系列九:SpringCloudConfig 基础配置(SpringCloudConfig 的基本概念、配置 SpringCloudConfig 服务端、抓取配置文件信息、客户端使用 SpringCloudConfig 进行配置、单仓库目录匹配、应用仓库自动选择、仓库匹配模式)

    1.概念:SpringCloudConfig 基础配置 2.具体内容 通过名词就可以发现,SpringCloudConfig 核心作用一定就在于进行配置文件的管理上.也就是说为了更好的进行所有微服务的 ...

  6. 深入理解SpringCloud与微服务构建学习总结

    说明:用时 from 2018-11-16 to 2018-11-23 七天 0 放在前面   什么是微服务?   微服务是一个分布式系统.微服务架构的风格,就是将单一程序开发成一个微服务,每个微服务 ...

  7. SpringCloud 简单理解

    0.SpringCloud,微服务架构.包括 服务发现(Eureka),断路器(Hystrix),服务网关(Zuul),客户端负载均衡(Ribbon).服务跟踪(Sleuth).消息总线(Bus).消 ...

  8. 一个神秘现象引发对beego框架的思考

    小强最近在项目中遇到了一个很奇怪的问题:在整改日志规范时,为了避免影响现有的代码结构以及改动尽可能小的前提下,在调用记日志的SDK处将某一个字段值首字母改为大写,代码示例如下: fmt.Println ...

  9. Dubbo 在 K8s 下的思考

    作者 | 曹胜利  Apache Dubbo PMC 导读:Dubbo 作为高性能 Java RPC 框架的刻板印象早已深入人心,在 Cloud Native 的架构选型上,Spring Cloud ...

随机推荐

  1. MVC DbContext

    指定数据连接,指定表名,移除表名复数化(表名后面不加s),设置字段约束,主外键关系. using MvcApplication1.Models; using System; using System. ...

  2. js获得URL中的参数

    js获得URL中的参数 function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + &quo ...

  3. VMware CentOS LVM磁盘扩容

    一. 在虚拟机上增加磁盘空间 如下图. 增加完后会有提示 "磁盘已成功扩展.您必须从客户机操作系统内部对磁盘重新进行分区和扩展文件系统.是继续完成以下步骤才算成功. 二.调整虚拟机磁盘LVM ...

  4. Greeplum 系列(八) 数据维护

    Greeplum 系列(八) 数据维护 一.事务管理 begin(start transaction) # 开始事务 savepoint # 保存事务回滚点 rollback # 回滚事务 end(c ...

  5. myeclipse 快捷键,从步骤开始的大括号定位到匹配方法结束的大括号

    myeclipse 快捷键,从方法开始的大括号定位到匹配方法结束的大括号转至匹配的括号 Ctrl+Shift+P ctr+shift+r   文件名搜索文件 ctr+h           搜索文件里 ...

  6. # 20155327 2016-2017-4 《Java程序设计》第9周学习总结

    20155327 2016-2017-4 <Java程序设计>第9周学习总结 20155327 2016-2017-4 <Java程序设计>第9周学习总结 教材学习内容总结 了 ...

  7. PHP(九)数组(2)

  8. 从Objective-C到Swift,你必须会的(一)#pragma mark

    在Objective-C里,为了让代码组织的有序也方便用control+6的快捷键在Xcode中查找,所以出现了一个大家都很熟悉的东东.这就是:#prama mark. #pragma mark  但 ...

  9. Python + Robotframework + Appium 之APP自动化测试小试牛刀(Android)

    Robotframework如何好?这里先不说了~ Python更不用说了~ Appium前面的文章有介绍~ 今天直接来Python+Robotframework+Appium 三者结合起来,对And ...

  10. 对ConditionQueue和锁的理解

    1. 什么时候使用conditionQueue 使用conditionQueue的一个最基本的条件是,操作和状态相关,而且是多线程同时访问的状态. 也就是说在使用conditionQueue的时候, ...