图书目录

目录

程序源码

第一部分系统级编程及网络通信基础

第1章系统级软件构建基础

1.1软件构建系统过程中常用的编译工具

1.1.1GCC编译器的基本工作过程

1.1.2GCC编译器的使用

1.1.3软件构建系统过程中的补充说明

1.2基于make的构建工具

1.2.1Makefile的入门示例

1.2.2Makefile详解

1.2.3make的工作原理

1.3基于CMake的构建工具

1.3.1CMake的安装

1.3.2CMake的原理

1.3.3CPack的打包

1.4CMake构建软件综合实例

1.4.1项目结构

1.4.2实例实现

1.4.3运行结果

1.5本章小结

1.6习题1

第2章系统级软件多任务编程技术

2.1概述

2.1.1并行与并发

2.1.2进程与线程

2.1.3多任务协同

2.2多进程编程实践——以Linux平台为例

2.2.1进程控制

2.2.2消息队列

2.3多线程编程实践——以Linux平台为例

2.3.1线程控制

2.3.2线程协同

2.3.3线程池

2.4本章小结

2.5习题2

第3章系统级软件开发中的死锁问题

3.1死锁概述

3.2死锁的解决策略

3.3编程技巧与实践

3.4本章小结

3.5习题3

第4章软件系统网络通信的实现

4.1网络通信基础

4.1.1OSI参考模型

4.1.2TCP/IP协议

4.1.3UDP协议

4.1.4TCP协议

4.1.5ICMP协议

4.2套接字编程

4.2.1Client/Server通信模型

4.2.2Socket及其工作步骤

4.2.3Socket编程涉及的相关概念

4.2.4Berkeley Socket常用函数

4.2.5Socket系统调用的具体使用方法

4.2.6其他Socket系统调用

4.3套接字编程实例

4.3.1项目功能介绍

4.3.2Socket在代码中的作用

4.4本章小结

4.5习题4

第5章系统级软件编程实例——智慧旅游服务系统

5.1系统架构设计

5.2网络通信协议设计

5.2.1TMEP协议数据结构设计

5.2.2TMEP协议数据解析设计

5.2.3TMEP协议客户端请求设计

5.2.4TMEP协议服务器端响应设计

5.3基于make构建智慧旅游服务系统

5.3.1客户端的Makefile文件

5.3.2服务器端的Makefile文件

5.4用户管理模块的实现

5.4.1采用循环实现的无连接服务

5.4.2采用循环实现的面向连接服务

5.4.3采用多线程并发实现的面向连接服务

5.4.4采用线程池并发实现的面向连接服务

5.4.5采用多进程并发实现的面向连接服务

5.4.6采用单线程并发实现的面向连接服务

5.5旅游信息查询模块的实现

5.5.1查询功能数据表设计

5.5.2查询功能代码的实现

5.5.3将程序打包为RPM和DEB

5.6定时更新气象信息

5.6.1相关数据结构设计

5.6.2客户端和服务器端通信

5.6.3客户端代码说明

5.6.4服务器端代码说明

5.7用户互动和社交服务

5.7.1服务器端的实现

5.7.2客户端的实现

5.8本章小结

5.9习题5

第二部分常用分布式应用实现技术

第6章分布式系统概述

6.1概述

6.1.1分布式系统简介

6.1.2分布式系统的特点

6.1.3分布式架构与中心化架构的对比

6.2分布式系统模型

6.2.1分布式系统模型简介

6.2.2物理模型

6.2.3体系结构模型

6.2.4基础模型

6.3常用的分布式网络架构

6.3.1RPC通信简介

6.3.2SOA及SOAP简介

6.3.3RESTful简介

6.4本章小结

6.5习题6

第7章RPC技术原理及应用

7.1RPC概述

7.1.1RPC简介

7.1.2RPC与传统网络通信的对比

7.2RPC的工作原理

7.2.1RPC的交互过程

7.2.2RPC的完整架构

7.2.3RPC的调用流程

7.3分布式RPC框架Dubbo

7.3.1Dubbo架构及原理

7.3.2Dubbo开发示例

7.4基于RPC架构的旅游信息服务的实现

7.4.1server端的实现

7.4.2client端的实现

7.4.3实例展示

7.5本章小结

7.6习题7

第8章RESTful架构及应用

8.1REST和RESTful

8.1.1REST及其特性

8.1.2RESTful架构及其特点

8.1.3RESTful架构与传统网络通信的对比

8.2RESTful的工作原理

8.2.1客户端服务器

8.2.2无状态

8.2.3缓存

8.2.4统一接口

8.2.5分层系统

8.2.6按需代码

8.3基于RESTful架构的景点服务的实现

8.3.1定义景点实体(Attraction)

8.3.2创建景点服务(AttractionService)

8.3.3实现RESTful控制器

8.3.4实例演示

8.4本章小结

8.5习题8

第9章微服务架构及应用

9.1从单体应用到微服务

9.1.1服务架构的演变历程

9.1.2微服务生态系统

9.1.3主流的微服务平台

9.2模块拆分及微服务架构

9.2.1模块拆分的原则

9.2.2微服务的关键技术及组件

9.3服务治理

9.3.1基本概念与问题引入

9.3.2服务注册

9.3.3服务发现

9.4服务之间的调用

9.4.1服务提供者与消费者

9.4.2调用模式

9.5基于SpringBoot的智能旅游服务的实现

9.5.1系统功能介绍

9.5.2系统搭建

9.5.3旅游服务预订模块的设计及实现

9.5.4AI服务模块的设计及实现——智能旅游客服

9.6本章小结

9.7习题9

附录A开发环境准备

A.1硬件选择

A.2操作系统

A.3基本编辑器VIM

A.4VS Code的安装及使用

附录BMySQL数据库的安装和使用

B.1MariaDB的安装

B.2创建数据库和数据表

附录CC语言操作MySQL数据库

C.1查询MySQL客户端版本

C.2连接MySQL数据库

C.3查询表记录

C.4插入表记录

C.5修改表记录

C.6删除表记录

C.7MySQL开发的整体流程

C.8库及头文件

C.9MySQL常用数据结构

C.10MySQL常用数据库操作函数

C.11代码模块化

参考文献