当前位置: 首页 > news >正文

头像网站模板上海建立公司网站

头像网站模板,上海建立公司网站,不登陆不收费的网站链接,微信网站搭建公司1.初识微服务 1.1.什么是微服务 微服务#xff0c;就是把服务拆分成为若干个服务#xff0c;降低服务之间的耦合度#xff0c;提供服务的独立性和灵活性。做到高内聚#xff0c;低耦合。 1.2.单体架构和微服务架构的区别#xff1a; 单体架构#xff1a;简单方便#…1.初识微服务 1.1.什么是微服务 微服务就是把服务拆分成为若干个服务降低服务之间的耦合度提供服务的独立性和灵活性。做到高内聚低耦合。 1.2.单体架构和微服务架构的区别 单体架构简单方便高度耦合扩展性差适合小型项目。例如学生管理系统 分布式架构松耦合扩展性好但架构复杂难度大。适合大型互联网项目例如京东、淘宝 微服务一种良好的分布式架构方案 ①优点拆分粒度更小、服务更独立、耦合度更低 ②缺点架构非常复杂运维、监控、部署难度提高 SpringCloud是微服务架构的一站式解决方案集成了各种优秀微服务功能组件 1.3.什么是SpringCloud SpringCloud是一种微服务框架集成了各种微服务功能组件并基于SpringBoot实现了这些组件的自动装配从而提供了良好的开箱即用体验。 1.4.微服务技术对比 2.Eureka注册中心 如果没有Eureka就要把服务调用代码写死下面是例子 //配置类注册restTemplate的bean Beanpublic RestTemplate restTemplate() {return new RestTemplate();}Autowired private RestTemplate restTemplate; String url http://localhost:8081/user/order.getUserId(); User user restTemplate.getForObject(url,User.class); order.setUser(user);Eureka架构中微服务角色有两类 EurekaServer服务端注册中心 记录服务信息心跳监控 EurekaClient客户端 Provider服务提供者 注册自己的信息到EurekaServer每隔30秒向EurekaServer发送心跳 consumer服务消费者 根据服务名称从EurekaServer拉去服务列表基于服务列表做负载均衡选中一个微服务后发起远程调用 2.1.Eureka作用 消费者如何获取服务提供者具体信息 提供者启动时向eureka注册自己的信息eureka保存这些信息消费者根据服务名称向eureka获取提供者信息 如果有多个服务提供者消费者利用负载均衡算法从服务器列表挑选一个消费者如何感知服务提供者健康状态 提供者每30s想EurekaServer发送心跳请求报告健康状态eureka会更新记录服务器列表信息不健康的会被删除消费者就可以拉取到最新信息 2.2.搭建Eureak服务 流程搭建注册中心 -- 服务注册 -- 服务发现 2.2.1.搭建Eureka服务 1.引入依赖服务器依赖 dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-server/artifactId /dependency2.加注解EnableEurekaServer表示启用Eureka服务 package cn.itcast.eureka;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;SpringBootApplication EnableEurekaServer public class EurekaApplication {public static void main(String[] args) {SpringApplication.run(EurekaApplication.class, args);} }3.编写配置文件application.yml把eureka注册为服务 server:port: 10086 # 服务端口 spring:application:name: eurekaserver # eureka的服务名称 eureka:client:service-url: # eureka的地址信息defaultZone: http://127.0.0.1:10086/eureka2.3.2.服务注册 1.引入依赖客户端依赖 dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-client/artifactId /dependency2.注册服务配置eureka地址 spring:application:name: userservice eureka:client:service-url:defaultZone: http://127.0.0.1:10086/eureka2.3.3.服务发现(服务拉取) 1.添加依赖(消费者也要添加客户端依赖) 2.配置文件(消费者也要添加到服务) 3.修改url路径(服务拉取) String url http://user-service/user/order.getUserId();User user restTemplate.getForObject(url,User.class);order.setUser(user);4.负载均衡LoadBalanced //配置类注册restTemplate的beanBeanLoadBalancedpublic RestTemplate restTemplate() {return new RestTemplate();}2.3.Eureka和Ribbon Eureka是一个服务注册和发现的组件Ribbon是一个负载均衡的组件。 负载均衡流程 2.3.1.Ribbon负载均衡策略 负载均衡的规则都定义在IRule接口中而IRule有很多不同的实现类 不同规则的含义如下 内置负载均衡规则类规则描述RoundRobinRule简单轮询服务列表来选择服务器。它是Ribbon默认的负载均衡规则。AvailabilityFilteringRule对以下两种服务器进行忽略 1在默认情况下这台服务器如果3次连接失败这台服务器就会被设置为“短路”状态。短路状态将持续30秒如果再次连接失败短路的持续时间就会几何级地增加。 2并发数过高的服务器。如果一个服务器的并发连接数过高配置了AvailabilityFilteringRule规则的客户端也会将其忽略。并发连接数的上限可以由客户端的..ActiveConnectionsLimit属性进行配置。WeightedResponseTimeRule为每一个服务器赋予一个权重值。服务器响应时间越长这个服务器的权重就越小。这个规则会随机选择服务器这个权重值会影响服务器的选择。ZoneAvoidanceRule以区域可用的服务器为基础进行服务器的选择。使用Zone对服务器进行分类这个Zone可以理解为一个机房、一个机架等。而后再对Zone内的多个服务做轮询。BestAvailableRule忽略那些短路的服务器并选择并发数较低的服务器。RandomRule随机选择一个可用的服务器。RetryRule重试机制的选择逻辑 默认的实现就是ZoneAvoidanceRule是一种轮询方案 2.3.2.Ribbon负载均衡配置 两种方式的区别 代码方式全局配置所有order的服务者都是这个配置配置文件方式给某个微服务配置负载均衡规则比如只配置userservice服务 代码方式在order-service中的OrderApplication类中定义一个新的IRule Bean public IRule randomRule(){return new RandomRule(); }配置文件方式在order-service的application.yml文件中添加新的配置也可以修改规则 userservice: # 给某个微服务配置负载均衡规则这里是userservice服务ribbon:NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule # 负载均衡规则 注意一般用默认的负载均衡规则不做修改。 2.3.3.饥饿加载 默认是懒加载第一次使用才加载LoadBalanceClient 饥饿加载启动即加载 ribbon:eager-load:clients: - user-service # 指定饥饿加载的服务名称多个就换行加 -enabled: true # 开启饥饿加载3.Nacos注册中心 Nacos是阿里巴巴的产品现在是SpringCloud中的一个组件。相比Eureka功能更加丰富在国内受欢迎程度较高。 3.1.服务注册到nacos 在Nacos的GitHub页面提供有下载链接可以下载编译好的Nacos服务端或者源代码 GitHub主页https://github.com/alibaba/nacos GitHub的Release下载页https://github.com/alibaba/nacos/releases 下载解压到无中文无空格的目录下 启动cmd命令 startup.cmd -m standalone1.引入依赖 在cloud-demo父工程的pom文件中的dependencyManagement中引入SpringCloudAlibaba的依赖 dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-alibaba-dependencies/artifactIdversion2.2.5.RELEASE/versiontypepom/typescopeimport/scope /dependency然后在user-service和order-service中的pom文件中引入nacos-discovery依赖 dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-discovery/artifactId /dependency注意不要忘了注释掉eureka的依赖。 2.配置nacos地址 在user-service和order-service的application.yml中添加nacos地址 spring:cloud:nacos:server-addr: localhost:8848注意不要忘了注释掉eureka的地址 3.2.服务分级存储模型 一个服务有多个实例同一个机房内的实例划分为一个集群 一级集群 二级服务 三级实例 3.2.1.配置集群 方法一 修改user-service的application.yml文件添加集群配置 spring:cloud:nacos:server-addr: localhost:8848discovery:cluster-name: HZ # 集群名称修改一个集群启动对应实例再修改集群再启动实例即可实现集群划分配置。 方法二 也可以修改服务的VM选项 -Dserver.port8083 -Dspring.cloud.nacos.discovery.cluster-nameSH 3.2.2.配置同集群优先的负载均衡 1.给消费者添加集群 spring:cloud:nacos:server-addr: localhost:8848discovery:cluster-name: HZ # 集群名称2.在消费者yml文件中修改负载均衡规则 userservice:ribbon:NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule # 负载均衡规则 3.3.配置权重 权重在可以设置在0~1之间权重越高被访问的越多权重为零不会被访问 3.4.环境隔离 Nacos提供了namespace来实现环境隔离功能。例如开发环境和生产环境隔离 nacos中可以有多个namespacenamespace下可以有group、service等不同namespace之间相互隔离例如不同namespace的服务互相不可见每个namespace有唯一的id 在yml文件中添加namespace的id spring:cloud:nacos:server-addr: localhost:8848discovery:cluster-name: HZnamespace: 492a7d5d-237b-46a1-a99a-fa8e98e4b0f9 # 命名空间填ID3.5.Eureka和nacos的区别 Nacos与eureka的共同点 都支持服务注册和服务拉取都支持服务提供者心跳方式做健康检测 Nacos与Eureka的区别 Nacos支持服务端主动检测提供者状态临时实例采用心跳模式非临时实例采用主动检测模式临时实例心跳不正常会被剔除非临时实例则不会被剔除Nacos支持服务列表变更的消息推送模式服务列表更新更及时Nacos集群默认采用AP(强调服务可用性)方式当集群中存在非临时实例时采用CP(强调数据可靠性和一致性)模式Eureka采用AP方式 Nacos的服务实例分为两种l类型 临时实例如果实例宕机超过一定时间会从服务列表剔除默认的类型。 非临时实例如果实例宕机不会从服务列表剔除也可以叫永久实例。 配置一个实例为永久实例yml文件添加以下配置 spring:cloud:nacos:discovery:ephemeral: false # 设置为非临时实例
http://www.yutouwan.com/news/111320/

