TCA - 终章

1. 脑图总结

1.1 云开发基础

TCA - 终章_第1张图片

1.2 云开发入门

TCA - 终章_第2张图片

1.3 迁移到云端

TCA - 终章_第3张图片

1.4 云应用开发

TCA - 终章_第4张图片

1.5 TSF与容器

1.6 微服务网关

TCA - 终章_第5张图片

1.7 无服务架构

TCA - 终章_第6张图片

1.8 微信小程序

TCA - 终章_第7张图片

1.9 AI应用开发

TCA - 终章_第8张图片

2. 分类总结

2.1 云概念

  1. 使用云计算的能力后,更多的只需要关心应用本身,其他底层基础设施建设都由云计算能力提供,这其实也意味着让企业更多的专注在业务上。

2.2 腾讯云

2.2.1 服务器

  1. 本地应用云上部署的优势:降低投入成本、节约运营成本、提升业务以及生产水平、资源使用灵活方便,无需初次投资、按需使用、成本大大降低,无单点故障、高可用、使用灵活度高,7*24小时全天可用。
  2. 本地应用迁移云端,弹性资源,稳定可靠,安全防护,简单易用,按需计费,无需前期投入。
  3. 负载均衡流量分配算法:加权轮询算法,加权最小连接数算法,源地址散列调度算法。
  4. 负载均衡CLB使用步骤:创建负载均衡实例->配置负载均衡监听器->配置转发规则->配置健康检查->配置会话保持->绑定云服务器->配置重定向
  5. 计费模式:阶梯降价,使用时长越长越省钱。

2.2.2 签名

  1. 腾讯云开发接入流程:获取主账号->选择使用方式->创建子账号->获取访问秘钥->准备开发环境->开发使用。
  2. 云产品的使用方式:腾讯云web控制台,SDKS,API,CLI.
  3. API提供了在线调用、签名验证、SDK代码生成和快速检索接口。
  4. 云API秘钥用于生成签名,API3.0采用TC3-HMAC-SHA256签名方法。
  5. 云API公共参数根据签名方法不同分为两类:
    ------签名方法V3:使用TC3-HMAC-SHA256签名方法,公共参数需要统一放到HTTP Header请求头部中;
    ------签名方法V1:使用HmacSHA1和HmacSHA256签名方法,公共参数需要统一放到请求串中。
  6. 使用TC3-HMAC-SHA256签名方法步骤:申请安全凭证->拼接规范请求串->拼接待签名的字符串->计算签名->拼接Authorization->使用完整的签名信息访问云API
  7. 安全凭证包括SecretId和SecretKey,开发商账号最多可拥有两对。
  8. API接口:地域相关接口:RunInstances(创建实例),StartInstances(启动实例),TerminateInstances(退还实例), DescribeInstances(查看实例列表),实例相关接口,镜像相关接口,秘钥相关接口。

2.2.3 数据库

  1. 云硬盘作为云服务器的数据库使用。只能保持容量不变或者扩充容量,不能缩小容量。
  2. 数据库通常可以按照数据组织方式和架构进行分类,组织方式:关系型数据库和非关系数据库;数据库架构:集中式数据库和分布式数据库。
  3. 集中式数据库:CDB和CRS;分布式数据库:DCDB,MongoDB,HBase,TiDB,TData;传输服务DTS
  4. 通过SDK初始化云数据库MYSQL p227
  5. 云数据库MySQL使用步骤:登录腾讯云平台->购买云数据库MySQL->初始化数据库->本地数据库数据迁移->修改应用配置->部署应用,访问。
  6. MySQL初始化配置中大小写敏感,默认是,端口默认3306,数据库账户默认root.
  7. 云数据库MySQL可以开启外网访问吗?是
  8. NoSQL数据库是非关系型数据库,用于超大规模数据的存储,不需要固定的模式,无需多余的操作就可以横向扩展。有mongoDB,redis,HBASE
  9. MongoDB适用的场景:表结构不明确且数据不断变大,更高的写入负载,非事务安全,数据库量很大,高可用。
  10. 云数据库MongoDB目前支持两类迁移:云服务器CVM自建实例迁移和外网实例迁移,通过数据传输协议DTS快速进行数据迁移。

