web 实战营第3课:应用接上后端存储能力 | 学习笔记

本文涉及的产品
RDS Agent(兼容OpenClaw),2核4GB
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介: 简介:快速学习 web 实战营第3课:应用接上后端存储能力

开发者学堂课程【云开发 Web 应用训练营:web 实战营第3课:应用接上后端存储能力】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/911/detail/14415


web 实战营第3课:应用接上后端存储能力

 

目录

一.函数计算部署原理

二.创建 RDS 实例

三.用 oss 上传和展示图片

四.Midway Serverless MySQL 数据库

五.云开发平台集成了 NAS 功能

六.head 内的配置


一.函数计算部署原理

基础原理

阿里云网络分地域,每个用户可以创建虚拟网络。

用 RDS 数据库实现 Todolist

主要用到函数计算,云开发平台把代码直接部署到函数计算上,生成一个临时域名。

阿里云网络分地域,一个地域可以看成一个内网,用户可以创建自己虚拟网络,可以和其他用户网络来区分隔离。函数计算本身是一个公用的虚拟网络

链路

image.png


二.创建 RDS 实例

效果

image.png

资源准备

创建 VPC 和交换机

登录 VPC 控制台

image.png


image.png规划了网络网段

创建 RDS 实例

1.在 RDS 下创建一个数据库,获得数据库名·

2.创建账号,获得用户名密码

3.添加白名单,交换机的 IP 段

4.登录数据库建表,参考代码 readme

表格代码

CREATE TABLE 'todo`(

'id" bigint( 20)NOT NULL AUTO_INCREMENT

,'todo varchar( 255) NOT NULL,

'status` int(11)NOT NULL,

'gmt_create’timestamp NOT NULLDEFAULT CURRENT_TIMESTAMP ON UPDATE

CURRENT__TIMESTAMP,

)ENGINE=InnoDB DEFAULT CHARSET=utf8;

应用的环境配置会在运行的时候注入到环境变量中去

将数据库名称填入应用配置中去

创建安全组

安全组 ecs 的功能(网卡)属于服务器,是一个虚拟防火墙

允许3306入方向流量

MySQL 基础端口是3306

云开发平台:

·创建应用.解决方案为:Midway Serverless MySQL 数据库示例·

应用环境管理.设置 woc. vswitch,安全组。

应用配置管理.设置数据库地址,数据库名.数据库端口,数据库用户名密码.

MIDwAY_RDS_HOST : RDS 实例内网地址

MIDWAY_RDS_DBNAME ∶数据库名 MIDWAY_RDS_USERNAME ∶数据库用户名MIDwAY_RDS_PASSwORD ∶数据库密码- MIDwAY_RDS_PORT ; RDS 实例内网端口

存储效果

NRAS 本地路径: worikbanch_nas_path=/wnt/wbreWrmteFle NAS本地路轻:J/mnt/wb,存在!

当前文件长度:184

NAS 本地路径: workbonch_ras path =/rmnt/wb

2020-12-24 09:23:56的函数计算服务写入!2020-12-24 09:24:31函数计算服务写入!2020-12-24 09:24:38函数计算服务写入!

三.用 oss 上传和展示图片

用户在网站上传图片如何展示

原理

image.png

云开发平台函数计算本身是无法接受图片上传

OSS 通过公网往外上传再读取数据,提供了临时上传加密

阶段一、资源准备:

创建 OSS-bucket

Bucket 可以认为存储文件的集合

设置跨域

打开自己的 OSS Bucket 概览页,在「基础设置」中找到「跨域访间」

设置权限,公共读

需要临时授权

创建 ram 子账号,AK,SK,授权 OSS 访问

·阶段二、云开发平台:

创建应用,解决方案为︰空应用(Nodejs/FC)

添加静态页面 index.html 。添加接口 osstoken.is.

应用配置管理,

- OSSBUCKET : OSS 的 bucket 名称

OSSDIR :日录

REGION :地域

AKID : ak

AKSK : sk

如果你的数据库中没有 todo 的表,可以参考如下键表spl来创建

‘’’SQL

CREATE TABLE ‘todo’(

‘id ‘bigint(20) NOT NULL AUTO_ INCREMENT,

‘todo’ varchar(255) NOT NULL,

‘statusint’(11) NOT NULL,

‘gnt_ create' timestamp NOT NULL DEFAULT CURRENT TIMESTANP ON UPDATECURRENT TIMESTAMP ,

PRIMARY KEY ( ‘id’ )

)ENGINE=InnoDB DEFAULT CHARSET=utf8;

