微服务

微服务

基于微服务去开发一个分布式的项目

1. 什么是微服务?

微服务英文名称 Microservice,Microservice架构模式就是将整个Web应用组织为一系列小的Web服务。这些Web服务可以独立的编译及部署,并通过各自暴露的API接口相互通讯。他们彼此相互协作,作为一个整体为用户提供功能,却可以独立的进行扩展。

2.分布式和微服务的区别

1)分布式是一个概念性的东西,分布式项目就是将项目拆分为多个模块,分不到不同的服务器上
2)微服务也是将一个项目按照模块进行拆分,但是可以部署到同一台服务器上,同一台服务器 端口号不能相同。
3)事实上,我们开发项目进行部署时不会将系统部署到同一台服务器上,我们会使用微服务思想开发项目,分布式进行项目部署。
4)分布式主要强调开发好的项目如何部署,微服务强调项目怎么去拆分和开发
5) 分布式就是将服务部署到不同的节点上,一个服务可能提供多个功能,而微服务相对于分布式来说粒度更细。
6)(重要) 在生产环境(我们项目上线之后运行的环境)中,分布式部署的应用不一定是微服务架构,而微服务架构一定是分布式部署的。

3.微服务架构需要的功能或使用场景

1)我们把整个系统根据业务拆分为几个子系统
2)每个子系统可以部署多个应用,多个应用之间使用负载均衡。
3)需要一个服务注册中心,所有的服务都在注册中心注册,负载均衡也是通过在注册中心注册的服务来使用一定的策略来实现。
4)所有的客户端都通过同一个网关地址访问后台的服务,通过路由器配置,网关来判断一个URL请求由哪个服务处理。请求转发到服务上的时候也是用负载均衡。
5)服务之间有时候也需要相互访问,例如有一个用户模块,其他服务在处理一些业务的时候,要获取用户服务的用户数据。
6) 需要一个断路器,及时处理服务调用事的超时和错误,防止由于其中一个服务的问题而导致整个系统的瘫痪。
7)还需要一个监控功能,监控每个服务调用花费的时间等。
目前主流的微服务框架:Dubbo,SpringCloud等

4.微服务带来的问题

1)服务如何管理
2)服务宕机如何处理
3)负载均衡怎么做
4)服务之间服务调用
5)统一网关怎么实现。
6)怎么路由到指定的服务处理该请求
7)高并发情况下,怎么设置接口限流(想一想汽车限号的问题)
8)…

5.SpringCloud解决问题

首先SpringCloud并不是微服务,我们需要使用SpringCloud去解决微服务框架中的问题,来实现微服务框架。
微服务是一种理论,基于这种理论 我们需要使用具体的技术比如SpringCloud或者Dubbo去实现它,
微服务就相当于一张建筑的图纸,一个想法
SpringCloud就是一个建筑团队,如何去实现微服务,

配置管理(注册中心Eureka,Dobbo的是Zookeeper)、服务发现,服务注册,断路器(非常重要,容错机制,限流,调用接口失败如何解决)、路由策略(接口分发哪台机器上去)、负载均衡、全局锁、分布式会话、客户端调用、接口网关、服务管理系统

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hyperf 是一个基于 PHP 的高性能微服务框架,它是由 Hyperf 开发团队基于 Swoole 扩展开发的。Hyperf 框架具有轻量级、高性能、灵活可扩展等特点,适用于构建各种类型的微服务应用。 以下是 Hyperf 微服务框架的一些特点和功能: 1. 高性能:Hyperf 基于 Swoole 扩展,充分利用了 Swoole 的协程特性和异步非阻塞的 IO 模型,提供了卓越的性能表现。 2. 轻量级:Hyperf 框架本身非常轻量级,核心代码量少,运行时内存占用低,可以快速启动和运行。 3. 灵活可扩展:Hyperf 提供了丰富的组件和扩展机制,可以根据项目需求进行灵活的定制和扩展。 4. 支持多种协议:Hyperf 支持 HTTP、WebSocket、TCP、UDP 等多种协议,可以满足不同类型的微服务应用需求。 5. 强大的依赖注入容器:Hyperf 内置了一个强大的依赖注入容器,可以方便地管理和注入各种组件和服务。 6. 高度可测试性:Hyperf 提供了丰富的测试工具和测试支持,可以方便地进行单元测试和集成测试。 7. 支持分布式部署:Hyperf 支持分布式部署,可以通过配置中心、服务注册与发现等机制实现微服务的高可用和负载均衡。 8. 提供丰富的组件:Hyperf 提供了许多常用的组件,如数据库 ORM、缓存、消息队列、验证器等,可以快速开发各种类型的微服务应用。 总之,Hyperf 是一个功能强大、性能优越的 PHP 微服务框架,适用于构建高性能、可扩展的微服务应用。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值