超时设置或默认参数 专题

defaultStatementTimeout Sets the number of seconds the driver will wait for a response from the database. Any positive integer Not Set (null)
http://www.mybatis.org/mybatis-3/configuration.html

  • 存储介质
    • Redis
      • Java-Driver
  1. maxActive:可用连接实例的最大数目,默认值为8;
  2. maxIdle:空闲连接实例的最大数目,默认值也是8;
  3. minIdle:空闲连接实例的最小数目,默认值为0;
  4. maxWait:等待可用连接的最大数目,单位毫秒,默认值为-1,表示永不超时。

mongodb

  • Server端的连接数
    • maxConns:mongodb 实例的最大连接数限制可以通过启动参数中的 maxConns 设置。默认值取决于系统的限制(如 ulimit 和 file descriptor)。如果没设置这个参数, mongodb 自己不会限制连接数。但,你不能设置超过 20,000 。
  • client端的连接
    • Java-Driver
  1. MongoOptions.maxWaitTime:连接上阻塞线程的最大等待时间,默认值120秒;
  2. MongoOptions.connectTimeout:建立新连接超时时间(郑昀注: Only used for new connections), 默认无限制;
  3. MongoOptions.socketTimeout:socket通讯超时时间,默认无限制;
  4. MongoOptions.connectionsPerHost:每个Application与 MongoDB 实例能建立的最大物理连接数,默认是10;
  5. MongoOptions.threadsAllowedToBlockForConnectionMultiplier:可以等待池中有连接可用的最大线程数,默认是5。

mysql

  • Server端的超时设置
  1. innodb_lock_wait_timeout:一个 InnoDB 事务遇到一个行锁,等待的超时时间,默认值50秒,届时会打印“Lock wait timeout exceeded; try restarting transaction”错误;
  2. wait_timeout:服务器关闭非交互连接之前等待活动的秒数,默认值28800秒(即8小时);
  3. connect_timeout:在获取链接时,等待握手的超时时间,只在登录时有效,默认值10秒。

JDBC

  • ibatis
    • SqlMapConfig.xml 配置文件
  1. maxTransactions:最大并发事务数。默认值为32。指的是同时进入 SqlMapClient.startTransaction()的最大线程数。大于这个值的线程将阻塞直到另一个线程退出。不同的 DBMS 有不同的限制值,但任何数据库都有这些限制。这个参数值应该总是小于或等于 maxSessions 并总是远远小于 maxRequests。减小这个参数值通常能提高性能;
  2. maxRequests:最大并发请求数(Statement并发数)。默认值为512。指的是同时执行 SQL 语句的最大线程数。大于这个值的线程将阻塞直到另一个线程执行完成。不同的 DBMS有不同的限制值,但任何数据库都有这些限制。通常这个值应该至少是 maxTransactions 的 10 倍,并且总是大于 maxSessions 和 maxTranactions。减小这个参数值通常能提高性能;
  3. maxSessions:最大Session 数。即当前最大允许的并发SqlMapClient数。maxSessions设定必须介于maxTransactions和maxRequests之间,即maxTransactions<maxSessions=<maxRequests。默认值为128。
  4. defaultStatementTimeout:Statement 的执行超时时间,单位为秒。如果没有指明,查询将无超时时间限制,除非在映射文件中设置Statement属性值。

memcache

  • PHP-Driver
    • Memcache::connect 函数传入的 timeout 参数代表连接超时时间,单位秒。默认值1秒。郑昀注:修改此值之前请三思,过长的连接超时时间可能会导致失去所有的缓存优势。 
  • Java-Driver
    • spymemcached
      • opTimeout :代表操作超时时间,默认值2.5秒;
    • xmemcahced 
      • opTimeout 的定义与 spymemcached 一样,默认值1秒;

WebServer

  • Nginx
  1. fastcgi_connect_timeout:同 FastCGI 服务器的连接超时时间,默认值60秒。郑昀注:它不能超过75秒。新请求在等待 fastcgi_connect_timeout 秒后就收到 504 Gateway Time-out 错误;
  2. fastcgi_send_timeout: Nginx 进程向 FastCGI 进程发送 request ,整个过程的超时时间,默认值60秒;
  3. fastcgi_read_timeout:  FastCGI  进程向  Nginx  进程发送 response ,整个过程的超时时间,默认值60秒。

PHP

  • PHP-FPM 模式
    • max_execution_time 参数不太起效,它控制的是进程的CPU占用时间,默认值30秒;
      • 郑昀注:set_time_limit()函数和配置指令max_execution_time只影响脚本本身执行的时间。任何发生在诸如使用 system()的系统调用,流操作,数据库操作等的脚本执行的最大时间不包括其中,当该脚本已运行。
    • 真正起作用的是 php-fpm.conf 里的 <value name="request_terminate_timeout">0s</value>,它的含义是 The timeout (in seconds) for serving a single request after which the worker process will be terminated;默认值0,即off。

中间件

  • ActiveMQ
    • Server端设置
  1. wireFormat.maxInactivityDuration:设置心跳时间,默认值是30秒;
  2. initialReconnectDelay:第一次重连的时间间隔(毫秒),默认值为10;
  3. maxReconnectDelay:最长重连的时间间隔(毫秒),默认值为30秒;
  4. useExponentialBackOff:重连时间间隔是否以指数形式增长,默认值为true;
  5. startupMaxReconnectAttempts:初始化时的最大重连次数。一旦连接上,将使用maxReconnectAttempts的配置,默认值为0;
  6. maxReconnectAttempts:自版本5.6起:-1为默认值,代表不限重试次数;0代表从不重试(只尝试连接一次,并不重连)。5.6以前的版本:0为默认值,代表不限重试次数。所有版本:如果设置为大于0的数,代表最大重试次数;
  7. randomize:使用随机链接(郑昀注:达到负载均衡的目的),默认值为true;
  8. timeout:设置发送操作的总计最大超时时间(毫秒),默认值为-1。