2.2.4 COS

  1. 对象存储COS是腾讯云提供的一种存储海量文件的分布式存储服务,用户可以通过网络随时存储和查看数据。
  2. COS提供的三种对象存储级别:标准存储,低频存储和归档存储。
  3. Get service 获取存储数据桶列表,获取指定账号下的所有Bucket List。
  4. Authorization签名过程:计算SignKey->生成HttpString->生成StringToSign->生成Signature->拼接Authorization
  5. Bucket基础操作接口:PUT 创建, GET查询列表, HEAD 检索存储桶以及其权限,DELETE 删除。
  6. 常见错误码:NoSuchBucket,404NOT FOUND,Bucket不存在。

2.2.5 TSF

2.2.5.1 微服务
  1. 基于微服务的spring cloud或service mesh,可以进行跨语言,跨系统的对话,不排他。
  2. Serverless并不代表没有了服务器,只是用户不需关心这些底层资源了。
  3. DevOps可以看做开发,测试,运维三者的交集。
  4. 现代化软件开发面临的挑战:用户规模大,接入方式多;频繁的产品需求和变更;老的项目耦合性太高。
  5. 微服务架构和传统架构对比:用户规模大,集中访问;需求变化快;技术栈多样性,开发;开发模型:敏捷,DevOps。
  6. 基于微服务的Spring Cloud,Service Mesh可以进行跨语言,跨系统对话;减少异构语言的通信问题。
  7. 微服务设计原则:前后端分离,无状态服务,Rest通讯风格。
  8. SpringCloud是基于SpringBoot的一整套实现微服务的框架,只能用JAVA语言。
  9. ServiceMesh开源项目:Linkerd,Envory,Istio,Conduit。
  10. 腾讯微服务平台TSF是一个围绕应用和微服务的PAAS平台,提供服务全生命周期的管理能力和数据化运营支持;提供多维度应用、服务、机器的监控数据、助力服务性能优化;拥抱SpringCloud和ServiceMesh等微服务框架;让企业轻松构建大型分布式系统。
  11. TSF服务注册发现包括三个角色:服务提供者,服务调用者和服务注册中心。
  12. TSF服务治理:服务鉴权,服务限流,服务路由和查询api列表。
2.2.5.2 容器
  1. 容器编排技术有两种,一种Dcoker Swarm和Kubernetes简称K8S,K8S兼容性更好,功能更强大。
  2. Docker核心概念:镜像,容器,仓库。
  3. Docker命令:docker images查看系统中的镜像;pull拉取镜像;push发布到仓库;build构建镜像;run使用镜像创建容易 rm删除镜像。
  4. Docker start 启动容器。
  5. Dockerfile使用流程:制作镜像->推送镜像到仓库->拉取镜像并创建容器。
  6. Dockerfile语法:忽略大小写,建议大写;FROM,目的,指定基础的image;MAINTAINER指定镜像创建者信息;RUN:可以运行被挤出image支持的命令;COPY:复制命令;CMD:容器启动是运行的命令。
  7. Docker build -t nginx:my. 命令后的点必须的,用于路径参数的传递,这表示当前路径。
  8. Docker run -d -p 7788:80 nginx:my ,run表示启动docker容器,-d表示守护进程,-p用于指定对应的端口地址,7788是宿主机中对应的应用端口,80是容器中应用运行的端口。
  9. K8S和TKE对比TKE简化集群管理,灵活集群托管、集成负载均衡,资源高度隔离、服务高可用,镜像快速部署,业务持续集成,容器服务免费。P474
  10. 在TSF上,使用Docker容器部署微服务步骤:创建容器集群->导入云主机->创建容器应用->创建部署组->初始化镜像仓库->创建镜像和推送镜像到仓库->部署应用。
2.2.5.3 配置
  1. 创建容器集群,在TSF中的资源关系:集群->命名空间->应用。
  2. TSF配置优先级:应用配置->全局配置->本地配置。
  3. TSF应用配置步骤:添加依赖->引用配置->TSF应用配置内容填写->发布配置。
  4. 引用配置二种方式:@ConfigurationProperties(适用于多个配置)和@Value。
