zoukankan      html  css  js  c++  java
  • 微服务实践

    什么是微服务

    微服务的两个核心:

    • 微:服务粒度更细,即服务要细到API
    • 服务:提供好服务,让服务好用

    总结以上两点,来看这张图:

    输入图片说明

    从图可以看出,微服务很简单,好的架构就应该简单,我们将服务拆API,每个服务服务于一个完整的功能。

    我们将所有API扔到“云上”,用户通过连接“云”获取所有服务,“云”保证了更好的服务。

    所以做好微服务,“云”是关键。

    微服务的实现

    输入图片说明

    由图可知,微服务的关键是服务网关。

    微服务特点

    服务需要细化成API:

    • 每个服务由一组API组成
    • 以API形式对外提供统一格式的服务
    • 使用者可直接使用HTTP
    • API服务需要保证安全可靠

    微服务解决的问题:

    • 统一入口
    • 安全控制:放刷限流
    • 统一鉴权:应用鉴权,用户鉴权,OAuth鉴权,ACL
    • 协议转换:http,dubbo,protobuf
    • API配置管理
    • API上线,下线
    • API与服务接口映射
    • 监控与报警
    • 整体架构可扩展,高并发,分布式
    • 服务容器自动收缩,扩容

    方案

    输入图片说明

    • 负载均衡:nginx/lvs/f5
    • 微服务层:高性能服务网关,统一入口,API配置管理,分流鉴权,服务监控,协议转换
    • 服务治理层:成熟的服务治理框架dubbo,MQ服务之间解耦
    • 弹性云:服务docker化,基于访问压力的实时集群调度与管理

    弹性云

    弹性云可以保证提供更好的服务,这对运维有很高的要求。这里的弹性云是自动化运维解决方案,对访问压力进行监控,根据监控解决调度应用和发布回收。
    输入图片说明

  • 相关阅读:
    错误:找不到或无法加载主类
    CentOS 7 命令
    CentOS 7 分区
    Pow(x, n)
    Sum Root to Leaf Numbers
    linux下intel 82579LM 网卡驱动安装
    printf打印字符耗时多少
    数组中移动0至后面
    SDL多线程问题之--Unknown request in queue while dequeuing
    java学习123>>IO
  • 原文地址:https://www.cnblogs.com/xiguain/p/7838291.html
Copyright © 2011-2022 走看看