微服务架构

微服务架构

什么是微服务架构风格?

微服务架构风格是将单个应用程序实现为一组小服务的软件设计开发方法,每个小服务都运行在自己的进程中,并以轻量化的机制进行通信(基于HTTP或RPC)。这些小服务围绕业务功能构建,可以通过全自动化部署机制进行独立部署。这些小服务应用最少的集中化管理(去中心化),他们可以用不同的编程语言编写,也可以使用不同的数据存储技术

关键特征:

  • 服务解耦(区别于单体架构风格的逻辑解耦)
  • 每个服务打成独立的包,独立发布部署
  • 跨进程、跨网络
  • 动态注册、动态发现
  • 数据库独立

微服务架构设计:分布式框架+高可用设计

更多:

  • 服务注册、发现
  • 动态发现:负载均衡、请求路由
  • 序列化、反序列化(通信、网络传输)
  • 高可用:熔断、限流、重试、降级
  • 运维/可观测性:故障注入、日志、监控、metrics
  • 安全:身份认证、加密解密、访问控制

组织、流程、工具链、自动化基础设施…

为什么要微服务架构风格?

互联网应用的需求:大容量、高并发、弹性伸缩、快。

并不是所有的服务都适合微服务架构,微服务架构需要一定的门槛:

  1. Rapid Provisioning
    • 快速申请资源,资源池、云
  2. Basic Monitoring / 高可用
    • 日志服务、监控告警、服务调用链
    • 熔断、限流、降级
  3. Rapid application deployment
    • Deploy Pipeline、自动化
  4. Organizational shift(组织转变)
    • DevOps Culture
微服务架构的关键特征
  1. 通过服务进行组件化(物理解耦)
  2. 围绕业务能力进行组织(康威定律)
  3. Products not Projects(驱动力&价值)
  4. 只能端点和哑管道(非总线式)
  5. 去中心化治理
  6. 去中心化数据管理(数据解耦)
  7. 基础设施自动化(依赖自动化)
  8. Design for failure(面向失败设计)
  9. 演进式设计(可独立替换)
微服务架构的优缺点

优势:

  1. 简单 - 门槛低、易于维护、已与开发
  2. 可独立部署 - 并行开发、独立发布部署、快速上线
  3. 可独立技术选择
  4. 创新
  5. 规模增长

缺点:

  1. 分布式系统 - 系统复杂度增加、故障概率增加、故障定位困难,影响可用性;额外的性能损失;事务一致性问题
  2. 服务多 - 部署、升级复杂度增加,工作量增加

启示:

  • 如何选择:大容量、高并发、动态资源申请;业务变化快、小团队、敏捷;系统已具有一定规模,演进阶段时的选择…
  • 主要是企业应用类软件领域,电商应用、内容订阅应用等
  • 考量:组织架构、软件形态、软件发布方式、所处阶段、基础能力
  • 如果你不能正确地构建大型单体应用,那么微服务也帮不了你
微服务架构的主要技术服务和组件
  • 服务注册发现:Eureka,Dubbo,Consul,ZooKeeper,Etcd,Nacos
  • 路由&负载均衡:Ribbon,Dubbo,HSF,DSF
  • 分布式服务框架:REST,gRPC,HSF,Dubbo,Hessian,DSF
  • 序列化/反序列化:Protobuf,Hessian2,JSON,kryo,FST,Avro,BSON
  • 服务网关:Zuul,SpringCloudGateway,CSB,APIFabric
  • 服务配置:Archaius,SpringCloudConfig,Consulconfig,Apollo,ACM
  • 服务熔断:Hystrix,resilience4j,Sentine,DSF
  • 链路追踪:SpringCloudSleuth,Zipkin,Htrace,Turbine,ARMs,SkyWalking,DV
  • 日志服务:logback,ElasticSearch,DV
  • 监控平台:Promethues,Kibana,grafana,Springbootadmin,DV
  • 分布式事务服务:GTS,Seata,FMT
  • 应用容器:Karyon,ali-tomcat,OpenAS
DDD领域驱动设计
云原生
资源下载链接为: https://pan.quark.cn/s/a55a57705e7e “八爪鱼采集器8.1.24.zip”是一个包含八爪鱼采集器8.1.24版本的压缩包。八爪鱼采集器是一款功能强大的网页数据抓取工具,能够帮助用户自动化地从互联网中提取各类信息,例如文章内容、产品价格、用户评价。等它在数据分析、市场研究、竞争情报等领域具有重要的应用价值。 压缩包内包含以下四个文件: “Octopus Setup 8.1.24.exe”:这是八爪鱼采集器的安装程序。用户可以通过运行该文件在计算机上安装8.1.24版本的八爪鱼采集器。安装过程中,系统会提示用户阅读并接受许可协议,选择安装路径,并且可能需要管理员权限来完成安装。 “八爪鱼8版本说明.txt”:该文本文件详细介绍了八爪鱼采集器8版本的主要功能、改进点和更新内容。它可能涵盖新功能的说明,例如更智能的爬虫算法、增强的数据处理能力、优化的用户界面等。此外,还可能包含关于如何使用新版本的指导,以及与旧版本的对比。 “安装前必读.txt”:这是一个重要的文档,用户在安装八爪鱼采集器之前应仔细阅读。它可能包含系统需求、安装步骤以及注意事项,例如确保操作系统兼容性、关闭杀毒软件以避免误报、预留足够的硬盘空间等,以确保安装过程顺利且安全。 “配置规则必读.txt”:这是一份关于如何配置和定制八爪鱼采集器的指南,尤其是针对新用户。采集器的配置规则是其核心功能之一,用户可以根据这些规则设置要爬取的网站、指定抓取的数据字段、设定爬取频率以及数据处理方式等。该文档可能包含一系列实例和最佳实践,帮助用户更好地理解和使用八爪鱼采集器的功能。 八爪鱼采集器8.1.24版本提供了一套完整的网页数据采集解决方案,从安装到配置,再到实际采集操作,都有详细的指导文件。用户通过学习和使用该工具,可以高效地从网络上获取大量有价值的信息,为各种业务决策提供
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值