本章节对课程的内容做介绍说明,以及本门课程能为学员带来那些收获。大家认真学习成为职业程序员。1-1 C++气象项目数据中心实战导学 (10:30)1-2 项目介绍 (13:12)1-3 开发环境 (01:44)1-4 项目源代码和开发框架 (07:09)
第2章 如何保证服务程序永不停机服务程序运行在后台,无人守值,故障退出或挂起是不可接受的,后台服务程序除了实现功能,还必须具备稳定性、健壮性和故障恢复的能力。 这一章介绍了信号、多进程、共享内存、信号量的基础知识以及应用的经验,调度进程、守护进程和心跳机制协同工作,保证服务程序7x24小时不间断运行。...2-1 开篇语 (03:22)2-2 生成测试数据-搭建程序的框架 (26:34)2-3 生成测试数据-加载站点参数 (21:40)2-4 生成测试数据-模拟观测数据 (12:01)2-5 生成测试数据-生成csv文件 (19:45)2-6 生成测试数据-生成xml和json文件 (12:09)2-7 Linux信号 (17:08)2-8 Linux多进程 (23:51)2-9 服务程序的调度 (23:25)2-10 Linux共享内存 (12:42)2-11 -1 Linux信号量 (19:24)2-12 -2 Linux信号量 (06:10)2-13 -1 进程的心跳机制 (14:19)2-14 -2 进程的心跳机制 (20:04)2-15 -1 守护进程的实现 (14:43)2-16 -2 守护进程的实现 (12:32)2-17 完善生成测试数据程序 (13:32)2-18 压缩文件 (22:17)2-19 清理文件 (05:30)2-20 服务程序的运行策略 (06:51)2-21 本章总结 (04:36)
第3章 开发基于ftp协议的文件传输子系统ftp是最古老的tcp应用层协议,从1971年诞生至今近半个世纪来,凭借其独特的优势一直是因特网中最重要、最广泛的服务之一。 这一章介绍了ftp协议的封装,隐藏了复杂的底层协议和报文格式,通过简单的函数调用实现ftp客户端全部的功能。基于封装后ftp框架,实现文件的上传和下载功能。 ...3-1 开篇语 (03:06)3-2 课间预习 (00:59)3-3 ftp客户端的封装 (16:51)3-4 ftp下载文件-搭建程序的框架 (25:03)3-5 ftp下载文件-下载全部的文件 (26:59)3-6 ftp下载文件-清理和转存文件 (13:53)3-7 ftp下载文件-下载新增的文件 (23:00)3-8 ftp下载文件-下载修改的文件 (22:22)3-9 ftp上传文件 (21:31)3-10 本章总结 (04:59)
第4章 开发基于tcp协议的文件传输子系统ftp协议虽然功能强大,应用广泛,但性能不足够。 这一章介绍了网络编程的基础知识,对socket的系列函数进行封装,自定义文件传输协议,实现文件的上传和下载功能,采用了异步通讯的机制,效率极高,充分利用了网络带宽。 ...4-1 开篇语 (02:25)4-2 解决TCP粘包和分包的问题 (15:41)4-3 封装socket的常用函数 (20:58)4-4 搭建多进程网络服务程序框架 (22:39)4-5 多进程网络服务程序的退出 (11:28)4-6 网银APP软件业务示例 (25:03)4-7 TCP长连接心跳机制的实现 (14:59)4-8 -1 TCP文件传输系统-搭建上传程序的框架 (19:03)4-9 -2 TCP文件传输系统-搭建上传程序的框架 (09:38)4-10 TCP文件传输系统-上传文件的基本信息 (15:08)4-11 TCP文件传输系统-上传文件的内容 (27:10)4-12 TCP文件传输系统-删除和转存本地文件 (11:17)4-13 异步通讯的三种实现方法 (23:24)4-14 TCP文件传输系统-异步上传文件 (10:33)4-15 TCP文件传输系统-下载文件 (25:02)4-16 本章总结 (05:49)
第5章 轻松搞定MySQL数据库的开发MySQL提供了C语言访问MySQL数据库的函数库,功能强大,但开发难度很高,接口函数的参数烦锁,代码冗长。 这一章把MySQL的函数库封装成connection和sqlstatement类,简单易用,为MySQL数据库开发奠定基础,神器在手,无往不利。5-1 开篇语 (03:04)5-2 创建超女信息表 (17:18)5-3 往超女信息表中插入数据 (18:30)5-4 修改超女信息表中的数据 (05:28)5-5 查询超女信息表中的数据 (12:25)5-6 删除超女信息表中的数据 (02:15)5-7 二进制大对象的存取 (13:43)5-8 数据库开发注意事项和技巧 (11:23)5-9 强大的PowerDesigner (16:35)5-10 把站点参数文件入库 (23:03)5-11 把站点数据文件入库 (24:21)5-12 -1 优化数据入库程序 (15:03)5-13 -2 优化数据入库程序 (12:46)5-14 执行SQL脚本文件 (06:56)5-15 本章总结 (03:28)
第6章 开发数据抽取子系统数据的意义在于共享,真正的孤岛数据是很少的,数据中心则是各种数据的聚集地。 这一章开发数据抽取子系统,把分散的数据从源端数据库抽取到数据中心,支持按条件抽取和增量抽取两种方法。6-1 开篇语 (03:24)6-2 搭建程序的框架、解析参数 (21:05)6-3 全量抽取数据、生成xml (11:37)6-4 全量抽取数据、写入xml文件 (12:11)6-5 增量抽取数据 (13:10)6-6 数据抽取的优化 (15:29)6-7 本章总结 (05:21)
第7章 开发数据入库子系统数据中心有几百种数据,如何把它们保存到数据中心的表中?如何摆脱烦锁的、没有技术含量的增删改查工作? 这一章开发数据入库子系统,巧妙的利用MySQL数据字典和xml可扩展标记的特点,用一个通用的程序解决了各种数据入库的问题,如果有新的数据需要入库,配置多一行参数而已。 ...7-1 开篇语 (03:23)7-2 MySQL数据字典 (04:26)7-3 -1 数据入库-解析入库参数 (17:45)7-4 -2 数据入库-解析入库参数 (11:03)7-5 数据入库-查找数据字典 (22:09)7-6 -1 数据入库-拼接SQL语句 (15:18)7-7 -2 数据入库-拼接SQL语句 (10:39)7-8 数据入库-绑定SQL语句的参数 (11:47)7-9 -1 数据入库-执行插入和更新 (09:42)7-10 -2 数据入库-执行插入和更新 (15:04)7-11 数据入库-完善和优化 (24:30)7-12 大量数据的入库方案 (05:11)7-13 本章总结 (03:39)
第8章 数据标准化处理&数据统计分析这一章提供了更多的测试用例数据,训练的代码能力,介绍数据计算的应用场景,丰富项目经验。8-1 开篇语 (02:16)8-2 数据处理的工作内容 (08:40)8-3 数据统计的工作内容 (11:09)
第9章 开发数据同步子系统MySQL数据库如何集群? 主从复制?双主?DRDB?NDB CLUSTER?no,这世界上的事情没那么简单,尽人皆知的方法不是好方法。 这一章开发数据同步子系统,提供了更灵活的数据复制方案,在不同MySQL数据库的表之间进行数据同步,支持按条件同步和增量同步两种方式,源表和目的表的结构可以不同,数据量也可以不同,还可以支持...9-1 开篇语 (05:30)9-2 Federated存储引擎 (14:44)9-3 刷新同步-搭建程序的框架 (14:49)9-4 刷新同步-全表刷新 (10:46)9-5 刷新同步-分批刷新 (16:54)9-6 基于Federated引擎的增量同步 (25:07)9-7 不采用Federated引擎的增量同步 (22:06)9-8 本章总结 (09:52)
第10章 开发数据管理子系统这一章开发的数据清理和数据备份功能是系统运维的两个常用功能,用蚂蚁搬家的方法,把海量数据大事化小,应用广泛。10-1 开篇语 (06:11)10-2 数据清理 (15:01)10-3 数据迁移 (15:17)
第11章 Oracle数据库开发Oracle是关系型数据库的绝对霸主,性能卓越,无与伦比,作为优秀的程序员,必须拿得起重器。 这一章介绍了如何从MySQL进阶到Oracle的开发,各种数据库本质上没什么不同,对优秀程序员来说,只要做好了底层的封装,用什么数据库都一样。 ...11-1 .开篇语 (05:09)11-2 Oracle数据库的快速安装 (18:27)11-3 Oracle客户端环境 (19:10)11-4 Oracle和MySQL的区别 (07:58)11-5 Oracle数据库开发基础 (20:37)11-6 -1 Oracle版本的数据入库子系统 (18:42)11-7 -2 Oracle版本的数据入库子系统 (11:43)11-8 Oracle版本的数据清理子系统 (10:22)11-9 Oracle版本的数据抽取子系统 (10:38)11-10 Oracle版本的数据同步子系统 (26:20)11-11 Oracle数据库集群方案 (20:54)11-12 本章总结 (08:52)
第12章 Linux线程在互联网时代,高并发的多核编程已成为程序员的必备技能。 这一章介绍了Linux线程和线程同步的基础知识以及应用经验,用生产消息费模型实现的高速缓存是多核编程的基本构件。12-1 开篇语 (05:33)12-2 线程的创建和终止 (26:19)12-3 -1 线程参数的传递 (16:42)12-4 -2 线程参数的传递 (14:26)12-5 线程资源的回收 (20:16)12-6 线程取消 (10:00)12-7 线程和信号 (08:40)12-8 线程安全 (11:54)12-9 线程同步 (26:47)12-10 生产消费者模型的实现-方法一 (23:22)12-11 生产消费者模型的实现-方法二 (08:01)12-12 -1 多线程的网络服务端 (15:42)12-13 -2 多线程的网络服务端 (16:31)12-14 本章总结 (06:56)
第13章 开发数据服务总线一提到http协议和http服务,人们很容易想到用java来开发web服务,但是,别忘了java也是用C语言开发出来的,如果应用场景合适,用C/C++开发的web服务才是性能的王者。 这一章介绍了一种特殊的http服务应用场景:数据访问接口,以及用C/C++实现的具体方法。 ...13-1 开篇语 (04:57)13-2 -1 HTTP协议的本质 (16:50)13-3 -2 HTTP协议的本质 (11:13)13-4 HTTP数据访问接口的实现 (16:48)13-5 业务需求和表的设计 (12:39)13-6 -1 功能的初步实现 (13:58)13-7 -2 功能的初步实现 (13:50)13-8 数据库连接池的实现 (20:32)13-9 -1 数据库连接池的优化 (19:57)13-10 -2 数据库连接池的优化 (19:45)13-11 线程池的实现 (21:08)13-12 线程池的监控 (15:59)13-13 数据安全策略 (06:20)13-14 学习总结 (03:37)
第14章 I/O复用技术这一章介绍了I/O复用技术:select/poll/epoll,并开发一个通用的网络代理服务,为高性能的网络开发奠定基础。
第15章 学习总结这一章介绍了更多的项目经验和学习策略,丰富的项目经验有助于拿到offer,学习更强的技术可以拿到更好的offer。