相关文章:

  • 深圳做网站公司那家比较好电子商务网站html模板
  • 百度网站推广外包孟州哪里可以做网站
  • 手机网站cms广州网站建设 名片制作 网站管理
  • 免费发布信息网站有哪些山东网站建设
  • 厦门微网站建设专业的营销网站
  • 网站建设中可能遇到的问题wordpress如何生成app
  • 免费发布信息网站大全注册任意的关键词或网站做引流
  • 如何查看网站的服务器位置制作网页查询系统
  • 织梦是什么网站建设文化网站的目的和意义
  • 中小企业门户网站建设策略怎么上网做网站
  • 郑州建站程序坪山住房及建设局网站
  • 网站开发工程师资格证wordpress转enlog
  • 做的网站太大怎么办公司网站维护分工
  • 莆田制作公司网站东南亚cod建站工具
  • 河北三河建设厅网站6本机运行wordpress
  • 遂宁网站建设哪家好启信宝
  • 专做影视评论的网站网站外接
  • 西安网站建设甘肃省建设厅官方网站
  • 建网站 网站内容怎么做网站建设又叫什么软件
  • 自助建站固定在网站底部
  • 网站图怎么做会高清室内设计学校哪些
  • 微信网站开发视频企业邮箱手机怎么登录
  • 地方门户网站建站流程180天做180个网站
  • 网站有什么用中信建设有限责任公司招聘
  • 免费上外国网站的浏览器建设系统网站
  • 怎样投网站广告wordpress 文章链接地址
  • 中小型企业网站优化案例wordpress 网页慢
  • 杭州首传网站建设公司怎么样1688app
  • 网站建设 企炬推广app拉人头赚钱
  • 商务网站建设与维护 试题seo网页优化平台