web服务器也是端系统么,Web服务器和游戏服务器的那些事儿
随便聊聊
我接触过的软件,最早定义为C/S(Client/Server)和B/S(Brower/Server),如今传统意义上的C/S程序已经很少了,其实App和网络游戏还归位这一类。但更多的是B/S程序,基于各种浏览器的各种……有些朋友一直在做客户端的种种,比如说APP、手游客户端或是Web前端,对服务器端的知识很茫然,其实不然,从基础代码结构来讲,现在的客户端也很丰富了,什么MVC、MVVM架构应用都已经很成熟了,本地存储也OK,如sqlite、file什么的,也写过很多与服务器端交互的代码。这篇简单聊聊Web服务器和游戏服务器。
网络&系统
服务器端,最重要的就是网络,网络这块知识,看完《Unix网络编程》就无敌了。从现实工作应用中来看,HTTP、TCP、UDP是应用最广泛的,还有一些特殊的协议。
操作系统层面,需要了解进程、线程,尤其线程方面,再具体到框架实现即可。当然想深深的学习下操作系统也是可以的。。
Web服务器
几乎绝大多数的Web应用都是基于Http的,有空可以看下RFC-2616。Java里有Servlet,Node.js和Scala和Clojure和Golang、Python什么的都有自己的Http封装,PHP里有apache和nginx的CGI,有了这些,就可以解决客户端和服务器端通讯的问题了,服务器端要做的事情很多时候和客户端要做的类似,做一些逻辑处理,做一些持久化操作(数据库),也可能会与外部接口打打交道,然后将结果扔给客户端,基本就大功告成。只是在大架构方面的确需要比客户端健壮些(也可能是我没见过大型游戏)。如果想
web服务器也是端系统么,Web服务器和游戏服务器的那些事儿相关推荐
- 小森生活显示无可用服务器,《小森生活》无可用游戏服务器解决教程 无可用网关服务器怎么办...
导 读 小森生活无可用网关服务器是什么意思?怎么解决?小森生活无可用网关服务器这个提示在进入游戏中会出现哦,很多玩家都无法正常进入游戏怎么解决呢,现在就来告诉给大家详细解决方法吧~ 小森生活无可用游戏 ...
- 游戏服务器引擎的设计(一)介绍游戏服务器部署框架
服务器的架构,根据游戏类型不同大多有:账号服务器.全局服务器.网关服务器.场景服务器.中心服务器.存储服务器,配合其他的服务器(比如日志服,监控服等).传统的游戏是单服模式,现在也有很多的是分布式模式 ...
- android 游戏服务器,用于Android / iOS回合制棋盘游戏的游戏服务器
编辑您将如何进行大型多人游戏? 嗨西里尔, 正如你所注意到的,有两个主要的事情是两个考虑的: >发送到服务器的信息 >发送给客户的信息 只有一种类型的信息要发送到服务器:用户输入.如果你不 ...
- 游戏服务器引擎的设计(二)开发游戏服务器底层 及libuv使用
服务器底层,个人任务认为稳定.高效.易用最重要.如果非要排个序的话 稳定 > 易用 > 高效. 我是用的libuv这个库作为基础支持库的.为啥用它,主要是网络库不想自己写了,有现成的最好. ...
- php 多人游戏_「谁会是下一个王者农药」云服务器如何搭建游戏服务器?
手游越来越火了,听听业内人士的分析,他山之石,多多借鉴,那么手游的服务器到底如何搭建的? 从事游戏服务器开发差不多两年时间,两年间参与了不少项目,学到了很多游戏服务器开发技术,参与过几个不同架构的服务 ...
- go hive skynet_MMORPG游戏服务器技术选型参考-Go语言中文社区
游戏服务器一般追求稳定和效率,所以偏向于保守,使用的技术手段也是以已经过验证.开发人员最熟悉.能HOLD为主要前提. 1.典型按场景分服设计 开发语言: c++ 数据库:mysql 架构: 多个网关: ...
- 分布式的客户端-服务器结构_MMORPG游戏服务器技术选型参考
游戏服务器一般追求稳定和效率,所以偏向于保守,使用的技术手段也是以已经过验证.开发人员最熟悉.能HOLD为主要前提. 1.典型按场景分服设计 开发语言: c++ 数据库:mysql 架构:多个网关:维 ...
- 游戏服务器是什么怎么租用
游戏服务器是什么怎么租用 我是艾西,作为一个常年与游戏行业保持着高频率的服务器供应商,今天我以个人的专业知识以及经验和大家聊聊游戏服务器什么,它的工作原理是怎么与你的pc做交互的!!! 游戏服务器架构 ...
- 高性能分布式游戏服务器框架
欢迎大家Fork mqant开源框架 为什么决定要重新造一个轮子? 目前网上优秀的开源游戏服务器框架也不少(当然与web框架比起来就少太多了),但总结起来都各有各的优缺点,下面列出我在选型过程中的一些 ...
最新文章
- 1.2.4 ORACLE_SID的含义
- cad 关键字被保留了?选择集关键字保留了? N S W E关键字无法用?
- 《Ext JS权威指南》印出来了,大家很快就能拿到书了
- QT的QScriptEngineAgent类的使用
- 陈松松:三种方式教你打造一个行业内10万视频播放量
- 二分查找(java)
- sap采购申请自动转采购订单_SAP idoc功能够强大: 采购订单修改自动触发销售订单修改...
- 微软不愿意提及的软肋:Win10的语音识别
- 用于Linux系统/网络管理的nmap命令的实例
- 宋宝华:谈一谈Linux写时拷贝(COW)的安全漏洞(1)
- 1-7 华为HCNA认证eNSP基础A
- matlab用劳斯判据求k的范围,「精」已知单位负反馈系统的开环传递函数为G=K/s试确定系统稳定时的K值范围...
- Windows javaw进程占用cpu资源100% 导致电脑卡顿
- mac jupyter notebook 服务似乎挂掉了,但是会立刻重启的
- 入职前的背景调查到底在查什么?
- java查找文件路径_如何查找java路径?
- Android 微信抢红包插件
- 原创整理!计算机常用【快捷键、缩写、英语单词】不定更
- biti_rainy的blog
- Vue点击选中(多选)选中右上角有三角形
热门文章
- H5 MediaDevices方法,调用摄像头、屏幕录像功能
- mysql之聚簇索引与非聚簇索引
- 数学建模:线性规划及 Python 求解
- 商务办公软件应用与实践【2】
- Spring @Resource详解
- Servlet的执行原理
- C语言错误 error C2059
- Unix/Linux下的Curses库开发指南——第二章 curses库I/O处理
- linux安装mysql出现Could NOT find Curses (missing CURSES_LIBRARY CURSES_INCLUDE_PATH),提示解决方法
- 使用stl::string去除字符串前后的空白