微服务理解

一、什么是
微:体积小         服务:区别于系统,用户可以感知到的最小功能集
二、为什么要用(优点)
与微服务相对的为 :   单体架构
单体架构微服务
全部模块耦合在一起每个模块相当于一个单独的项目,独立运行在自己的进程里
共用一个数据库,存储单一多种存储方式redis,mysql
开发所用技术一样可使用不同的开发技术,灵活
三、如何用(出了问题的解决方案)
1.提供统一服务入口,让微服务对前台透明
提供安全,过滤,流控等API管理功能
2.服务之间的通讯(服务调用)
REST(JAX-RS,Spring Boot)
RPC(Thrift, Dubbo)
异步消息调用(Kafka, Notify)
3.服务查找
基本都是通过zookeeper等类似技术做服务注册信息的分布式管理,即服务注册
当服务上线时,服务提供者将自己的服务信息注册到ZK(或类似框架)
,并通过心跳维持长链接,实时更新链接信息
4.服务挂了(应对措施)
重试机制
限流
熔断机制
负载均衡
降级(本地缓存
负载均衡常用策略
1.随机(随机分配给内部的多个服务器)
2.轮询(轮流分配给内部的服务器)
3.加权轮询(根据每个服务起的不同处理能力,分配不同的权值)
四、出现的问题(缺点)
运维要求高
分布式的复杂程度
重复劳动
出现问题不容易找到
五、什么项目适合用微服务
按照业务功能的独立性划分
若业务偏向底层、操作系统内核、存储系统、网络系统等,
功能和功能之间有着紧密的配合关系,如果强制拆分为较小的服务单元,会让集成工作量急剧上升
六、现有的微服务框架
Spring Cloud:http://projects.spring.io/spring-cloud(现在非常流行的微服务架构)
Dubbo
加监控日志的功能
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值