设为首页 加入收藏

TOP

A.1.5 网络编程的各种任务角色
2013-10-07 16:05:02 来源: 作者: 【 】 浏览:77
Tags:A.1.5 网络编程 各种 任务 角色

A.1.5 网络编程(www.cppentry.com)的各种任务角色

计算机网络是个big topic,涉及很多人物和角色,既有开发人员,也有运维人员。比方说:公司内部两台机器之间ping 不通,通常由网络运维人员解决,看看是布线有问题还是路由器设置不对;两台机器能ping 通,但是程序连不上,经检查是本机防火墙设置有问题,通常由系统管理员解决;两台机器能连上,但是丢包很严重,发现是网卡或者交换机的网口故障,由硬件维修人员解决;两台机器的程序能连上,但是偶尔发过去的请求得不到响应,通常是程序bug,应该由开发人员解决。

本文主要关心开发人员这一角色。下面简单列出一些我能想到的跟网络打交道的编程(www.cppentry.com)任务,其中前三项是面向网络本身,后面几项是在计算机网络之上构建信息系统。

1. 开发网络设备,编写防火墙、交换机、路由器的固件(firmware)。

2. 开发或移植网卡的驱动。

3. 移植或维护TCP/IP 协议栈(特别是在嵌入式系统上)。

4. 开发或维护标准的网络协议程序,HTTP、FTP、DNS、SMTP、POP3、NFS。

5. 开发标准网络协议的"附加品",比如HAProxy、squid、varnish 等Web loadbalancer。

6. 开发标准或非标准网络服务的客户端库,比如ZooKeeper 客户端库、memcached客户端库。

7. 开发与公司业务直接相关的网络服务程序,比如即时聊天软件的后台服务器、网游服务器、金融交易系统、互联网企业用的分布式海量存储、微博发帖的内部广播通知等等。

8. 客户端程序中涉及网络的部分,比如邮件客户端中与POP3、SMTP 通信的部分,以及网游的客户端程序中与服务器通信的部分。

本文所指的"网络编程(www.cppentry.com)"专指第7 项,即在TCP/IP 协议之上开发业务软件。换句话说,不是用Sockets API 开发mudu这样的网络库,而是用libevent、muduo、Netty、gevent 这样现成的库开发业务软件,mudu自带的十几个示例程序是业务软件的代表。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇A.1.4 可移植性重要吗 下一篇A.1.6 面向业务的网络编程的特点

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·用 C 语言或者限制使 (2025-12-25 08:50:05)
·C++构造shared_ptr为 (2025-12-25 08:50:01)
·既然引用计数在做 GC (2025-12-25 08:49:59)
·Java 编程和 c 语言 (2025-12-25 08:19:48)
·. net内存管理宝典这 (2025-12-25 08:19:46)