Nginx、Tomct、Apache的web服务的使用区别

一、HTTP服务

1.对HTTP的了解

   Apcahe是一个模块化服务,支持的模块比较多,属于同步阻塞型,也就在一个时间点内一个线程只处理一个进程。
   对于高并发的场景来说,处理的速度比较慢。但是其运行稳定。支持正则表达式做动静分离。

二、Nginx

nginx

 Nginx是一个高性能web服务器以及反向代理服务器。同时也是IMAP/POP3/SMTP 邮件代理服务器。

nginx实现高并发

由于nginx采用epoll模型,该模型采用异步非阻塞的事件处理方式,可以让nginx进程同时监控多个事件。
 一个master进程有多个worker进程,一个worker进程可以处理多个请求来达到一个高并发的状态
 master:读取及评估配置和维持
 worker:处理请求

nginx的调度算法
1.round-robin:轮询
2.weight:权重
3.ip_hash
4.url_hash…
nginx的相关模块
1.访问控制模块:ngx_http_access_module
2.用户认证模块:ngx_http_auth_basic_module
3.fastcgi模块:ngx_http_fastcgi_module
4.压缩模块:ngx_http_gzip_module
5.限制并发模块:ngx_http_limit_conn_module
6.日志模块:ngx_http_log_module
7.代理模块:ngx_http_proxy_module
8.地址重写模块:ngx_http_rewrite_module
9.加密模块:ngx_http_ssl_module
10.状态模块:ngx_http_stub_status_module
11.调度器模块:ngx_http_upstream_module

三、Tomcat

解释
应用severlet服务器。apache的扩展。主要是负责动态java的web请求处理。
相关优化:内存优化、线程优化、session的过期时间、禁用dns查询。
部署方式
1.conf中,一个节点就是一个页面
2.web项目文件拷贝到tomcat的webapps目录中
。。。
运行模式
BIO:同步阻塞
NIO:同步非阻塞
APR:异步非阻塞
总结
apache与tomcat:

apache侧重于httpserver,tomcat侧重于servlet引擎

nginx与apacche

1.nginx--轻量级,占用更少的内存及资源
  --抗并发,nginx处理是异步非阻塞,apache为阻塞型。
  --高度模块化设计,编写模块相对简单
  --提供负载均衡
  --社区活跃,各种高性能模块出品迅速
  
 2.apache--rewrite比nginx强大
    --支持动态页面
   --性能稳定,bug较少
   
3. Nginx 配置简洁, Apache 复杂 ;
    Nginx 静态处理性能比 Apache 高 3倍以上 ;
   Apache 对 PHP 支持比较简单,Nginx 需要配合其他后端用; 
   Apache 的组件比 Nginx 多 ;
    apache是同步多进程模型,一个连接对应一个进程;	nginx是异步的,多个连接(万级别)可以对应一个进程;
   nginx处理静态文件好,耗费内存少;
   动态请求由apache去做,nginx只适合静态和反向;
   Nginx适合做前端服务器,负载性能很好;
   Nginx本身就是一个反向代理服务器 ,且支持负载均衡
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值