Ja

exports . dbConfig . {

host: process . env.MIDWAY RDS HOST,

port: process. env MIDWAY RDS_ PORT II 3306,

Database: process. env MIDWAY RDS_ DBNAME,

username:process . env MIDWAY RDS_ USERNAME,

password: process . env MIDWAY RDS PASSWORD

};

return exports;

};


四.Midway Serverless MySQL 数据库

云开发平台:

创建应用,解决方案为: Midway Serverless MySQL 数据库示例:

应用环境管理,设置 vpc,vswitch, 安全组。

应用配置管理,设置数据库地址,数据库名,数据库端口,数据库用户名密码。

● MIDWAY_ RDS_ HOST : RDS 实例内网地址

● MIDWAY_ RDS_ DBNAMET :数据库名

●MIDWAY RDS USERNAME :数据库用户名

●MIDWAY_ RDS_ PASSWORD :数据库密码

●MIDWAY RDS_ PORT : RDS 实例内网端口

五.云开发平台集成了 NAS 功能:

Nsa 可以理解为网盘

基础原理

image.png

函数计算访问 VPC 需要设置

需要在 VPC 准备需要用的资源,在云开发平台进行部署、访问和测试。

步骤

●创建应用,解决方案为:空应用(Java/FC)

●应用环境管理,设置 vpc, vswitch, 安全组,NAS。

●应用配置管理,设置 NAS 环境。

nas mount path : nas挂载地址

部署,访问/file

阶段一、资源准备:

创建 OSS-bucket

设置跨域

设置权限,公共读

创建 ram 子账号,AK, SK, 授权 OSS 访问

阶段二、云开发平台:

创建应用,解决方案为:空应用(Nodejs/FC)

添加静态页面 index.html , 添加接口 osstoken.is 应用配置管理,

OSSBUCKET : OSS的bucket 名称

OSSDIR:目录

REGION: 地域

AKID: ak

AKSK: sk

<?php