2.2.5.4 网关
  1. 腾讯云API网关上的功能有:API生命周期管理,认证与限流,API监控和API市场。
  2. 服务鉴权是处理微服务之间互相访问权限问题的解决方案,否则返回403。
  3. Spring Cloud应用添加配置项:pom添加依赖,项目启动类上添加@EnableTsfAuth注解。
  4. 全局限流:服务设置一个最大的QPS阈值T,当服务实际接收到的每秒请求数据超过T时,触发限流。
  5. @EnalbleTsfRateLimit注册开启服务限流功能。
  6. 查看限流效果:如果请求数达到了限流阈值,任何到达的请求都会被限流模块处理;如果该服务上的配额已经消耗完,会对请求返回429,否则正常放行。
  7. 服务依赖拓扑:灰色的圆圈标识主动调用的服务;箭头表示发出调用;绿色的圆圈表示成功调用;黄色的标识调用失败;绿色和黄色组成的圆圈,绿色所占的比例是成功调用的比例,黄色的为失败的比例,圆圈中的数字表示平均调用耗时和频率。
2.2.5.5 缓存&消息中间件
  1. 常见的分布式缓存:Memcached数据存储类型较少,不支持持久化,单核性能存储大数据时较好,多线程服务支持;Redis数据存储类型丰富,支持RDB和AOF持久化,单核性能存储小数据时较好。附加功能丰富(发布订单/主从分区/序列化)。
  2. 消息队列开源实现:JBoss Messaging,JORAM,Apache ActiveMQ,Sun Open Message Queue,RabbitMQ,IBM MQ,Apache Qpid,Apache RocketMQ和HTTPSQS。
  3. 常见的消息模型:队列模型FIFO和主题模型,Topic会把发布的消息主动推送给订阅者。
  4. 每个消息可以有多个订阅者。
  5. 常见的消息队列RabbitMQ,ZeroMQ,Kafka,Rocket MQ等。

2.2.6 小程序开发

  1. Serverless=Faas(函数服务)+Baas(后端服务)
  2. SCF应用场景:云函数:小程序开发
  3. 小程序开发流程:注册小程序->完善小程序信息->开发小程序->提交审核和发布。
  4. 小程序.json后缀的JSON配置文件;.xml后缀的WXML模板文件(WXML充当HTML的角色);.wxss后缀的WXSS样式文件(仅支持部分的CSS选择器);.js后缀的JS脚本逻辑文件。
  5. WXML基本标签:view视图容器标签,image图片标签,button按钮标签,scroll-view滚动区域标签。
  6. WXML共同属性:id组件标识,页面唯一;class样式类名;style内联样式;hidden是否隐藏;data-*自定义属性;bind*/catch*绑定事件。
  7. Intro选择所有class=它的组件,#firstname选择拥有id=它的组件 view选择所有它的组件,view checkbox选择所有文档它们的组件 显示地图
  8. 小程序原生标签:camera,canvas,map,video
  9. 小程序对后端的限制:购买域名并备案,需要使用HTTPS协议。
  10. 小程序云开发提供的基础能力支持:云数据库、云存储、云函数、云调用。
  11. 关系型数据和云数据库对比:关系型:数据库database,表table,行row,列column;文档型:数据库database,集合collection,记录record/doc,字段field。
  12. 云数据库提供的数据类型:String,Number,Object,Array,Bool,GeoPoint,Date,Null。
  13. 云存储包含:存储管理,权限设置,上传管理,文件搜索,组件支持。
  14. 小程序接入:注册微信小程序账号->下载微信开发者工具->登录微信开发者工具->开通云开发->开发小程序。

2.2.7 AI

  1. 人工智能:机器学习是实现人工智能的一种方法,属于人工智能的子集。
  2. 深度学习是机器学习的分支,是一种以人工神经网络为架构,对数据进行表征学习的算法,我们可以理解为机器学习的一种实现方法,是机器学习的子集。
  3. 腾讯云提供的AI相关能力:图像识别、人脸识别、语音技术、AI平台服务、自然语言处理、智能机器人。
  4. 人脸识别应用场景:安防:门禁系统和摄像头监控系统;娱乐:相册分类和美颜美妆。
  5. 人脸识别api接口:api:analyzeface五官定位,detectface人脸检测与分享,detectliveface人脸静态活体检验,searchfaces人脸搜索。
  6. ocr人脸识别:sex性别,address地址,authority:发证机关,requestid:唯一请求id,每次请求都会返回,用来定位问题。
  7. OCRAPI:arithmeticOCR算式识别,generalaccrateocr通用印刷体识别(高精度版)
  8. Generbasicocr 通用印刷体,generalfastocr 高速版,idcardocr身份证识别。

你可能感兴趣的:(#,TCA)