170923_Spring Cloud 微服务实战(翟永超著) 读书笔记(一)_什么是Spring Cloud?
来源:互联网 发布:sql server 认证 编辑:程序博客网 时间:2024/06/05 01:17
Spring Cloud是一个微服务架构实施的综合性解决框架。
什么是微服务架构?
微服务架构本质上还是SOA(面向服务架构)的一种实现。它的主旨在于将一个独立的系统拆分成多个小型服务,这些小型服务都在各自独立的进程中运行,服务之间通过基于HTTP(HyperText Transfer Protocol,超文本传输协议)的RESTful API(Application Programming Interface,应用程序编程接口)进行协作。每一个小型服务都具有独立的业务功能,并且每个服务都有完善的维护、测试以及部署机制。由于有了轻量级的通信协议作为基础,所以这些微服务可以使用不同的语言来进行编写。
什么是RESTful API?
REST的全称为(Representation State Transfer,表现层状态转换)
实施微服务会遇到哪些问题?
1)运维:需要维护的进程增加,运维过程需要更多的自动化。
2)业务上的逻辑依赖并不会消除,我们需要更加完善接口和版本管理,或是严格的遵循开闭原则。
3)分布式的复杂性
如何设计微服务架构?
1)服务组件化,不同于传统组件那样以嵌入的方式协同工作,服务是一种进程外的组件,它通过HTTP等通信协议进行协作。
2)按业务组织团队,以前按照技术层面将团队划分为DBA团队,运维团队,测试团队,后端、前端团队等等,若继续使用这种团队组织方式来实施对微服务架构的开发,当一个服务出现问题时,会引起团队的时间耗费和预算审批。所有在进行微服务架构的开发时,更建议按业务线的方式进行拆分。
3)以做“产品”的态度来对待每一个微服务。
4)智能端点和哑管道,在极度强调性能的情况下,有些团队会使用二进制的消息发送协议,例如:protobuf。即使是这样,这些系统仍然会呈现出“智能端点和哑管道”的特点,为了在易读性与高效性之间取得平衡。当然大多数Web应用或企业系统并不需要作出在这两者间做出选择,能够获得易读性就已经是一个极大的胜利了。
5)不是每一个问题都是钉子,不是每一个解决方案都是锤子。
6)根据结构或业务特性将不同的数据存储到不同的数据库之中,如把日志信息存储到MongoDB中或把用户登录信息存储到Redis之中。
7)基础设施自动化。
8)设计和考虑快速检测出故障源并尽可能地自动恢复服务。
9)演进式设计,初期以单体系统的方式设计和实施,后续逐渐将原来在单体系统中多变的模块逐步拆分出来。
什么是SOA?
Spring Cloud不同于其它Spring项目,它不再是一个基础框架项目,而是一个更高层次的、架构视角的综合性大型项目,其目标旨在构建一套标准化的微服务解决方案,让使用者在使用微服务理念构建系统时,在各个环节遇到的问题都能找到相应的组件来进行处理。Spring Cloud为微服务架构提供了一个“全家桶”套餐,这样有效的减少了我们在组件的选型和整合上花费的时间。
- 170923_Spring Cloud 微服务实战(翟永超著) 读书笔记(一)_什么是Spring Cloud?
- 170925_Spring Cloud 微服务实战(翟永超著) 读书笔记(二)_什么是Spring Cloud Eureka?
- 170926_Spring Cloud 微服务实战(翟永超著) 读书笔记(三)_Eureka详解
- 《Spring + Cloud微服务实战》读书笔记(一)————基础知识
- 《spring cloud微服务实战》读书笔记------目录
- 《spring cloud微服务实战》读书笔记——Spring Cloud Eureka(一)搭建一个注册中心
- 《spring cloud微服务实战》读书笔记——Spring Cloud Ribbon(一)RestTemplate
- 《spring cloud微服务实战》读书笔记——Spring Cloud Hystrix(一)快速入门案例
- 《spring cloud微服务实战》读书笔记——Spring Cloud Hystrix(四)使用详解(一)
- 《Spring + Cloud微服务实战》读书笔记(二)————Spring Boot
- 《Spring Cloud微服务实战》学习笔记(1)
- Spring cloud微服务实战——Eureka(一)
- 《spring cloud微服务实战》读书笔记——Spring Cloud Eureka(五)Eureka详解
- 《spring cloud微服务实战》读书笔记——Spring Cloud Hystrix(二)工作流程
- 《spring cloud微服务实战》读书笔记——Spring Cloud Hystrix(三)断路器的原理
- 《spring cloud微服务实战》读书笔记——Spring Cloud Hystrix(四)使用详解(二)
- 《spring cloud微服务实战》读书笔记——Spring Cloud Hystrix(四)使用详解(三)
- 《Spring Cloud微服务实战》开始预售
- 把数组排成最小的数
- centos搭建svn及自动推送
- Leetcode之Search in Rotated Sorted Array II 问题
- 搬瓦工(Bandwagon) 重装系统
- Liu_runda 的简单题 随(rand) 倍增优化 概率DP
- 170923_Spring Cloud 微服务实战(翟永超著) 读书笔记(一)_什么是Spring Cloud?
- codeforces 863D
- JDBC链接警告WARN: Establishing SSL connection without server's identity verification is not recommended.
- LeetCode-Longest Substring Without Repeating Characters
- Mysql 事务的四种隔离级别剖析
- 块状标签-分区标签-div边框显示需要那几个属性?
- 计算机
- Android7.0 Settings 源码剖析-系列列表
- 【NOIP2014】解方程