function handler($event, $context) [

Sconfig = array(

"dir' => getenv('OSSDIR'), 11 Lft8*

bucket => getenv('OSSBUCKET),// Bucket 8#

'region' = getenv('REGION),/l OSS FFCER Region

accessKeyld' = getenv('AKID'),// TÊßEG Access key ID

accessKeySecret' => getenv('AKSK'),/1 Access key secret

'expAfter => 3600, 11签名失效时间,秒

'maxSize' => 1048576000 1IeRtR-

);

Shost . https://' . $config['bucket] . 'oss-' . Sconfig[region'] . .aliyuncs.com';

Snow = strtotime('now);

SexpireTime = $now + $config expAfter];

Sexpiration . gmdate('Y-m-dITH;í:slZ, SexpireTime);

Spolicy = array(

expiration" => Sexpiration,

conditions" => array(

array( content-length-range", 0, $config['maxSize]),

六.head 内的配置

标签页 icon 图标

图标的文件名要求以 favicon.ico 命名,文件需要与 index.html 文件同级存储

使用方法:<link rel="shortcut icon" href="favicon.ico" type="image/x-icon"

CSS 分级引入

css 文件设置需要根据功能进行分层管理:目的是为了提取出多个页面公共的部分,提供多个 HTML 同时引用。

公共的部分也可以划分范围:有的是所有网站能用的,有的是某几个网站公共的部分

CSS 常见的分层组织:清除默认样式的 CSS 、网站的公共样式 CSS 、每个页面独有的 CSS

注意书写顺序,引入多层 css 时,需要按照后面的层叠前面的 css 进行设置,使用页面独有的样式层叠公共的样式

清除默认样式

使用范围:所有的网站都能用

命名的习惯:reset.css

引入时作为第一层引入

注意:reset.css 文件写完后不允许再次更改

公共样式

使用范围:单独的一个网站所有的页面、几个页面

制作方法:找到公共部分,划分成不同的模块分别进行.css 文件的书写

命名习惯:common.css 或者模块名. css

公共文件中的类名一般不要在其他的 css 文件中再用

引入顺序:一般在 reset.css 的后面,单独样式文件的前面

页面独有样式

使用范围:单独的一个 HTML 页面

命名习惯:一般与 HTML 的文件名保持一致,如果拆分的更细致可以使用多个单词的拼写,例如 index_banner.css

引入顺序:所有公共样式的后面

注意:使用单独样式文件去层叠前面公共样式时,需要注意选择器权重

相关实践学习
【玩转ComfyUI】基于函数计算一键部署AI生图平台ComfyUI
本次实验将带大家通过使用阿里云产品函数计算FC,快速使用ComfyUI实现更高质量的图像生成。
从 0 入门函数计算
在函数计算的架构中,开发者只需要编写业务代码,并监控业务运行情况就可以了。这将开发者从繁重的运维工作中解放出来,将精力投入到更有意义的开发任务上。
相关文章
|
监控 中间件 Java
后端技术:构建高效、稳定的服务器端应用
【10月更文挑战第5天】后端技术:构建高效、稳定的服务器端应用
660 0
|
JavaScript 前端开发 API
探索后端技术:Node.js的优势和实际应用
【10月更文挑战第6天】 在当今数字化时代,后端开发是任何成功软件应用的关键组成部分。本文将深入探讨一种流行的后端技术——Node.js,通过分析其核心优势和实际应用案例,揭示其在现代软件开发中的重要性和潜力。
1070 2
|
存储 安全 关系型数据库
后端技术深度剖析:构建高效稳定的企业级应用
【10月更文挑战第5天】后端技术深度剖析:构建高效稳定的企业级应用
404 0
|
计算机视觉 Python
Flask学习笔记(六):基于Flask的摄像头-web显示代码(可直接使用)
这篇文章是关于如何使用Flask框架结合OpenCV库,通过电脑摄像头实现视频流在网页上的实时显示,并提供了单摄像头和多摄像头的实现方法。
592 2
Flask学习笔记(六):基于Flask的摄像头-web显示代码(可直接使用)
|
JavaScript 前端开发 API
深入理解Node.js事件循环及其在后端开发中的应用
本文旨在揭示Node.js的核心特性之一——事件循环,并探讨其对后端开发实践的深远影响。通过剖析事件循环的工作原理和关键组件,我们不仅能够更好地理解Node.js的非阻塞I/O模型,还能学会如何优化我们的后端应用以提高性能和响应能力。文章将结合实例分析事件循环在处理大量并发请求时的优势,以及如何避免常见的编程陷阱,从而为读者提供从理论到实践的全面指导。
|
JavaScript 前端开发 测试技术
拥抱开源:NestJS 在现代后端开发中的应用
【10月更文挑战第21天】NestJS 是一个基于 TypeScript 的现代 Node.js 框架,结合了 OOP、FP 和 FRP 元素,支持模块化设计、控制器、服务和守卫等核心概念,具备强大的依赖注入系统。本文探讨了 NestJS 的核心特性、应用场景及其在现代后端开发中的价值,包括构建 RESTful API、微服务、单页应用后端和企业级应用。通过最佳实践和社区支持,NestJS 可显著提高开发效率和代码质量。
|
存储 安全 数据库
后端技术在现代Web开发中的实践与创新
【10月更文挑战第13天】 本文将深入探讨后端技术在现代Web开发中的重要性,通过实际案例分析展示如何利用先进的后端技术提升用户体验和系统性能。我们将从基础架构设计、数据库优化、安全性保障等方面展开讨论,为读者提供清晰的指导和实用的技巧。无论是新手开发者还是经验丰富的技术人员,都能从中获得启发和帮助。
404 2
|
自然语言处理 Cloud Native 数据安全/隐私保护
后端技术在现代Web开发中的实践与创新
本文探讨了后端技术在现代Web开发中的重要性及其应用。通过分析当前流行的后端框架和开发模式,揭示了如何利用这些技术来构建高效、可扩展的Web应用程序。同时,文章也讨论了未来后端技术的发展趋势,为开发者提供了一些启示。
|
文件存储 Python
Flask学习笔记(一):Flask Web框架
本文介绍了Flask Web框架的基本概念、安装方法、初始化参数、程序编写、静态文件显示和配置信息加载等基础知识。
335 0
|
设计模式 算法 数据库连接
后端开发中的设计模式应用与实践
在软件开发的广袤天地中,设计模式如同夜空中最亮的星辰,引领着开发者们穿越复杂系统的迷雾。本文旨在通过深入浅出的方式,不仅探讨设计模式的理论精髓,揭示它们在后端架构中的重要性,还将以生动的实践案例,展示如何在实际项目中巧妙运用这些模式。我们邀请您一同踏上这场编程之旅,探索如何借助设计模式的力量,让后端系统更加健壮、灵活且易于维护,共同揭开后端技术神秘面纱的一角。

热门文章

最新文章