c/c++linux服务器开发技术

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: c/c++linux服务器开发技术

一   开发技能(硬技能)     学得深不深取决于基础

1.  语言--->  

(对象生命周期,垃圾回收,标准库的使用,错误与异常处理,日志分析,断点调试,对面向对象的理解.设计模式.GDB的使用,高内聚低耦合)

2.  数据结构与算法---->

链表、队列、栈    -----   二叉树、红黑树、B树、B+树、dijkstra算法、最小生成树、广度优先、深度优先、递归、二分查找、11种排序(希尔、归并、快排、堆排序) -----

贪心算法、动态规划、跳表、散列表、hash、bitmap、布隆过滤器。

3.  数据库----> 持久化mysql------缓存redis

mysql安装与配置、sql语句建表-建库-索引-存储过程、存储引擎原理-myisam--innodb、事务隔离、连接池的原理-做法-管理、异步数据库请求、sql注入、webshell攻击、数据库集群的做法--分库分表--读写分离

redis编译安装--配置、redis命令使用、redis连接池、异步redis、redis集群(缓存雪崩,缓存击穿)、redis数据备份

4.  网络原理 ---->

ping , telent , ifconfig

网络体系模型

tcp原理 --三次握手、四次挥手、滑动窗口、慢启动、11个状态迁移

udp原理-- 实时性--不带流量控制

http、https、http2.0/http3.0

Session Cookie application

网络安全、加密、数字签名

wireshark(windows),tcpdump(linux)

iperf

5.  操作系统---->进程、线程、内存、cpu、进程管理、进程间通信、内存管理、内存泄漏主要方法

Linux使用、文件操作、系统操作、程序编译-运行、shell/vi的使用、linux系统性能监控参数 ps/netstat/df 、 进程管理、用户态/内核态、内存管理、内存池、内存泄漏、磁盘文件系统、虚拟文件系统、磁盘IO、

6.  网络编程--->socket  reactor livevent    (实战)

socket编程、TCP/UDP、网络IO模型、阻塞非阻塞、同步异步、IO多路复用 select/poll/epoll

epoll reactor , proactor  -----

time_wait/close_wait大量 C10K/C1000K/C10M  、 网络框架   libevent/libev、协程ntyco,libco

7.  分布式---> rpc

rpc , grpc , tars , brpc , srpc 、 简单rpc协议设计/框架搭建 、 协议传输的时候--序列化反序列化、

服务注册、服务发现、容灾、降机熔断、流量控制、高并发、高可用、分布式锁(多台机器公用一把锁)

8. 云原生 --->  直接在阿里云买一台机

腾讯云、阿里云、docker的使用 、docker的编排、docker的网络、k8s管理 、

9. 软技能    (决定了走的宽度和高度)

沟通能力、组织能力、协调能力、需求分析

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
W9
|
28天前
|
运维 关系型数据库 MySQL
轻松管理Linux服务器的5个优秀管理面板
Websoft9 应用管理平台,github 2k star 开源软件,既有200+的优秀开源软件商店,一键安装。又有可视化的Linux管理面板,文件、数据库、ssl证书方便快捷管理。
W9
82 1
|
1月前
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
37 4
|
1月前
|
运维 监控 Linux
服务器管理面板大盘点: 8款开源面板助你轻松管理Linux服务器
在数字化时代,服务器作为数据存储和计算的核心设备,其管理效率与安全性直接关系到业务的稳定性和可持续发展。随着技术的不断进步,开源社区涌现出众多服务器管理面板,这些工具以其强大的功能、灵活的配置和友好的用户界面,极大地简化了Linux服务器的管理工作。本文将详细介绍8款开源的服务器管理面板,包括Websoft9、宝塔、cPanel、1Panel等,旨在帮助运维人员更好地选择和使用这些工具,提升服务器管理效率。
|
19天前
|
存储 Oracle 安全
服务器数据恢复—LINUX系统删除/格式化的数据恢复流程
Linux操作系统是世界上流行的操作系统之一,被广泛用于服务器、个人电脑、移动设备和嵌入式系统。Linux系统下数据被误删除或者误格式化的问题非常普遍。下面北亚企安数据恢复工程师简单聊一下基于linux的文件系统(EXT2/EXT3/EXT4/Reiserfs/Xfs) 下删除或者格式化的数据恢复流程和可行性。
|
1月前
|
安全 Linux API
Linux服务器安全
人们常误认为服务器因存于数据中心且数据持续使用而无需加密。然而,当驱动器需维修或处理时,加密显得尤为重要,以防止数据泄露。Linux虽有dm-crypt和LUKS等内置加密技术,但在集中管理、根卷加密及合规性等方面仍存不足。企业应选择具备强大验证、简单加密擦除及集中管理等功能的解决方案,以弥补这些缺口。
26 0
|
7月前
|
存储 Linux 编译器
Linux C/C++ 编程 内存管理之道:探寻编程世界中的思维乐趣
Linux C/C++ 编程 内存管理之道:探寻编程世界中的思维乐趣
135 0
|
7月前
|
关系型数据库 MySQL 数据库
Linux C/C++ 开发(学习笔记七):Mysql数据库C/C++编程实现 插入/读取/删除
Linux C/C++ 开发(学习笔记七):Mysql数据库C/C++编程实现 插入/读取/删除
155 0
|
7月前
|
Shell Linux C++
Linux C/C++ 开发(学习笔记二):Shell脚本编程案例
Linux C/C++ 开发(学习笔记二):Shell脚本编程案例
115 0
|
Linux C语言 C++
Linux ICMP协议实现:C/C++编程指南
ICMP(Internet Control Message Protocol)是网络通信中的重要协议,用于在IP网络中传递错误消息和诊断信息。在Linux系统中,我们可以使用C/C++编程语言来实现基本的ICMP功能,例如发送ICMP回显请求(Ping)和解析ICMP消息。本文将带您深入了解C/C++实现的ICMP协议,包括套接字编程、构造ICMP报文、发送和接收ICMP消息等,以及提供实际的代码示例。
935 1
|
7月前
|
算法 Linux Shell
Linux C/C++ 开发(学习笔记三):Linux C编程案例
Linux C/C++ 开发(学习笔记三):Linux C编程案例
54 0