文章目录

  • - - -中间件- - -
  • 1 Redis
  • 2 MongDB
  • 3 Nginx
    • 3.1 概述
      • 3.1 正向代理&反向代理
      • 3.2 Nginx的作用
    • 3.2 事件驱动架构
      • 3.2.1 IO模型
      • 3.2.2 多路复用器
      • 3.2.3 Nginx事件驱动架构
    • 3.3 可预见式进程模型
  • 4 MongoDB

- - -中间件- - -

1 Redis

  直接输入

2 MongDB

  你好

3 Nginx

3.1 概述

3.1 正向代理&反向代理

1. 正向代理
定义:正向代理用来代理客户端
作用:
  ① 访问原来无法访问的资源;
  ② 用作缓存,加速访问速度;
  ③ 对客户端访问授权,上网进行认证;
  ④ 代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息。
2. 反向代理
定义:反向代理用来代理服务端
作用:
  ① 保护内网安全;
  ② 负载均衡;
  ③ 缓存,减少服务器的压力。

3.2 Nginx的作用

  ① 反向代理,将多台服务器代理成一台服务器;
  ② 负载均衡,将多个请求分配到多台服务器上,减轻单台服务器压力,提高服务吞吐量;
  ③ 动静分离,nginx可用作静态文件的缓存服务器,提高访问速度。

3.2 事件驱动架构

3.2.1 IO模型

1. IO请求两步骤(读)
  内核查看数据是否就绪
  数据拷贝(磁盘->内核缓冲区->用户缓冲区)
2. IO分类及其原理

3.2.2 多路复用器

  多路复用器有三种模式select、poll、epoll,三种模式的优缺点如下表。

select poll epoll
操作方式 轮询 轮询 回调
就绪队列 数组 链表 链表
IO效率 调用方式为线性遍历,复杂度为O(n) 调用方式为线性遍历,复杂度为O(n) 事件通知方式,若fd就绪,系统注册的回调函被调用,复杂度O(1)

3.2.3 Nginx事件驱动架构

  Nginx采用epoll模型,实现异步非阻塞的事件处理机制。如下图,当多个client请求worker1,假设client1请求阻塞,由于异步非阻塞机制,worker1仍可以处理其他客户端请求。

3.3 可预见式进程模型

  Nginx启动后,包含一个master进程和多个worker进程,其结构如下图,worker进程数量一般配置为内核数量。
  master进程功能包括接收信号,向worker进程发信号,监控worker进程状态,重启worker进程等;worker进程功能为处理基本的网络事件。

4 MongoDB

  你好

Java总结 - 中间件相关推荐

  1. 我的2017年文章汇总——Java及中间件篇

    2018即将到来,大家看着2017给自己制定的计划有没有感慨?当你觉得过去一年没有什么进步时,那么请行动起来,能开始总是好的. 近期准备把过去一年写的文章按照分类重新整理推送一遍,包括:"分 ...

  2. Glassfish JAVA容器中间件使用(咋个办呢 zgbn)

    Glassfish JAVA容器中间件使用 安装Glassfish Glassfish官方下载页面:https://javaee.github.io/glassfish/download 下载Glas ...

  3. java中间件有哪些java常用中间件介绍

    之前给大家介绍了很多的java基础知识,今天同样的也是要给大家介绍这方面的内容,那么对于java中间件你都了解多少呢究竟什么是java中间件比较常用的java中间件都有哪些一起来了解一下吧. 一.什么 ...

  4. JAVA WEB_中间件

    目录 中间件 常见的web中间件有哪些 Tomcat Weblogic Jboss Jetty Webshere Glasshfish 中间件 我们经常会看到中间件,但是,一直好奇的是,中间件到底是什 ...

  5. java 中间件_从头到尾说一遍Java(中间件)垃圾回收

    之前上学的时候有这个一个梗,说在食堂里吃饭,吃完把餐盘端走清理的,是 C++ 程序员,吃完直接就走的,是 Java 程序员. 确实,在 Java 的世界里,似乎我们不用对垃圾回收那么的专注,很多初学者 ...

  6. Java Web中间件

    目录 中间件 常见的web中间件有哪些 Tomcat Weblogic Jboss Jetty Webshere Glasshfish 中间件 我们经常会看到中间件,但是,一直好奇的是,中间件到底是什 ...

  7. 工行银企直联(dom4j+java无中间件版)

    工行银企直联(dom4j无中间件版) 最近,接手了工行银企直联的任务,在网上找了很多,发现能一次说清的文章很少,此篇文章专为第一次接触银企直联的同学准备. 1.准备包:dom4j(自行百度,如果这一步 ...

  8. java packetmaster_TCP中间件_java_server

    packagejdbcOper;import java.sql.*;importjava.util.ArrayList;//ZC: 基类(基本全是static方法) public classTjdbc ...

  9. java数据库中间件实现,分布式数据库中间件DDM的实现原理

    随着数据量不断增大,传统的架构模式难以解决业务量不断增长所带来的问题,特别是在业务成线性.甚至指数级上升的情况.此时我们不得不通过水平扩展,把数据库放到不同服务器上来解决问题,也就是我们说的数据库中间 ...

最新文章

  1. SOJ 4543 4542
  2. 最后一场「屏之争」:汽车大佬与硅谷巨头的贴身肉搏
  3. 测试udp端口状态 curl_检测TCP/UDP端口的连通性
  4. java调用网络打印机不稳定_新手处理共享打印机总是没有反应的故障
  5. QT pro文件解析
  6. PHP 如何在Redis中实现事物(事物提交和事物回滚)
  7. 宫崎骏的动画片真有意思啊。
  8. 什么时候用synchronized
  9. 如何将文件拷贝服务器上,如何将文件复制到云服务器上
  10. Scom 2012 中的资源组(Resource Pool)
  11. echart高级使用_Vue:在Vue中使用echarts
  12. 稳定=死亡!废掉一个人的最好办法,就是让他瞎努力......
  13. JavaScript:模块化及模块化规范
  14. MFC界面库BCGControlBar v32.0 - 网格、报表控件升级
  15. 会声会影安装闪退解决办法_会声会影导出时闪退怎么回事 - 卡饭网
  16. 对服务器系统盘扩容,服务器系统盘扩容
  17. DSP TMS320F280049C之捕获eCAP(1)
  18. Python3 网络爬虫. 4
  19. mysql mtq_MySQL调优学习笔记(一、MySQL基础)
  20. linux中安shell怎么传入参数,【linux】linux 下 shell命令 执行结果赋值给变量【两种方式】...

热门文章

  1. kali攻击wifi、破解wifi详细教程(仅供学习使用)
  2. 推荐几款好用的企业级文档管理软件
  3. 照片编辑软件:DxO PhotoLab 4 Mac版
  4. 函数式编程(JAVA)——Lambda表达式
  5. Python闭包和装饰器
  6. 华为手机鸿蒙系统手机_升级快讯:又一批华为手机可以升级到“鸿蒙系统”了!...
  7. Excel生成随机32、36位ID
  8. 6条网页设计配色原则
  9. odbc连接数据库(MYSQL)以及在页面中显示其中数据
  10. MySQL作为空间数据库