1.微服务概述(待完善)

1.他是什么?

微服务就是把一个项目拆分成独立的多个服务,并且多个服务是可以独立运行的,而每个服务都会占用线程。

2.本质

(1)微服务,关键其实不仅仅是微服务本身,而是系统要提供一套基础的架构,这种架构使得微服务可以独立的部署、运行、升级,不仅如此,这个系统架构还让微服务与微服务之间在结构上“松耦合”,而在功能上则表现为一个统一的整体。
(2)微服务的目的是有效的拆分应用,实现敏捷开发和部署 。

3.什么系统适合微服务?

答案淘宝,这个肯定没错,我所接触的微服务就是淘宝和之前公司的业务。但毫无疑问他们都是按照业务进行和功能划分的服务,那如何拆分?微服务的拆分粒度如何?	
[🔗可以看这个链接](https://blog.csdn.net/qq_31960623/article/details/124624448?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168198327216800217249108%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=168198327216800217249108&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-1-124624448-null-null.142%5Ev85%5Einsert_down1,239%5Ev2%5Einsert_chatgpt&utm_term=%E5%BE%AE%E6%9C%8D%E5%8A%A1%E6%8B%86%E5%88%86%E7%B2%92%E5%BA%A6&spm=1018.2226.3001.4187)

不想看我就给总结一下吧,当然我还是推荐你看,毕竟我总结是我的,不是你的
(1)纵向拆分(基于业务拆分)
(2)横向拆分(是从公共且独立功能维度拆分),用户信息是许多服务公用的,就可以拆分出来
(3)基于可靠性拆分,比如日志这种业务要求性不高,而秒杀这种性能要求高,那就可以拆分。
(4)原文还说了服务合并问题,其实我也经历过,当然因为业务发展的需要,合并了许多服务,后面我就被裁员了。为了下一个公司更好发展才有了这篇文章。😹

了解了一些概念性问题我们来点实际的。

4.微服务能用到哪些技术?

  • 服务网关:Getway,Zuul,Zuul2
  • 服务调用:Feign,OpenFeign
  • 服务注册与发现:Eureka,Zookeeper,Consul,Nacos
  • 负载均衡:
  • 服务降级: Hystrix,resilience4j,sentienl
  • 服务熔断:
  • 服务消息队列:
  • 配置中心管理:Config,Nacos,apollo
  • 自动化构建部署:k8s
  • 服务监控:
  • 服务链路追踪:
  • 服务定时任务:
  • 调度操作:
  • 服务总线:
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
分布式和微服务是两种不同的软件架构模式,用于构建大规模、可扩展和可维护的应用程序。它们有一些相似之处,但也有一些关键的区别。 分布式系统是由多个独立的计算机节点组成的系统,这些节点通过网络进行通信和协调,共同完成一个任务。每个节点可以独立运行,并且可以通过消息传递或远程过程调用等方式进行通信。分布式系统的目标是将一个大型任务分解为多个小任务,并在多个节点上并行执行,以提高性能和可靠性。 微服务是一种将应用程序拆分为一组小型、独立部署的服务的架构风格。每个微服务都是一个独立的、自治的服务单元,可以独立开发、部署和扩展。微服务之间通过轻量级的通信机制(如HTTP或消息队列)进行通信。微服务架构的目标是提高应用程序的可维护性、可扩展性和灵活性。 下面是它们之间的一些区别: 1. 复杂性:分布式系统通常更加复杂,因为需要处理节点之间的通信和协调。微服务架构通过将应用程序拆分为小型服务来降低复杂性,每个服务都有自己的职责和边界。 2. 独立性:微服务是独立部署和扩展的,每个服务可以独立开发和部署。分布式系统中的节点通常是紧密耦合的,它们需要共享状态和资源。 3. 通信方式:分布式系统通常使用底层的通信机制,如消息传递或远程过程调用。微服务使用轻量级的通信机制,如HTTP或消息队列。 4. 可伸缩性:微服务架构更容易实现可伸缩性,因为每个服务可以独立扩展。分布式系统的可伸缩性可能更具挑战性,因为需要考虑节点之间的通信和协调。 5. 故障隔离:微服务架构中的故障通常只会影响单个服务,而不会影响整个应用程序。分布式系统中的故障可能会影响整个系统的可用性。 6. 开发团队:微服务架构适合大型开发团队,因为每个服务可以由不同的团队负责开发和维护。分布式系统可能需要更多的协调和沟通,适合较小的开发团队。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值