SpringCloudAlibaba史上最全电子书(阿里云学习中心整理)

 

Spring Cloud Alibaba》2020

本电子书内容来源于每特教育在阿里云学习中心上架课程《精通Spring Cloud Alibaba》,主讲人:余胜军,由开发者社区志愿者黄良诗、李美儒进行整理

史上最全SpringCloudAlibaba视频教程 百度云(含视频和文档)

链接:https://pan.baidu.com/s/1OHX3B2Q97gn1K6wfZsURLw

密码:00yk

SpringCloudAlibaba史上最全电子书(阿里云学习中心整理)电子书(只包含文档不包含视频)

链接:https://pan.baidu.com/s/1uQc9-Bs7ArOqCz-_KnNc1g 

提取码:n14n

Spring Cloud Alibaba课程说明

Spring Cloud Alibaba由每特教育|蚂蚁课堂出品

该课程主要讲解Spring Cloud Alibaba核心组件 Nacos(服务注册与发现和分布式配置中心)、Sentinel(服务保护框架)、Seata(分布式事务解决框架)、阿里云OSS、Alibaba Cloud SchedulerX等。

注意事项:该课程需要有一定的SpringBoot基础知识,如果对SpringBoot不了解的话、可以在蚂蚁课堂中学习SpringBoot基础内容。

微服务架构演变过程

传统单体架构——分布式架构——SOA面向服务架构——微服务架构模式

传统架构

传统的架构,也就是为单点应用,也就是大家在早期所学习的JavaEE知识SSH或者SSM架构模式,会采用分层架构模式:数据库访问层、业务逻辑层、控制层,从前端到后台所有的代码都是一个开发者去完成。

该架构模式没有对我们业务逻辑代码实现拆分,所有的代码都写入到同一个工程中里面,适合于小公司开发团队或者个人开发。

com.mayikt.controler---springmvc 视图层 jsp/ftl

com.mayikt.service---业务逻辑层

com.mayikt.dao---数据库访问层

将项目的代码都放入到同一个项目,部署在同一个Tomat中。

该架构模式存在哪些优缺点:

优点:开发简单、运维简单

缺点:该架构模式没有对我们的业务逻辑实现拆分,所有的代码都写入到同一个项目中,

只适合小团队或者个人形式开发,不适合团队模式协同工作开发

这种架构模式最大的缺点,如果该系统一个模块出现不可用、会导致整个系统无法使用。

应用场景:政府项目、管理系统、crm、oa适合于个人小团队开发。

分布式架构

分布式架构模式是基于传统的架构模式演变过来,将传统的单点项目根据业务模块实现拆分、会拆分为会员系统、订单系统、支付系统、秒杀系统等。 从而降低我们项目的耦合度,这种架构模式开始慢慢的适合于互联网公司开发团队。 

如果项目团队人数较多需要进行项目拆分。需要把单体项目不同的系统。大型公司和大型开发团队多用这种团队开发的模式。

不同的系统如何连成一块呢?需要通过域名跳转。

会员系统:memner.mayikt.com

支付系统pay.mayikt.com

命名系统化:包含服务和视图层

SOA面向服务架构

不同系统间的会话是如何进行绑定的呢?需要用到SSO单点登入系统。

 

SOA架构模式也称作为:面向服务架构模式、俗称面向与接口开发,将共同存在的业务逻辑抽取成一个共同的服务,提供给其他的服务接口实现调用、服务与服务之间通讯采用rpc远程调用技术。

通过SSO系统能解决代码冗余的问题。

服务:只是有接口 没有控制层 没有视图层

com.mayikt.service

com.mayikt.dao

 

这种模式叫作SOA面向业务逻辑的开发。

SOA架构模式特点:

  1. SOA架构通讯中,采用XML方式实现通讯、在高并发下通讯过程中协议存在非常大冗余性,所以在最后微服务架构模式中使用JSON格式替代了XML。
  2. SOA架构模式实现方案为Web Service或者是ESB企业服务总线 底层通讯协议SOAP协议(Http+XML)实现传输。

 

传统政府、银行项目还是保留的在使用Web Service

互联网公司肯定采用http+json形式实现运输

基于IDEA快速构建Web Service

Web Service服务器

@WebService
public class UserService {

    @WebMethod
    public String getUser(Long id) {
        return "mayikt用户:" + id
                ;
    }

    public static void main(String[] args) {
        Endpoint.publish("http://192.168.18.218:8089/service/UserService", new UserService());
        System.out.println("服务发布成功");

    }
}

http://192.168.18.218:8089/service/UserService?wsdl  获取wsdl

wsdl文件描述接口的调用地址 服务的接口 方法 参数等。

Web Service客户端

  • 10
    点赞
  • 80
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Cloud Alibaba提供了一个很好用的阿里云OSS客户端工具:`aliyun-sdk-oss-spring-boot-starter`,借助它我们可以很方便地实现视频上传,下面是一个简单的示例: 1. 添加依赖 首先需要在`pom.xml`文件中添加以下依赖: ```xml <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>aliyun-sdk-oss-spring-boot-starter</artifactId> <version>${aliyun.oss.version}</version> </dependency> ``` 2. 配置OSS 在`application.yml`中添加以下配置: ```yaml aliyun: oss: endpoint: oss-cn-hangzhou.aliyuncs.com access-key: your-access-key secret-key: your-secret-key bucket-name: your-bucket-name ``` 其中,`endpoint`是OSS服务的访问域名,`access-key`和`secret-key`是阿里云账号的访问密钥,`bucket-name`是要上传的目标存储桶名称。 3. 实现上传逻辑 ```java @Service public class VideoService { @Autowired private OSS ossClient; public void uploadVideo(String objectName, InputStream inputStream) { ossClient.putObject("your-bucket-name", objectName, inputStream); } } ``` 在`VideoService`中,我们注入了`OSS`客户端,然后实现了一个`uploadVideo`方法,用于将视频文件上传到指定的OSS存储桶中。该方法接收两个参数,一个是上传文件的名称,另一个是文件的输入流。在方法中,我们调用`putObject`方法将文件上传到OSS中。 4. 调用上传接口 最后,在Controller中,我们可以定义一个上传接口,用于接收上传请求: ```java @RestController public class VideoController { @Autowired private VideoService videoService; @PostMapping("/upload") public String upload(@RequestParam("file") MultipartFile file) throws IOException { videoService.uploadVideo(file.getOriginalFilename(), file.getInputStream()); return "success"; } } ``` 在`VideoController`中,我们定义了一个`upload`接口,用于接收上传请求。接收到请求后,我们调用`VideoService`中的`uploadVideo`方法将文件上传到OSS中。 这样,我们就完成了一个简单的视频上传功能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值