精华内容
下载资源
问答
  • Connector

    千次阅读 2005-07-23 12:48:00
    A Connector is a component responsible receiving requests from, and returning responses to, a client application. A Connector performs the following general logic: Receive a request from the client ap
    A Connector is a component responsible receiving requests from, and returning responses to, a client application. A Connector performs the following general logic: 
    • Receive a request from the client application.
    • Create (or allocate from a pool) appropriate Request and Response instances, and populate their properties based on the contents of the received request, as described below.
      • For all Requests, the connector, protocol, remoteAddr, response, scheme, secure, serverName, serverPort and stream properties MUST be set. The contentLength and contentType properties are also generally set.
      • For HttpRequests, the method, queryString, requestedSessionCookie, requestedSessionId, requestedSessionURL, requestURI, and secure properties MUST be set. In addition, the various addXxx methods must be called to record the presence of cookies, headers, and locales in the original request.
      • For all Responses, the connector, request, and stream properties MUST be set.
      • No additional headers must be set by the Connector for HttpResponses.
    • Identify an appropriate Container to use for processing this request. For a stand alone Catalina installation, this will probably be a (singleton) Engine implementation. For a Connector attaching Catalina to a web server such as Apache, this step could take advantage of parsing already performed within the web server to identify the Context, and perhaps even the Wrapper, to utilize in satisfying this Request.
    • Call the invoke() method of the selected Container, passing the initialized Request and Response instances as arguments.
    • Return any response created by the Container to the client, or return an appropriate error message if an exception of any type was thrown.
    • If utilizing a pool of Request and Response objects, recycle the pair of instances that was just used.
    It is expected that the implementation details of various Connectors will vary widely, so the logic above should considered typical rather than normative.
    展开全文
  • mysql-connector-java各种版本下载地址

    万次阅读 多人点赞 2018-07-24 12:49:45
    地址:http://mvnrepository.com/artifact/mysql/mysql-connector-java

    地址:http://mvnrepository.com/artifact/mysql/mysql-connector-java

    选择对应版本号-->点击jar进行下载

     

    展开全文
  • matlab connector

    热门讨论 2012-04-12 15:28:42
    使用matlab mobile等与matlab 2011a及以上连接的工具。...使用时解压该文件,执行matlab的cd命令到解压文件夹,运行install_connector来安装,执行connector on,第一次使用输入5个字符以上的连接密码即可。
  • mysql-connector-java与Mysql、Java的对应版本

    万次阅读 多人点赞 2019-06-24 15:25:34
    mysql-connector-java与Mysql对应版本: Summary of Connector/J Versions Connector/J version Driver Type JDBC version MySQL Server v...

    mysql-connector-java与Mysql对应版本:

     

                                                                   Summary of Connector/J Versions

    Connector/J version Driver Type JDBC version MySQL Server version Status
    5.1 4 3.0, 4.0, 4.1, 4.2 5.6*, 5.7*, 8.0* General availability
    8.0 4 4.2 5.6, 5.7, 8.0 General availability. Recommended version
    •  

      * MySQL Connector/J 8.0 is highly recommended for use with MySQL Server 8.0, 5.7, and 5.6. Please upgrade to MySQL Connector/J 8.0.

    • 官方更推荐MySQL5.6以上使用connector/j 8.0

    •  

     

    mysql-connector-java与Java对应版本:

     

                                                                   Summary of Java Versions Required by Connector/J

    Connector/J version JRE Supported JDK required for compiling source code
    5.1 1.5.x, 1.6.x, 1.7.x*, 1.8.x** 1.5.x and 1.8.x ***
    8.0 1.8.x 1.8.x

     

          *JRE 1.7 support requires Connector/J 5.1.21 and higher.

          JRE 1.7 需要connector/J 5.1.21 以上

     

    附:

    jdbc下载地址:https://repo1.maven.org/maven2/mysql/mysql-connector-java/

     

    资料来源于官网:https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-versions.html

    展开全文
  • 深入connector

    2019-03-26 14:31:38
    在与客户端通信的时候,pomelo目前提供了...但是实际编程中,只有这些connector可能还无法满足我们的需求,我们可能需要自己定制自己的connector,pomelo提供了定制connector的接口,在这部分就是要说明这个...

    在与客户端通信的时候,pomelo目前提供了hybridconnector和sioconnector,其中hybridconnector支持tcp,websocket;sioconnector支持socket.io。但是实际编程中,只有这些connector可能还无法满足我们的需求,我们可能需要自己定制自己的connector,pomelo提供了定制connector的接口,在这部分就是要说明这个问题。

    内建的connector分析

    pomelo内建的connector包括sioconnector和hybridconnector,这里以sioconnector为例来分析,说明如何实现一个connector。
    首先sioconnector的构造函数里需要三个参数host、port、opts,(host,port)是要监听socket绑定的,在sioconnector的start调用中,会开启对应的监听,并使得当有连接事件发生时,能够将连接事件抛出。抛出连接事件的时候,对应的通信socket是SioSocket。SioSocket的事件中,当客户端主动断开连接时,需要触发disconnect事件,当通信出现错误时,触发error事件,当有消息获得的时候触发message事件。当收到客户端的请求message或者需要给客户端发送回应或者推送消息的时候,pomelo会使用connector的decode函数对数据进行解码。对于客户端请求的消息,其上报到应用层的格式应为:

    
    { 
      id : <requestId>,
      route: <handlerRoute>,
      body:  <requestBody>
    }
    
    
    • 这里id是客户端请求的requestId,这个数值由客户端产生的,因此不同session的请求id是互相不干涉的。如果不是请求,只是一个notify的话,id值为空。route是对应应用服务器的请求位置,格式为".."。body为具体请求时携带的参数信息,当我们发起filter-handler链对请求进行处理的时候,参数msg就是这里的body值,是在这里产生的。

    • 对于服务器端给客户端的响应或者服务器端的推送消息,会使用connector的encode进行编码,编码函数的签名为:

      encode(reqId, route, msg);

    其中,如果是响应的话,reqId是对应的请求id,route为请求携带的route,实际上可以省略,msg会具体的相应内容;

    • 如果是推送消息的话,reqId为空值,route为客户端的route,也就是"on"这种格式。其返回值应该是能被socket发送的缓冲区。

    • decode/encode函数还可以通过配置选项opts来进行配置,如果在opts里指定了encode/decode,那么将会优先使用opts中指定的encode/decode。

    • connector还应实现stop方法,对于sioconnector来说,其stop方法里面关闭了监听socket连接。

    经过对sioconnector的分析,我们完成了pomelo中connector的抽象。

    connector抽象

    在涉及到客户端与服务器端进行通信的时候,往往都会使用类似与tcp服务器客户端通信的模式,我们的connector抽象也不例外。在这里,我们假定要实现一个FooConnector,看看需要实现些什么。

    • 首先需要一个FooConnector,FooConnector的构造函数需要一些自己的参数,这些参数要包括创建一个连接监听所需要的所有信息,当然比较经典的参数信息是(host,port)对,但是对于一些比较特殊的connector来说,其连接监听所需要的信息可能就不是(host,port)对了,比如用于本地通信的share memory以及命名管道等。

    • FooConnector需要实现一个start函数,在这个start函数中,会启动对连接的监听,最经典的操作应该是listen调用。当然在具体实现一些比较特殊的connector的时候,可能不会是listen调用。start中还应该对实现当有连接到来的时候,触发connector的connection事件,对应经典实现的accept返回,当然是异步的触发。在触发connection事件的时候,应该传出参数FooSocket。

    • FooSocket是FooConnector触发connection事件时传出的参数,可以类比经典tcp通信中,accept返回的用于通信的socket。当FooSocket出现通信错误时,触发error事件;当遇到客户端主动断开连接时,应该触发事件disconnect;当收到客户端传来的消息时,应该能够触发message事件,message事件携带的参数为FooBuffer类型。

    • FooBuffer类型可以类比经典tcp通信中的byte数组,在javascript中,FooBuffer一般为string或者Buffer类型,当然用户也可以定制自己的类型。需要注意的每一次message事件的触发,携带的都应该是一个完整的包,不能出现半包以及粘包,用户的connector实现要保证这一点。当然,只有类似与tcp这样的流协议的时候才可能出现半包粘包的问题,一些基于数据报的协议是不会出现这种问题的。

    • Connector还需要提供一个decode函数,这个decode函数的参数为上面FooSocket的message事件携带的FooBuffer,这个decode函数应该能够把这个FooBuffer解码成具体的应用层能够直接使用的请求对象,也就是说decode函数的返回值应该为如下格式的对象:

    {
       id: <requestId>,
       route: <handlerRoute>,
       body: <requestBody>
    }
    
    • 当服务端向用户发起消息推送或者响应的时候,Connector应该提供encode函数,完成具体的打包操作,Connector提供的encode函数签名应该为:

      encode(reqId, route, body);

    encode函数的返回值类型为FooBuffer,也就是FooSocket可以处理的类型,encode完成用户的请求数据的打包。如果是服务端推送数据的话,reqId的值应该为空。

    • 由于我们自己定义了encode/decode函数,因此我们可以设计实现我们自己的线上协议,只要在应用层抛数据的时候保持一致即可。

    • 当具体发送打包后的数据时,需要FooSocket提供一个发送方法send,send的参数就是encode打包后的FooBuffer,其签名为:

      send(FooBuffer);

    • 在具体实现数据往客户端发送的时候,有时候并不是一旦数据产生就往外发出,而是会先缓存,定时发送数据,这样对于大量小包产生的场景,将会带来很大的性能提升。因为产生的很多小包,可以批量发出,因此FooSocket还要支持批量发消息,对应的函数签名为:

      sendBatch(FooBufferArray);

    一般来说,对于底层协议是二进制协议的话,在打包的时候由于已经定义了包边界,因此当有多个包的FooBuffer要发出的时候,只需要将所有的Buffer打包成一个大的Buffer就可以了,hybridconnector中就是这样实现的。而在sioconnector中,因为其底层协议使用的json,因此其将这些消息组成了一个json数组,具体可以参考它们对应的实现。我们在实现FooSocket的sendBatch方法时,可以根据具体的实际情况进行实现,其语义就是一次批量发送多个包。

    • FooSocket还应该有主动断开连接的方法disconnect,用于当服务器想把某个用户kick掉的时候调用。

    • 当最后应用程序关闭的时候,FooConnector需要提供stop方法,用来关闭相应的连接监听,可以类比tcp服务器中最后关闭用来监听的socket。

    • 综上所述,我们得出与定制Connector相关的类图,如下:

    在这里插入图片描述

    • 在app.js中,如果我们的FooConnector的构造函数使用的绑定地址信息是(host,port)对的话,我们通过如下的调用,启用我们自己定制的connector:
    
    app.set('connectorConfig', {
        connector: FooConnector,
        encode : <encode func>, //optional
        decode : <decode func>, //optional
        others: <others>
        });
    

    这里需要指出,通过opts配置的encode/decode会优先使用,如果没有通过opts配置encode/decode的话,将会使用connector配置的encode/decode,如果既没有配置encode/decode,又没有对connector实现decode/encode,将会出现错误。这里的connector配置项使用的是FooConnector的构造函数,当pomelo构造connector时,如果发现配置的是一个构造函数的话,会按如下的方式进行构造:

    
      new FooConnector(host, clientPort, opts);
    
    

    如果定制的FooConnector的构造的时候使用的地址信息不是(host,port),那么你就不能使用这种方式进行配置,你可以使用如下方式进行配置:

    
    var conn = new FooConnector(<addr_args>, opts);
    
    app.set('connectorConfig', {
      connector: conn,
      
      // ....
    });
    

    小结

    在本部分,阐述了如何实现自定义connector,给出了connector的抽象,介绍了当实现一个全新的connector的时候应该需要实现的内容。pomelo对于connector的实现是完全开放的,用户可以根据自己的需求定制connector,定制自己的通信协议,只要自己的客户端与服务端线上协议保持一致就行了。

    展开全文
  • mysql-connector-java-5.1.47.jar junit-4.13.jar Maven: <!-- mysql驱动 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <...
  • muduo之Connector

    万次阅读 2019-10-27 10:14:11
    Connector负责主动发起连接,不负责创建socket,只负责连接的建立,外部调用Connector::start就可以发起连接,Connector具有重连的功能和停止连接的功能,连接成功建立后返回到TcpClient。 Connector.h // Copyright...
  • 原文:https://blog.csdn.net/Milan__Kundera/article/details/81182757 mysql-connector-java下载地址: http://mvnrepository.com/artifact/mysql/mysql-connector-java 选择自己的版本: 然后再点击 ...
  • mysql-connector-java-5.1.30工具

    千次下载 热门讨论 2014-04-19 12:37:56
    MySQL官方提供的驱动包 mysql-connector-java-5.1.30.zip
  • mysql-connector-java mysql-connector-java-5.1.5 mysql-connector-java-5.1.40
  • mysql-connector-java-5.1.40.zip和mysql-connector-java-5.1.10.jar
  • eclipse svn connector

    2009-10-11 23:17:18
    eclipse svn connector eclipse svn connector eclipse svn connector eclipse svn connector eclipse svn connector eclipse svn connector eclipse svn connector eclipse svn connector eclipse svn connector
  • mysql-connector-java-3.1.14/mysql-connector-java-3.1.14/debug/mysql-connector-java-3.1.14/docs/mysql-connector-java-3.1.14/docs/release-test-output/mysql-connector-java-3.1.14/src/mysql-connector-java...
  • mysql-connector-java-5.1.13/mysql-connector-java-5.1.13/docs/mysql-connector-java-5.1.13/src/mysql-connector-java-5.1.13/src/...
  • mysql-connector-java.jar

    2020-03-16 10:52:01
    官方下载的MySQL驱动jar包,本文件包含了以下版本的jar包:mysql-connector-java-2.0.jar、mysql-connector-java-3.0.jar、mysql-connector-java-3.1.jar、mysql-connector-java-5.0.jar、mysql-connector-java-5.1....
  • 在学习SpringBoot过程中, ...错误过程:org.apache.catalina.LifecycleException: Failed to start component [Connector[HTTP/1.1-8080]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:16...
  • Connector/ODBC与Connector/Net的区别

    千次阅读 2017-08-09 20:01:03
    Connector/ODBC与Connector/Net的区别 本文翻译自http://www.mysqlab.net/knowledge/kb/detail/topic/odbc/id/5069 开发应用程序时,Windows应用程序开发人员通常可以选择使用Connector / ODBC和Connector/NET。...
  • tomcat-connector配置

    千次阅读 2018-05-13 17:31:02
    Connector配置Connector简介Conf/server.xml配置文件中Connector配置定义了tomcat的链接的信息等。如下:&lt;Connector port="8080"protocol="HTTP/1.1" connectionTimeout="20000&...
  • MySQL Connector/J是以.zip或.tar.gz形式分发的,其中包含源码、类文件、以及仅为“二进制”.jar的类文件(名为mysql-connector-java-[version]-bin.jar),从Connector/J 3.1.8开始,驱动程序的“调试版”位于名为...
  • mysql-connector-java

    2018-04-08 12:09:20
    mysql-connector-java 3.1.12 5.1.40 两个版本
  • 一、ServerConnector的概念 ServerConnector顾名思义是服务端连接器,是Jetty容器核心组件,它主要完成客户端与服务端的连接生命周期管理,能够处理HTTP,HTTP/2和WebSocket,或SSL协议的连接与通信 二、继承体系 ...
  • mysql-connector-Jar包

    2019-04-25 21:39:38
    里面包含两个jar包,mysql-connector-java-5.1.35.jar +mysql-connector-java-8.0.15.jar 选择自己需要的用。
  • 1.下载安装connector/python下载的版本(mysql-connector-python-8.0.15-py3.5-windows-x86-64bit.msi) 下载后根据提示安装2.数据库中数据3.使用python中的mysql.connector模块操作mysqlimport mysql.connector# ...
  • mysql-connector-java-5.1.39

    2018-06-25 13:49:47
    mysql-connector-java-5.1.39包含了mysql-connector-java-5.1.39.jar,mysql-connector-java-5.1.39.zip,mysql-connector-java-5.1.39.tar.gz三个连接MySQL的驱动包
  • mysql-connector-java-5.1.46-bin.jar mysql-connector-java-5.1.27-bin.jar
  • - mysql-connector

    2019-04-24 11:00:23
    mysql-connector 是 MySQL 官方提供的驱动器 安装 python -m pip install mysql-connector 测试是否安装成功 import mysql-connector 连接数据库 import mysql-connector mydb=mysql.connector.connect( ...
  • mysql-connector-java-8.0.7

    2017-08-29 14:54:51
    mysql-connector
  • at org.apache.catalina.connector.Connector.initInternal(Connector.java:1032) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:136) at org.apache.catalina.core.StandardService....
  • Failed to start connector [Connector[HTTP/1.1-8080]]

    万次阅读 多人点赞 2019-01-04 21:17:02
    错误提示:Failed to start connector [Connector[HTTP/1.1-8080]] 错误原因:Tomcat端口被占用 window下的解决方案: 1.cmd打开命控制台 2.查看tomcat的所使用的端口 netstat -ano|findstr 8080 此处的“3920”为...
  • Mysql数据库驱动:mysql-connector-java-5.1.46-bin.jar

    万次阅读 多人点赞 2018-04-12 15:19:35
    mysql-connector-java-5.1.46-bin.jar 点击打开链接

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 60,433
精华内容 24,173
关键字:

connector