U3D服务器端开发知识点总结
来源:互联网 发布:赛门铁克软件 编辑:程序博客网 时间:2024/05/21 11:15
U3D服务器端开发知识点总结
写在前面: 这篇文章会比较杂,针对服务器端遇到的问题或比较重要的知识点,搞清楚了之后加入自己的理解记录下来,也就是我自己的一些个知识点总结笔记。
一、 TCP/IP三次握手,四次挥手:
TCP/IP协议 三次握手与四次挥手
上面这篇文章就介绍的很清楚了,我说一下自己的理解,帮助记忆:
TCP三次握手:
- 客户端说:服务器,我的资源准备就绪了,我要来连接你;
- 服务器端答:OK,我允许你连;我这边资源也准备就绪了,等你来激活我;
- 客户端答:OK,我来了激活你了,我们建立连接成功。
TCP四次挥手:
- 客户端说:我要断开连接了,我以后都不会再向你发数据了;
- 服务器端答:OK。不过我还有东西要向你发,你等着;
- 服务器端说:我的数据也传完了,我以后也不会再向你发数据了;
- 客户端说:OK。那我们就say goodbye吧。
二、 select/poll/epoll的区别:
select、poll、epoll之间的区别总结
网上总结也是很多的,我根据自己多年使用经验,说下自己的理解:
select:
相比较于普通轮询来说,其实是一种无差别的轮询,但是是基于IO多路复用的基础上的,这是什么意思呢,就是说,select的轮询是在加入到FD集里面的描述符进行无差别轮询。而且每次select都会做用户空间到内核空间的数据拷贝,开销大。
select支持默认的fd数量为1024个。poll:
和select相似,比较而言,poll的fd是靠链表管理,没有fd数量限制。但是有个“水平触发”的问题,如果报告了fd后,没有被处理,那么下次poll时会再次报告该fd。也存在开销大,拷贝多的问题。epoll:
这个就真的是基于事件来触发了,哪个fd,或者哪些fd有数据触发,那么就向内核报告一次。通知具体callback来处理。
三、服务器端高并发、海量数据、负载均衡、容错处理、内存调优等技术,需要学习总结。
好了,后面遇到问题了再慢慢补充,或者新起一篇文章。前两天搞U3D在Mac OS上面的模拟器运行游戏,花了不少时间。
PS:
我是从嵌入式转到游戏开发的,后面是想要做游戏、影视VR。三年多的嵌入式开发经验,给自己积累了大量的底层知识,而且我本人也学习过网络协议、UG建模、Web开发。Linux服务器端就更不在话下了。知识面很广。现在学起U3D、计算机图形学、Shader有关知识也算快速通透。但是讲真,时间太不够用了,知识框架搭建起来了之后,要学习和掌握的东西实在太多。而且不能猴子掰包谷,要稳扎稳打,学习之后要多总结啊,所谓好记性不如烂笔头。
接下来就要准备笔试有关的东西了,也是一大堆要去啃碎,消化掉的骨头。讲真,你要我现在去笔试,对上刚毕业的学生,基本上没啥胜算。工作经验,就是在实战中摸爬滚打啊,奈何笔试这关也是要去过,花点时间搞吧,自勉吧!
- U3D服务器端开发知识点总结
- U3D开发项目总结
- [Unity3D]U3D开发项目总结
- u3d知识点
- 服务器端开发总结
- 服务器端开发总结
- [Unity3D]U3D开发项目总结(转)
- U3D基础知识点回顾
- U3D -- 一些知识点
- U3D 开发
- webservice客户端,服务器端开发总结
- Android开发知识点总结
- Android开发知识点总结
- 开发总结知识点
- Android 开发知识点总结
- Android开发知识点总结
- 前端开发知识点总结
- 【unity系统模块开发】u3d 层次问题总结
- Linux和Windows的区别
- CSS
- Exynos4412 Uboot 移植(三)—— Uboot添加自定义命令
- hrbust 1397 XianGe的游戏II【KMP】
- C++网络编程之服务器编程
- U3D服务器端开发知识点总结
- 点击Button效果
- Java多线程 之 原子性与可见性(八)
- Exynos4412 Uboot 移植(二)—— Uboot 启动流程分析
- Googol String
- Exynos4412 Uboot 移植(一)—— Uboot 编译流程分析
- Android中发起网络访问的方式,以及Json、Gson的网络解析
- 删除单链表中的重复节点(删除多余项)
- 构造函数,析构函数