今天简单总结一下作为一个服务端开发工程师所必须掌握的知识技能。
1、OS
Windows基本的装机、安全设置(防火墙配置等)、常用DOS命令等;
Linux基本的命令;
了解Windows和Linux性能的主要差异,比如普通的64位windows服务器能处理两三千的并发,而同配置的Linux服务器可以处理1W的并发量。
2、WebServer
简单地说,WebServer专门处理HTTP请求。主流产品有apache、nginx、kangle等。常用来做反向代理服务器甚至集群(双网卡)。
3、AppServer
简单地说,AppServer通过各种协议,将业务逻辑呈现给客户端,可以动态网页技术。主流产品有Jetty、Apache的Tomcat、IBM的websphere和BEA的WebLogic等等。
4、DB
常用数据库的特点;
同一数据库的版本差异;
数据库迁移时需要注意的事项;
等等。
例如:Oracle的导入、导出、权限配置、表空间、数据文件存在哪、LOG存在哪、组成结构(段、区、表)、PGA(全局缓存)等。
5、消息中间件(例如MQ)
几种模式;
适用场合
(1)不同系统间的异步集成
主系统与邮件系统、短信系统、ERP系统之间的通讯。
银行系统与公安系统之间的通讯。
淘宝下单后,主系统与配送系统、统计系统等各个子系统间的通讯。
(2)内外网隔离
银行核心网与非核心网之间的隔离,中间件充当数据闸的作用。
6、各种硬件
例如硬盘:传统硬盘、磁盘阵列、固态硬盘之间的差异,什么情况适用哪种硬盘,或者哪几种、如何组合、如何分配等等问题。
反向代理
客户机不知道被代理服务器的ip;反向代理的优点:安全、可做负载均衡;
负载均衡
软负载,http层做均衡,适合HTTP通讯;
硬负载,应用层做均衡,适合非HTTP通讯;
设计一个系统,要首先考虑用户量,估算数据规模和并发数。
转载于:https://www.cnblogs.com/jimmy-c/p/3980260.html