生产者流量控制

  • 触发条件有三个:
    • 不管 mq 有无做持久化配置:
      • ActiveMQ所使用的内存到达 memoryUsage 配置值,默认值64MB;
    • 如果 mq 做了持久化配置:
      • 要打开了 useCache 开关,表明要将持久化消息缓存起来以便快速访问,默认是True;
      • 缓存在内存中消息总字节数到达 memoryLimit 配置值,默认值是1MB;

 

http://www.cnblogs.com/zhengyun_ustc/p/defaults.html

 

时间: 2024-10-28 03:29:41

超时设置或默认参数 专题的相关文章

C++中函数的默认参数详细解析_C 语言

使用方法:(1)在函数声明或定义时,直接对参数赋值,该参数就是默认参数.(2)在函数调用时,省略部分或全部参数,这时就会使用默认参数进行代替. 注意事项:(1)一般在声明函数是设置默认参数. 如果在函数声明和定义函数时都设置了默认参数,则以函数声明的默认参数为准. 复制代码 代码如下: #include<iostream>using namespace std;int main(){ double add(double a=3.2,double b=9.6);//在函数声明时设置默认参数 co

app-我自己开发了一个WebView的App,工作需要,怎样修改内核参数,设置为默认的浏览器呢?

问题描述 我自己开发了一个WebView的App,工作需要,怎样修改内核参数,设置为默认的浏览器呢? 我用真机nexus5,尝试了开启root,然后去看data/Ssystem/package.XML,通过设置不同的默认浏览器,找哪个位置被修改了,但找不到.请问修改默认浏览器后,是哪个内核文件被修改了? 解决方案 http://blog.sina.com.cn/s/blog_4e1e357d0101bfjq.html 试一试

有关HTTP类请求的超时设置

问题描述 各位坛友,小弟在这里咨询个问题,就是有关HTTP类请求的超时设置.不管是Web服务,还是WebClient或者HttpRequest对象什么的,都有个Timeout的设置.以前没有搞java没有仔细想过,后来在java平台发现一般有2个参数,一个是连接超时,一个是读取超时.这2者是不同的.所以想咨询下.NET平台为什么只有一个参数.个人认为,NET这个参数应该是指读取超时,即表示,发起请求后客户端最大的等待时长.那.NET能够设置连接超时么?或者是是否已经被固话为了某个默认值?

linux网络编程之socket(十一)套接字I/O超时设置方法和用select实现超时

一.使用alarm 函数设置超时 void handler(int sig) { } signal(SIGALRM, handler); alarm(5); int ret = read(fd, buf, sizeof(buf)); if (ret == -1 && errno == EINTR) errno = ETIMEOUT; else if (ret >= 0) alarm(0); ................. 程序大概框架如上所示,如果read在5s内被SIGALRM

如何设置Windows默认命令行窗口大小和缓冲区大小

  如何设置Windows默认命令行窗口大小和缓冲区大小 Windows 命令行 cmd 窗口系统默认的大小(80*40)对于现在的屏幕配置已经跟不上时代了,我们总是要把它改大些,而且缓冲区大小也想改得大大的.单纯的为当前的 Windows 命令行窗口修改显示大小和缓冲区大小就简单了,右键命令行窗口标题,属性里改屏幕缓冲区和窗口大小就是,系统会为与当前标题相同的命令行窗口记住你的设置,比如 C:Windowssystem32cmd.exe.但是经常你又会打开不同标题的命令行窗口,如 Tomat,

怎样配置MySQL数据库超时设置?

备战京东双11,在配置MySQL的超时配置发现有很多地方可以设置.这么多超时的配置有什么影响,以及配置会有什么影响呢? 1. JDBC超时设置 connectTimeout:表示等待和MySQL数据库建立socket链接的超时时间,默认值0,表示不设置超时,单位毫秒,建议30000 socketTimeout:表示客户端和MySQL数据库建立socket后,读写socket时的等待的超时时间,linux系统默认的socketTimeout为30分钟,可以不设置 2. 连接池超时设置 maxWai

编码-sql数据库 没有为参数号 1 设置值。(参数都是给过值的 急!!!)

问题描述 sql数据库 没有为参数号 1 设置值.(参数都是给过值的 急!!!) String sql1="INSERT INTO [wryk].[dbo].[DMSUPPLIER]" + "(consignor_code,consignor_suppliercode,areaCode,Contact,express_money,fax_code,Mobile," + "opcode,partnerType,postal_code,prefecture,r

05-访问超时设置 | 01.数据抓取 | Python

05-访问超时设置 郑昀 201005 隶属于<01.数据抓取>小节 设置 HTTP 或 Socket 访问超时,来防止爬虫抓取某个页面时间过长.   pycurl 库的调用中,可以设置超时时间: c.setopt(pycurl.CONNECTTIMEOUT, 60)   在 Python 2.6 版本下,httplib 库由于有如下构造函数: class HTTPConnection:     def __init__(self, host, port=None, strict=None, 

详细介绍Python函数中的默认参数_python

import datetime as dt def log_time(message, time=None): if time is None: time=dt.datetime.now() print("{0}: {1}".format(time.isoformat(), message)) 最近我在一段Python代码中发现了一个因为错误的使用默认参数而产生的非常恶心的bug.如果您已经知道关于默认参数的全部内容了,只是想嘲笑一下我这可笑的错误,请直接跳到本文末尾.哎,这段代码是我