zoukankan      html  css  js  c++  java
  • spingboot和springcloud简记

    spring boot和ssm是相通的,ssm的用法在spring boot上是一样的,它有两个最大的特点:

    • 内置tomcat
    • 大量精简配置文件

    springboot打包之后是个jar,只用了一个main方法启动。

    对于前后端分离的项目,springboot是非常适合的。

    spring cloud是多个springboot工程的集合,适用于分布式的工程。

    springcloud 属于微服务的范畴,什么是微服务?可以表述如下:

      微服务架构是一种将一个单一应用程序开发为一组小型服务的方法,每个服务运行在自己的进程中,服务间通信采用轻量级通信机制(通常是http),这些服务围绕业务能力构件并且可以通过全自动部署机制独立部署,这些服务公用一个最小型的集中式的配置管理,服务可用不同的语言开发,使用不同的数据存储技术。  

      微服务相比单体应用无疑是有着显著优点的,但也并发完美,它有以下优点:

    1. 易于开发和维护:一个微服务只关注某个特定的业务,所以业务清晰,代码简洁,整个应用由若干个微服务构建,因此应用也被维持在一个可控状态。
    2. 单个微服务启动快
    3. 局部修改容易部署:一般来说,都某个微服务修改,只需要重新部署这一个就可以。
    4. 技术栈不受限:每个微服务可以根据业务和团队的特点,合理选择不同的技术栈。
    5. 按需伸缩:根据需求,实现细粒度的扩展。例如:某个微服务性能遇到瓶颈,可以针对这个特定微服务,增加cpu,内存或扩展节点。

      但微服务的使用也会带来一些挑战:

    1. 运维要求较高:更多的服务意味着更多的运维投入。在单体架构中,只需要保证一个应用正常运行即可,而在为服务中,需要保证几十甚至几百个服务的正常运行和协作。
    2. 分布式固有的复杂性:微服务是一个分布式的系统,它对系统容错、网络延迟、数据一致性、分布式事务都有着更多的要求。
    3. 接口调整成本高:微服务之间使用接口进行通信,如果修改某一个微服务的api,可能所有使用该接口的微服务都需要做出调整。
    4. 重复劳动:很多服务会使用到相同的功能,如果这个功能没有分解为一个微服务,可能多个服务都要重复开发这一功能,导致代码重复。

    springcloud的特点:

    • 约点优于配置
    • 适用于各种环境。开发部署在Pc或各种云环境
    • 隐藏了组件的复杂性,提供了声明式、无xml的配置方式
    • 开箱即用,功能齐全。
    • 选型中立、丰富。例如,springcloud支持使用eureka、zookeeper、consul实现服务发现
    • 灵活。springcloud的组成部署是解耦的,开发人员可按需灵活挑选技术选型。
  • 相关阅读:
    【Maven学习】定制库到Maven本地资源库
    Eclipse安装Properties Editor插件
    【电商日志项目之七】项目调优
    【电商日志项目之六】数据分析-Hive方式
    【电商日志项目之五】数据分析-MR方式
    【电商日志项目之四】数据清洗-ETL
    【Sqoop学习之二】Sqoop使用
    数据集下载链接
    通过类来实现多session 运行
    Windows下如何使用Tensorflow Object Detection API
  • 原文地址:https://www.cnblogs.com/loveBolin/p/9900112.html
Copyright © 2011-2022 走看看