Go语言实战:高性能并发编程与云计算

需积分: 30 79 下载量 186 浏览量 更新于2024-07-18 2 收藏 3.73MB DOC 举报
"Go语言开发到实战的完整课件,涵盖了从基础到实战的Go语言学习内容,适合有编程基础的学习者。课程强调Go语言在区块链技术中的应用,并突出了Go语言在性能、并发处理、易学性以及跨平台编译等方面的优势。" Go语言,又称为Golang,是由Google在2009年推出的开源编程语言,设计目标是提高开发效率,同时保持接近C/C++的执行速度,并内置对并发处理的支持。Go语言的出现解决了开发者在快速开发和性能之间的权衡问题,它提供了一种高性能的语言,同时也简化了开发流程。 Go语言的优势体现在多个方面: 1. 直接编译成机器码:Go语言编译后的程序不依赖额外库,部署简单,只需要部署单个可执行文件即可。 2. 静态与动态的结合:作为静态类型语言,Go能够在编译阶段发现潜在错误,但其丰富的包和简洁的语法让编写代码如同动态语言一般高效。 3. 内置并发支持:Go语言通过goroutines和channels实现并发,使得开发者能轻松地利用多核处理器,实现高并发。 4. 内置runtime和垃圾回收:这使得Go具备动态语言的一些特性,如自动内存管理,减少了内存泄漏和内存安全问题的风险。 5. 简单易学:Go语言的语法简洁,具有C语言的风格,但功能强大,包含了大部分常见的编程特性。 6. 丰富的标准库:Go的标准库涵盖广泛,特别是网络编程方面的库特别强大,便于快速开发。 7. 内置工具链:如gofmt,自动格式化代码,便于团队协作和代码审查。 8. 跨平台编译:Go语言能够轻松地在不同操作系统之间进行编译,得益于其对Plan 9代码的引用,可以实现不依赖特定系统的编译。 9. C语言兼容:Go支持C语言的嵌入,允许开发者利用已有的C库。 Go语言非常适合用于服务器编程,如日志处理、数据打包、虚拟机等场景,尤其是在区块链技术中,Go由于其高效和并发特性,成为了构建分布式系统和智能合约的热门选择。此外,Go也被广泛应用在网络服务器、微服务架构、大数据处理、容器编排(如Docker)等领域。 在学习Go语言的过程中,了解其设计哲学、基本语法、并发模型、垃圾回收机制、标准库的使用,以及如何利用Go的工具链进行高效开发,都是非常关键的部分。通过实践项目,学习者可以深入理解Go语言在实际开发中的应用,从而提升自身的编程技能和解决问题的能力。
2019-10-10 上传
第01章 课程介绍 1-1 导学.mp4 1-2 课程介绍.mp4 第02章 实战-“云存储”系统原型 2-1 “云存储”系统原型之简单文件上传服务架构说明.mp4 2-2 编码实战:“云存储”系统之实现上传接口.mp4 2-3 编码实战:“云存储”系统之保存文件元信息.mp4 2-4 编码实战:“云存储‘系统之实现单个文件查询信息接口.mp4 2-5 编码实战:“云存储”系统之实现文件下载接口.mp4 2-6 编码实战:“云存储”系统之实现文件修改接口+小结.mp4 第03章 “云存储”系统之基于MySQL实现的文件数据库 3-1 MySQL基础知识.mp4 3-2 MySQL主从数据同步演示.mp4 3-3 文件表的设计及创建.mp4 3-4 编码实战:“云存储”系统之持久化元数据到文件表.mp4 3-5 编码实战:“云存储”系统之从文件表中获取元数据.mp4 3-6 Docker入门基础文档.mp4 3-6 本章小结.mp4 3-7 Ubuntu中通过Docker安装配置MySQL主从节点.mp4 第04章 “云存储”系统之基于用户系统实现的资源隔离及鉴权 4-1 帐号系统介绍与用户表设计.mp4 4-2 编码实战:“云存储”系统之实现用户注册接口.mp4 4-3 编码实战:“云存储”系统之实现用户登录接口.mp4 4-4 编码实战:“云存储”系统之实现用户信息查询接口.mp4 4-5 接口梳理小结.mp4 4-6 编码实战:“云存储”系统之快速实现访问鉴权接口+小结.mp4 4-7 关于静态资源访问404的问题【补漏.mp4 第05章 “云存储”系统之基于Hash计算实现秒传 5-1 Hash算法对比及秒传原理.mp4 5-2 用户文件表设计与创建.mp4 5-3 编码实战:“云存储”系统之升级改造上传接口.mp4 5-4 编码实战:“云存储”系统之基于用户查询文件Hash信息.mp4 5-5 编码实战:“云存储”系统之实现秒传功能接口+小结.mp4 第06章 “云存储”系统之基于Redis实现分块上传及断点续传 6-1_分块上传与断点续传原理.mp4 6-2_编码实战:Go实现Redis连接池(存储分块信息).mp4 6-3_编码实战:实现初始化分块上传接口.mp4 6-4_编码实战:实现分块上传接口.mp4 6-5_编码实战:实现分块合并接口.mp4 6-6_分块上传场景测试+小结.mp4 6-7_文件断点下载原理.mp4 第07章 “云存储”系统之基于Ceph实现私有云存储服务 7-1_Ceph是什么.mp4 7-2_Ceph集群介绍及兼容亚马逊S3接口详解.mp4 7-3_编码实战:Go访问管理Ceph集群.mp4 7-4_编码实战:Go实现Ceph的文件上传下载+小结.mp4 7-5_Ubuntu下通过Docker快速搭建Ceph测试集群(单机部署).mp4 7-6_Centos7下Docker部署Ceph集群(nautilus最新版,多机部署).mp4 第08章 “云存储”系统之基于阿里云OSS实现海量数据上云 8-1_阿里云对象存储OSS简介.mp4 8-2_阿里云对象存储OSS特点.mp4 8-3_阿里云对象存储OSS专业术语.mp4 8-4_阿里云对象存储OSS控制台管理.mp4 8-5_编码实战:OSS上传文件.mp4 8-6_编码实战:OSS下载文件.mp4 8-7_编码实战:OSS对象生命周期管理等常用功能.mp4 8-8_阿里云OSS本章小结.mp4 第09章 “云存储”系统之基于RabbitMQ实现异步存储 9-1_Ubuntu下通过Docker安装RabbitMQ.mp4 9-2_关于任务的同步与异步.mp4 9-3_RabbitMQ简介.mp4 9-4_RabbitMQ工作原理和转发模式.mp4 9-5_Docker安装RabbitMQ及UI管理.mp4 9-6_编码实战_实现异步转移的MQ生产者.mp4 9-7_编码实战_实现异步转移的MQ消费者.mp4 9-8_编码实战_异步转移文件测试+小结.mp4 第10章 “云存储”系统之架构微服务化 10-1_基于Docker部署服务注册发现中心consul集群.mp4 10-2_微服务基础概念与原理.mp4 10-3_云存储系统之微服务架构(1).mp4 10-4_云存储系统之微服务架构(2).mp4 10-5_Web框架Gin基础介绍.mp4 10-6_编码实战_基于Gin改造用户service(1).mp4 10-7_编码实战_基于Gin改造用户service(2.mp4 10-8_gRPC与Protobuf基础原理.mp4 10-9_RPC框架go-micro基础介绍.mp4 10-10_编码实战_改造账号系统service.mp4 10-11_编码实战_改造api网关service.mp4 10-12_编码实战_改造文件上传service.mp4 10-13_综合测试演示+小结.mp4 第11章 “云存储”系统之k8s&Docker;容器化实战 11-1_Ubuntu18下通过kubeadm单机安装k8s(v1.14.1)集群.mp4 11-2_Ubuntu18下安装k8s(v1.14.1)可视化管理工具.mp4 11-3_Docker与Docker-Compose基础概念.mp4 11-4_基于容器的微服务反向代理利器Traefik.mp4 11-5_基于Docker-compose与Traefik的容器化部署演示.mp4 11-6_Kubernetes基础原理.mp4 11-7_基于Kubernetes的容器化部署演示.mp4 第12章 “云存储”系统之持续集成部署 12-1_ubuntu下离线安装harbor1.6.mp4 12-2_持续构建之基础概念.mp4 12-3_基于gitlab+jenkins+harbor的自动化部署配置演示.mp4 第13章 课程总结 13-1_课程总结之章节重点及技能树温习.mp4