学习笔记之开发相关概念(4)--Linux服务器

今天学习的概念是Linux服务器


一、服务器

什么是服务器呢?从字面理解,服务器就是提供各种服务的机器。服务器提供服务主要依赖于服务器软件,比如提供数据库服务的MySQL,提供缓存服务的redis,提供HTTP服务的Tomcat、Jetty、Apache、Nginx和IIS等等。

顺便说下HTTP服务器、WEB服务器和应用服务器的作用和区别HTTP服务器主要提供HTTP服务、WEB服务器主要支持的协议就是HTTP协议,所以通常情况下HTTP服务器等同于WEB服务器而应用服务器主要负责运行服务器端代码,提供业务逻辑(包括事务处理和数据库连接等等)Tomcat、Jetty、Apache、Nginx、IIS和WebLogic和WebSphere等等都可以提供HTTP服务,所以它们都属于HTTP服务器。其中Apache和Nginx是纯粹的HTTP服务器,它们处理静态请求的效率很高,但不能处理动态请求;Tomcat和Jetty主要通过运行Java代码处理动态请求,所以也可以将它们视作为轻量级的应用服务器(顺便说一下,PHP和Java类似,也是通过跑在应用服务器处理动态请求,而Python和node.js的程序一启动就是个应用服务器)WebLogic和WebSphere由于包含了EJB,相比Tomcat和Jetty属于比较重的应用服务器,现在用得比较少了;而IIS原本也是纯粹的HTTP服务器,由于引入了ASP引擎,具备了解释执行VBScript和JScript代码、处理动态请求的能力,可以将其视作带有一点应用服务器功能的HTTP服务器

一般会将应用服务器与纯粹的HTTP服务器结合使用,纯粹的HTTP服务器负责处理静态请求(获取HTML、CSS、JS和图片等静态资源),当处理动态请求时,先代理给与之配合的应用服务器处理,然后将处理完的响应返回给前端。目前最常用的纯HTTP服务器就是Apache和Nginx,Apache的代理方式是正向代理,Nginx的代理方式是反向代理。正向代理和反向代理的关键知识点:

  • 正向代理所代理的对象是客户端,反向代理所代理的对象是服务器
  • 正向代理服务器会向服务器发起一个新请求(隐藏真实的客户端),反向代理服务器会根据负载算法将请求转发给集群中的某个服务器
  • 正向代理服务器会将服务器的响应直接返回给对应的客户端,反向代理服务器会返回一个新响应(隐藏真实的服务器)
  • 反向代理通常会配合负载均衡使用,且随着并发量提升,负载均衡用的越来越多,而使用Nginx作为负载均衡服务器比Apache性能更好,所以现在主要使用Nginx


现在前后台系统大多使用分布式系统架构,这就意味着提供不同服务的子系统会被部署到不同的服务器上,比如HTTP服务器(微服务的应用程序也是分布式的,会将各个服务分开部署)、数据库服务器、缓存服务器等等。测试环境与生产环境应该完全相同,并且在生产环境中,只有部署路由网关服务(gateway)的HTTP服务器具有外网IP,负责对用户提供HTTP服务。

二、Linux的概念与文件目录结构

Linux是一个OS内核,绝大多数服务器使用的都是基于Linux的操作系统。目前Linux的发行版本主要包括Ubuntu、CentOS和Redhat等等,它们都使用了Linux内核。Linux系统的文件目录结构如图


三、远程连接

可以通过SSH、FTP、HTTP等协议与服务器建立远程连接,由于Linux系统自带SSH服务器(监听22端口),所以无需安装FTP服务器,通过SSH客户端即进行远程连接。目前比较常用的SSH/FTP客户端为SecureCRT和SecureFX,SecureCRT支持SSH2等协议,SecureFX支持SFTP、FTP等协议(SFTP协议也是基于SSH协议的)。


四、Linux常用指令

操作文件或目录常用命令:

  • pwd 显示当前工作目录(print working directory)
  • cd 切换目录(change directory)
  • ls 显示文件或目录列表(list)
  • mkdir 创建目录(make directory)
  • touch 创建文件
  • cp 复制文件或目录(copy)
  • mv 移动文件或目录、文件或目录改名(move)
  • rm 删除文件(remove)
  • cat 显示文本文件内容(catenate)

常用命令:

  • find 在文件系统中查找指定文件
  • grep 在指定的文本文档中查找指定文件
  • kill 杀死一个进程
  • netstat-nltp 显示网络状态信息
  • ifconfig查看网络配置
  • ping测试网络连通性

打包与解包、压缩与解压缩:

  • tar 打包与解包
  • gzip 压缩与解压缩(后缀为gz)
  • bzip2 压缩与解压缩(后缀为bz2)

软件安装:

  • rpm
  • yum
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值