精华内容
下载资源
问答
  • 常用中间件

    千次阅读 2021-10-24 22:26:40
    中间件 什么是中间件 中间件(Middleware)顾名思义是系统软件和用户软件之间连接的软件,以便于软件各部分之间的沟通,特别是应用软件对于系统软件的集中逻辑,是一种独立的系统或者服务程序,分布式应用软件借助...

    中间件

    image-20210710230513501

    什么是中间件

    中间件(Middleware)顾名思义是系统软件和用户软件之间连接的软件,以便于软件各部分之间的沟通,特别是应用软件对于系统软件的集中逻辑,是一种独立的系统或者服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件在客户端服务器的操作系统、网络和数据库之上,管理计算机资源和网络通信。总的作用是为处于自己上层的应用软件提供运行和开发的环境,帮助用户灵活、高效的开发和集成复杂的应用软件

    关于中间件,我们可以理解为:是一类能够为一种或者多种应用程序合作互通、资源共享同时还能够为应用程序提供相关的服务的软件。中间件是一类软件统称,而非一种软件;中间件不仅仅实现互连,还要实现应用之间的互操作

    image-20210605142930181

    分布式系统

    什么是分布式系统

    一个请求由服务器端的多个(服务或者系统)协同处理完成

    分布式为了解决单个服务器容量和性能瓶颈问题而采用的优化手段,将一个业务拆分成不同的业务,分布在不同的机器上执行。服务之间通过远程调用协同工作,对外提供服务

    分布式系统需要解决的问题

    该领域需要解决的问题极多,在不同的技术层面上,又包括:分布式缓存、分布式数据库、分布式计算、分布式文件系统等

    分布式的实现形式

    • 水平扩展:当一台机器扛不住流量时,就通过添加机器的方式,将流量分到所有服务器上,所有机器都可以提供相同的服务
    • 垂直拆分:前端有多种查询需求是时,一台机器扛不住,可以将不同的业务需求分发到不同的机器上,比如A机器处理余票查询的请求,B机器处理支付的请求

    分布式和微服务的区别

    微服务是架构设计方式,分布式是系统部署方式时

    微服务架构

    微服务

    简单来说微服务就是很小的服务,小到一个服务只对应一个单一的功能,只做一件事。这个服务可以单独部署运行,服务之间可以通过RPC来相互交互,每个微服务都是由独立的小团队开发,测试,部署,上线,负责它的整个生命周期

    微服务架构

    在做架构设计的时候,先做逻辑架构,再做物理架构,当你拿到需求后,估算过最大用户量和并发量后,计算单个应用服务器能否满足需求,如果用户量只有几百人的小应用,单体应用就能搞定,即所有应用部署在一个应用服务器里,如果是很大用户量,且某些功能会被频繁访问,或者某些功能计算量很大,建议将应用拆解为多个子系统,各自负责各自功能,这就是微服务架构

    分布式

    分布式服务顾名思义服务是分散部署在不同的机器上的,一个服务可能负责几个功能,是一种面向SOA架构的,服务之间也是通过rpc来交互或者是webservice来交互的。逻辑架构设计完后就该做物理架构设计,系统应用部署在超过一台服务器或虚拟机上,且各分开部署的部分彼此通过各种通讯协议交互信息,就可算作分布式部署,生产环境下的微服务肯定是分布式部署的,分布式部署的应用不一定是微服务架构的,比如集群部署,它是把相同应用复制到不同服务器上,但是逻辑功能上还是单体应用

    对比

    微服务相比分布式服务来说,它的粒度更小,服务之间耦合度更低,由于每个微服务都由独立的小团队负责,因此它敏捷性更高,分布式服务最后都会向微服务架构演化,这是一种趋势,不过服务微服务化后带来的挑战也是显而易见的,例如服务粒度小,数量大,后期运维将会很难

    消息中间件

    • 利用可靠的消息传递机制进行系统和系统直接的通讯
    • 通过提供消息传递和消息的排队机制,他可以在分布式系统环境下扩展进程间的通讯

    应用场景

    1. 跨系统数据传递
    2. 高并发流量削峰
    3. 数据的分发和异步处理
    4. 大数据分析与传递
    5. 分布式事务

    为什么使用MQ?

    • 异步处理:相比于传统的串行、并行方式,提高吞吐量
    • 应用解耦:系统间通过消息通信,不用关心其他系统的处理
    • 流量削峰:可以通过消息队列长度控制请求量;可以缓解短时间内高并发请求
    • 日志处理:处理大量日志传输
    • 消息通讯:消息队列一般都内置了高效的通信机制,因此也可以用在纯的消息通讯。比如实现对点消息队列,或者聊天室

    消息队列的优缺点

    优点

    解耦

    允许独立扩展或者修改两边的处理过程,只要确保他们遵守同样的接口约束

    一个系统或者一个模块,调用了多个系统或者模块,互相之间的调用很复杂,维护起来很麻烦,但是其实这个调用是不需要直接同步调用接口的,如果用MQ给它异步化解耦

    A系统发送数据到BCD三个系统,通过接口调用发送。如果E系统也需要这个数据呢?那如果 C 系统现在不需要了呢?A系统根其他各种乱七八糟的系统严重耦合,A系统产生一条比较关键的数据,很多系统都需要A系统将这个数据发送过来

    如果使用MQ,A系统产生一条数据,发送到MQ里面去;如果某个系统不需要这条数据了,就取消对MQ消息的消费即可。这样下来,A系统压根儿不需要去考虑要跟谁发送数据,不需要维护这个代码是,也不需要考虑人家是否调用成功、失败超时等情况

    异步

    不需要立即处理消息,消息队列提供了异步处理机制,允许用户把一个消息放入队列中,但不立即处理它,在需要的时候进行处理

    A系统接收一个请求,需要在自己本地写库,还需要在BCD三个系统写库,自己本地写库要3ms,BCD三个系统分别写库要 300ms、450ms、200ms。最终请求总延时是 3 + 300 + 450 + 200 = 953ms,接近 1s。

    如果使用MQ,那么 A 系统连续发送 3 条消息到 MQ 队列中,假如耗时 5ms,A 系统从接受一个请求到返回响应给用户,总时长是 3 + 5 = 8ms。

    削峰

    减少高峰时期对服务器压力

    使用消息队列能够使关键组件顶住突发(突发流量并不常)的访问压力,而不会为突发的超负荷请求而完全崩溃

    可恢复性

    系统的一部分组件失效时,不会影响到整个系统。消息队列较低了进程间的耦合度,所以即使一个处理消息的进程挂掉,加入队列的消息任然可以在系统恢复后被处理

    缺点

    • 系统可用性降低:如果消息队列挂了,系统就无法正常运行
    • 系统复杂性提高:加入消息队列,要考虑更多的问题,比如:一致性问题、如何保证消息不被重复消费、如何把正确的消息的可靠传输等。因此考虑的东西增加,复杂性增加
    • 一致性问题(分布式事务):A 系统处理完了直接返回成功了,人都以为你这个请求就成功了;但是问题是,要是 BCD 三个系统那里,BD 两个系统写库成功了,结果 C 系统写库失败了,这数据就不一致了

    消息队列选择

    ActiveMQ

    老牌的消息中间件,国内很多公司过去运用的非常广泛,功能强大,但是问题在于没法确认ActiveMQ可以支撑互联网公司的高并发、高负载以及高吞吐的复杂场景,在国内互联网公司落地较少。而且使用较多的是一些传统企业,用ActiveMQ做异步调用和系统解耦

    RabbitMQ

    好处在于可以支撑高并发、高吞吐、性能很高,同时有非常完善便捷的后台管理界面可以使用,支撑集群化、高可用部署架构、消息高可靠支持,功能较为完善。使用较为多

    除此之外,RabbitMQ的开源社区很活跃,较高频率的迭代版本,来修复发现的bug以及进行各种优化

    但是RabbitMQ也有一点缺陷,就是他自身是基于erlang语言开发的,所以导致较为难以分析里面的源码,也较难进行深层次的源码定制和改造,毕竟需要较为扎实的erlang语言功底才可以

    RocketMQ

    RocketMQ是阿里开源的,经过阿里的生产环境的超高并发、高吞吐的考验,性能卓越,同时还支持分布式事务等特殊场景

    而且RocketMQ是基于Java语言开发的,适合深入阅读源码,有需要可以站在源码层面解决线上生产问题,包括源码的二次开发和改造。

    Kafka

    Kafka提供的消息中间件的功能明显较少一些,相对上述几款MQ中间件要少很多,但是Kafka的优势在于专为超高吞吐量的实时日志采集、实时数据同步、实时数据计算等场景来设计

    因此Kafka在大数据领域中配合实时计算技术(比如Spark Streaming、Storm、Flink)使用的较多。但是在传统的MQ中间件使用场景中较少采用

    ActiveMQRabbitMQRocketMQKafkaZeroMQ
    单击吞吐量比RabbitMQ低2.6w/s(消息做持久化)11.6w/s17.3w/s29w/s
    开发语言javaErlangJavaScala/JavaC
    主要维护者ApacheMozilla/SpringAlibabaApacheiMatix,创始人已去世
    成熟度成熟成熟开源版本不够成熟比较成熟只有C、PHP等版本成熟
    订阅形式点对点(p2p)、广播(发布-订阅)提供了4种:direct, topic ,Headers和fanout。fanout就是广播模式基于topic/messageTag以及按照消息类型、属性进行正则匹配的发布订阅模式基于topic以及按照topic进行正则匹配的发布订阅模式点对点(p2p)
    持久化支持少量堆积支持少量堆积支持大量堆积支持大量堆积不支持
    顺序消息不支持不支持支持支持不支持
    性能稳定性一般较差很好
    集群方式支持简单集群模式,比如‘主-备’,对高级集群模式支持不好支持简单集群,'复制’模式,对高级集群模式支持不好。常用 多对’Master-Slave’ 模式,开源版本需手动切换Slave变成Master天然的‘Leader-Slave’无状态集群,每台服务器既是Master也是Slave不支持
    管理界面一般较好一般

    消息中间件的核心组成部分

    1. 消息的协议
    2. 消息的持久化机制
    3. 消息的分发策略
    4. 消息的高可用,高可靠
    5. 消息的容错机制
    展开全文
  • 比较常用的java中间件都有哪些?一起来了解一下吧。一、什么是java中间件?首先的话,我们要来介绍一下究竟什么是java中间件。随着Javaweb开发的演进和进化,在面对消息系统、数据库、服务化接口的抽象等等涉及数据...

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

    一、什么是java中间件?

    首先的话,我们要来介绍一下究竟什么是java中间件。

    随着Java

    web开发的演进和进化,在面对消息系统、数据库、服务化接口的抽象等等涉及数据分离的过程当中,在分离过程当中,会涉及到分离之后,系统间、数据库间的交互。

    java中间件就是处理数据交互、连接数据分离之后两个系统间的通信。

    中间件不允许任何一个开发项目。

    也就是让我们对应系统间或者是数据库间数据流通没有感知。

    有点像Linux下的管道。

    二、java常用中间件

    在Java web开发中适用的范围主要应该是下面的3个领域。

    1、远程过程调用和对象访问中间件

    这个主要的是解决分布式环境下应用的互相访问问题。

    同时,这个也是支撑应用服务化功能的基础。

    就国内来说,当前远程服务框架中间件较多应用的是阿里巴巴的开源分布式服务框架Dubbo。

    2、消息队列中间件

    这个主要解决的是应用之间的消息传递、解耦、异步的问题。

    它是一种EDA架构。

    也就是通过在低耦合的模块之间传输事件消息来完成模块之间的合作。

    在很多大型的网站当中,消息队列采用发布和订阅模式。

    当前,比较常用的消息队列产品有RabbitMQ、Kafka、Apache的ActiveMQ、RocketMQ等等。

    分布式服务框架和分布式消息队列是系统模块化之后主要的两种聚合方式。

    3、数据访问中间件

    它主要解决的是应用访问数据库的共性问题的组件 。

    举例说明:

    它就是使用数据库指定的数据驱动。

    例:ODBC和JDBC。

    下面以JDBC作为例子来说明。

    数据库本地维护了一个数据访问中间件,那么在对数据库进行访问的时候,配置的地址,其实是直接连接到JDBC这个数据访问中间件的。

    假如,执行查询数据又或者是对数据库的操作都是通过JDBC来连接数据库,之后,通过JDBC查询完成数据库过后,再返回给我们应用程序。

    作为中间件,查询过程对于我们是不可知的。

    java中间件就给你介绍到这里了,更多java入门知识,请继续来奇Q工具网进行了解吧。

    推荐阅读:

    展开全文
  • 比较常用的java中间件都有哪些?一起来了解一下吧。 一、什么是java中间件? 首先的话,我们要来介绍一下究竟什么是java中间件中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间...

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

    一、什么是java中间件?

    首先的话,我们要来介绍一下究竟什么是java中间件。

    中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息。

    随着Java

    web开发的演进和进化,在面对消息系统、数据库、服务化接口的抽象等等涉及数据分离的过程当中,在分离过程当中,会涉及到分离之后,系统间、数据库间的交互。

    java中间件就是处理数据交互、连接数据分离之后两个系统间的通信。

    中间件不允许任何一个开发项目。

    也就是让我们对应系统间或者是数据库间数据流通没有感知。

    有点像Linux下的管道。

    二、java常用中间件
    主要中间件的分类

    1. Hadoop
      当一个大的任务由一台机器在规定的时间内不能完成时,人们就要采用分布式计算,即很多台机器联合起来共同完成任务。换句话说,就是把大任务拆分成许多个小任务,然后再把这些小任务分配给多台计算机去完成。参与计算的多台计算机组成一个分布式系统,需要运行一系列的分布式基础算法。

    Hadoop 就是一个分布式计算平台,用 Java 语言开发,包含 Common、MapReduce 和 HDFS 三个核心部件(HDFS 和 MapReduce 是最核心的两个部件)。其中:
    Common 为 Hadoop 的其他项目提供了一些常用工具,主要包括系统配置工具 Configuration、远程过程调用 RPC、序列化机制和 Hadoop 抽象文件系统等。
    MapReduce 是处理海量数据的计算模型。
    而 HDFS 用于存储海量数据,它具备高度容错性,能在低成本的通用硬件机器上稳定运行。

    Hadoop 实现了分布式计算中的基础算法(如一致算法、选举算法、故障检测、快照等),同时为用户提供了编程和命令接口。程序员调用这些函数能轻松写出分布式应用程序,我们都知道,如果一切从头开始,要完成一个分布式程序的编写是异常艰难的。

    Hadoop 在海量非结构化数据处理方面能充分展示它的优势,如消费者购买行为分析、商品推荐、关键词检索、信贷风险评估等。

    在Java web开发中适用的范围主要应该是下面的3个领域。

    1、远程过程调用和对象访问中间件

    这个主要的是解决分布式环境下应用的互相访问问题。

    同时,这个也是支撑应用服务化功能的基础。

    就国内来说,当前远程服务框架中间件较多应用的是阿里巴巴的开源分布式服务框架Dubbo。

    2、消息队列中间件

    这个主要解决的是应用之间的消息传递、解耦、异步的问题。

    它是一种EDA架构。

    也就是通过在低耦合的模块之间传输事件消息来完成模块之间的合作。

    在很多大型的网站当中,消息队列采用发布和订阅模式。

    当前,比较常用的消息队列产品有RabbitMQ、Kafka、Apache的ActiveMQ、RocketMQ等等。

    分布式服务框架和分布式消息队列是系统模块化之后主要的两种聚合方式。

    3、数据访问中间件

    它主要解决的是应用访问数据库的共性问题的组件 。

    举例说明:

    它就是使用数据库指定的数据驱动。

    例:ODBC和JDBC。

    下面以JDBC作为例子来说明。

    数据库本地维护了一个数据访问中间件,那么在对数据库进行访问的时候,配置的地址,其实是直接连接到JDBC这个数据访问中间件的。

    假如,执行查询数据又或者是对数据库的操作都是通过JDBC来连接数据库,之后,通过JDBC查询完成数据库过后,再返回给我们应用程序。

    作为中间件,查询过程对于我们是不可知的。

    推荐阅读:

    相关资源:Java中间件技术及其应用开发(源码)_java中间件技术及其应用开发…
    ————————————————
    版权声明:本文为CSDN博主「旋斡勃人」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/weixin_36087083/article/details/114216075

    展开全文
  • node.js常用中间件

    2021-03-06 11:04:53
    body-parser 用于接收前端发送post请求传过来的数据。 var bodyParser = require('body... } return { error, isValidate: isEmpty(error) } } koa-passport jsonwebtoken 用于token的使用,一般是两个中间件配合使用。

    body-parser
    用于接收前端发送post请求传过来的数据。

    var bodyParser = require('body-parser')
    app.use(bodyParser.urlencoded({ extended: false }))
    app.use(bodyParser.json()) //app为express框架实例对象。
    
    //在路由里使用req.body即可接收到前端传过来的数据。
    

    koa-bodyparser
    koa框架里用来接收前端发送post请求传过来的数据。

    var bodyParser = require('koa-bodyparser');
    app.use(bodyParser());  //app为express框架实例对象。
    //因为koa中路由传入的是一个ctx对象,所以要用ctx.request.body来接收数据。
    

    cors
    cors模块用来解决前端向后台发送请求时跨域问题。

    app.use(cors())  //app为express框架实例对象。
    

    mongoose
    mongoose模块用于操作mongodb数据库

    const mongoose = require("mongoose");
        mongoose.connect("mongodb://127.0.0.1:27017/project", { useNewUrlParser: true, useUnifiedTopology: true });
    

    md5
    对数据进行加密,一般用于密码加密。

    var md5 = require('md5');
    md5(data);  //data为要加密的数据。
    

    koa-router
    koa路由,koa路由需要另外引入,这点与express不同,express框架里有内置的路由Router,只需express.Router()即可引入路由。

    const Router = require("koa-router");
    const router = new Router();
    app.use(router.routes()).use(router.allowedMethods()) //app为kua框架实例对象
    module.exports = router.routes(); //当要把路由模块暴露时,需要暴露router.routes()
    

    validator
    用于各种验证,可以配合自己封装的方法使用。

    module.exports = function isEmpty(error) {
        return error == undefined ||
            error === null ||
            (typeof error == "object" && Object.keys(error).length === 0) ||
            (typeof error == "string" && error.trim().length === 0)
    }
    
    const validator = require('validator');
    const isEmpty = require('./is-empty');
    module.exports = function validateLoginInput(data) {
        let error = {};
    
        //密码验证
        if (!validator.isLength(data.password, { min: 6, max: 30 })) {
            error.password = "密码的长度只能在6到30之间";
        }
        if (validator.isEmpty(data.password)) {
            error.password = "密码不能为空";
        }
    
        //邮箱验证
        if (!validator.isEmail(data.email)) {
            error.email = "邮箱格式不正确";
        }
        if (validator.isEmpty(data.email)) {
            error.email = "邮箱不能为空";
        }
    
        return {
            error,
            isValidate: isEmpty(error)
        }
    }
    

    koa-passport
    jsonwebtoken

    用于token的使用,一般是两个中间件配合使用。

    展开全文
  • express常用中间件

    2021-02-18 23:27:23
    Express是一个自身功能极简,由路由和中间件构成的一个开发框架,本质上,express应用就是在调用各种中间件中间件的功能: 执行任何代码。 修改请求和响应对象。 终结请求-响应循环。 调用堆栈中的下一个中间件。...
  • 文章目录Docker安装常用中间件服务MySQLRedis5RabbitMQElasticSearch7NginxMongoDB Docker安装常用中间件服务 MySQL 下载MySQL镜像 docker pull mysql 创建文件目录 mkdir -p /home/docker/mysql/{conf,log,data} ...
  • docker 部署常用中间件

    2021-01-29 19:10:20
    redis详细配置参考 中间件系列_单机搭建redis-cluster集群 快速配置如下: bind 0.0.0.0 prot 7000 dir ./ ###对应redis容器里的绝对路径是 /data,也可以直接用绝对路径,足以 "/" 前面的"." 这是个相对路径 ...
  • 消息中间件概念与常用中间件选型

    千次阅读 2021-11-22 21:15:42
    消息中间件就是在通信的上下游之间截断:break it,Broker 然后利用中间件解耦、异步的特性,构建弹性、可靠、稳定的系统。 异步处理、流量削峰、限流、缓冲、排队、最终一致性、消息驱动等需求的场景都可以使用...
  • koa常用中间件的使用

    2021-01-05 18:15:32
    并没有捆绑任何中间件, 而是提供了一套优雅的方法,帮助您快速而愉快地编写服务端应用程序 注:文章有些长,阅读完大概需要半个小时哈????~ const http = require('http'); const server = http.createServ
  • 前言 苦苦寻觅找工作之间,殊不知今日之时乃我心之痛,难道是我不配拥有工作嘛。自面试后他所谓的等待都过去一段时日,可惜在下京东上的小金库都要见低啦。每每想到不由心中一紧。正处为难之间,手机忽然来了个短信...
  • 互联网公司常用四大类中间件之搜索中间件与缓存中间件 1. 搜索中间件:Solr,ELK(ElasticSearch,Logstash,Kibana)达成近实时搜索。 底层均基于Lucence。如果能考到ELK认证(当前很少人获得),高薪无悬念。 ...
  • 文章目录一、中间件的定义中间件一词的由来中间件的定义什么不是中间件评判关键中间件的好处中间件分类常用基础中间件中间件云产品二、中间件的开发什么是中间件开发?中间件开发人员需要哪些素质?如何成为中间件...
  • mysql8.0.23快速安装 查看是否有mariadb,并卸载 rpm -qa|grep mariadb rpm -qa|grep mariadb | xargs rpm -e --nodeps 上传mysql安装包文件 [root@localhost ~]# ll 总用量 853484 -rw-r--r-- 1 root root ...
  • Docker容器常用中间件启动大全包括 docker安装kafka,docker安装zookeeper,docker安装redis,docker安装mongodb,docker安装kinaba,docker安装elasticsearch,docker安装mysql,docker安装emq.....1. docker安装zookeeper...
  • 常用中间件理解

    2021-04-13 15:02:12
    Dubbo 是一个RPC调用的解决方案,我们在最开始的时候都是在一个系统中调用服务,没有远程调用,随着业务的复杂度提升,需要多系统之间进行服务调用,因此在服务的提供方和调用方之间就需要约定一个协议,进行通信,...
  • JAVA常用中间件

    2021-01-26 16:18:55
    中间件应用的基本领域与代表 上面说到java是数据间的中间件,在java web开发中适用的范围主要应该是下面三个领域: 远程过程调用和对象访问中间件 主要解决分布式环境下应用的互相访问问题,这也是支撑应用服务化...
  • 总结一下自己在java开发中常用的一些软件工具,插件,容器,中间件等。常用软件及插件一.intellij idea(及好用的集成插件):1.iBATIS/MyBatis mini-plugin:可以直接从sql接口类点入配置mapper.xml文件。2.Alibaba ...
  • 一、JWT验证中间件 1.对比 cookie、session、token、jwt 因为HTTP是无状态协议,无法证明切换了网页无法证明“你还是你”,所以为了能够保存一些状态或者信息,有了这些方案: cookie 由服务器生成,发送给...
  • 20个二叉树面试高频 0. 几个概念 1. 求二叉树中的节点个数 2. 求二叉树的最大层数(最大深度) 3. 先序遍历/前序遍历 4. 中序遍历 5. 后序遍历 6. 分层遍历 7. 求二叉树第K层的节点个数 8. 求二叉树第K层的叶子节点个...
  • 什么是中间件? 顾名思义,中间件就是处于中间的软件,处于操作系统、数据库等系统软件和应用软件之间的一种起连接作用。中间件是一种独立的系统软件平台,为网络应用软件提供综合的服务和完整的计算环境,借助这种...
  • 文章目录 目的 基础说明 安全防护 URL... // 该中间件使用时通常放在最前面 总结 这篇文章介绍了Koa中间件查询使用的一些基础内容,并介绍了一些常用中间件。有这些内容基本上就可以用来开发基本的HTTP服务器应用了。
  • 中间件是一类连接软件组件和应用的计算机软件,它包括一组服务。以便于运行在一台或多台机器上的多个软件通过网络进行交互。该技术所提供的互操作性,推动了一致分布式体系架构的演进,该架构通常用于支持并简化那些...
  • Koa常用中间件的使用

    2021-06-11 10:40:18
    constcompose=require('koa-compose')//将多个中间件组合成单一的中间件,便于重用和导出
  • 2.中间件特点3.中间件分类4.常见的中间件有哪些? 1.中间件是什么? 中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ 服务器的操作系统之上,管理...
  • 三、配置常用中间件 3.1 解析请求体 express.json() express.urlencoded() 3.2 日志输出 morgan() 3.3 为客户端提供跨域资源请求 cors() 四、路由设计 本项目的接口设计参考:...
  • 一、是什么中间件(Middleware)在计算机中,是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 88,077
精华内容 35,230
关键字:

常用中间件

友情链接: ARESLab.zip