上一页 1 2 3 4 5 6 7 8 9 ··· 16 下一页
摘要: 堆设置-Xmx3550m:设置JVM最大堆内存 为3550M。 -Xms3550m:设置JVM初始堆内存 为3550M。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。 -Xss128k:设置每个线程的栈 大小。JDK5.0以后每个线程栈大小为1M,之前每个线程栈大小为256K。应当根据应用的线程所需内存大小进行调整。在相同物理内存下,减小这个值能生成更多的线程。但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右。 -Xmn2g:设置堆内存年轻代 大小为2G。整个堆内存大小 = 年轻代大小 + 年老代大小 + 持久代大小 。持久代 阅读全文
posted @ 2012-07-02 11:36 Jack204 阅读(29915) 评论(0) 推荐(5) 编辑
摘要: 一、设置JVM内存设置1. 设置JVM内存的参数有四个:-XmxJava Heap最大值,默认值为物理内存的1/4,最佳设值应该视物理内存大小及计算机内其他内存开销而定;-XmsJava Heap初始值,Server端JVM最好将-Xms和-Xmx设为相同值,开发测试机JVM可以保留默认值;-XmnJava Heap Young区大小,不熟悉最好保留默认值;-Xss每个线程的Stack大小,不熟悉最好保留默认值;2. 如何设置JVM内存分配:(1)当在命令提示符下启动并使用JVM时(只对当前运行的类Test生效):java -Xmx128m -Xms64m -Xmn32m -Xss16m Te 阅读全文
posted @ 2012-07-02 11:35 Jack204 阅读(137840) 评论(1) 推荐(14) 编辑
摘要: 百度logloglog4j是一个非常强大的log记录软件,下面我们就来看看在项目中如何使log4j。首先当然是得到log4j的jar档,推荐使用1.2.X版,下载地址:http://logging.apache.org/log4j/1.2/download.html我们先看一个最简单的示例:【示例1】项目结构:【注:由于这里的多个项目公用一个jar档,我们可以创建一个专门放置jar档的Java工程,然后将jar档放到lib目录下。在要使用的工程中按图所示进行引用 】Java代码:Java代码 1.package com.coderdream.log4j; 2. 3.import org.... 阅读全文
posted @ 2012-06-29 15:47 Jack204 阅读(556) 评论(0) 推荐(0) 编辑
摘要: 1 优化方面2 buffer pool的使用3 sql查询的cost计算 阅读全文
posted @ 2012-06-24 11:09 Jack204 阅读(175) 评论(0) 推荐(0) 编辑
摘要: "filesort"接收要排序的table和要排序的fields,根据sortbuff_size的设定,申请尽量大的一个sortbuff用来存放即将被排序的keys。然后进入"find_all_keys"函数,因为sortbuff大小有限,主要排序思路如find_all_keys的注释: while (get_next_sortkey()) { if (no free space in sort_keys buffers) { sort sort_keys buffer; dump sorted sequence to 't... 阅读全文
posted @ 2012-06-23 21:18 Jack204 阅读(416) 评论(0) 推荐(0) 编辑
摘要: 就像李硕师兄跟我讲的,学习mysql某一部分代码的所应达到的程度是:1你讲出来,别人能听懂,这才证明你自己理解了2能分析出来优势和劣势,在各种情况下的表现学习mysql某一部分代码的方法是:1 学习代码的原理2 从这部分原理考虑到对整个系统的影响3 去分析实际的例子 阅读全文
posted @ 2012-06-14 00:08 Jack204 阅读(272) 评论(0) 推荐(0) 编辑
摘要: InnoDB与MyISAM的最大不同有两点:一是支持事务(TRANSACTION);二是采用了行级锁。行级锁与表级锁本来就有许多不同之处,另外,事务的引入也带来了一些新问题。下面我们先介绍一点背景知识,然后详细讨论InnoDB的锁问题。背景知识1.事务(Transaction)及其ACID属性事务是由一组SQL语句组成的逻辑处理单元,事务具有以下4个属性,通常简称为事务的ACID属性。l 原子性(Atomicity):事务是一个原子操作单元,其对数据的修改,要么全都执行,要么全都不执行。l 一致性(Consistent):在事务开始和完成时,数据都必须保持一致状态。这意味着所有相关的数据规则都 阅读全文
posted @ 2012-06-09 11:19 Jack204 阅读(18206) 评论(1) 推荐(2) 编辑
摘要: 首先,在mysql存储过程出现的同时,用户权限也增加了5种,其中和存储过程有关的权限有 三种: ALTER ROUTINE 编辑或删除存储过程 CREATE ROUTINE 建立存储过程 EXECUTE 运行存储过程在使用GRANT创建用户的时候分配这三种权限。 存储过程在运行的时候默认是使用建立者的权限运行的。 需要注意的是在一个用户拥有建立存储过程的权限时,如果其没有对于select、update或delete等权限的话,虽然操作数据的存储过程可以建立,但调用存储过程的话仍是无法成功的,会返回权限错误,就算拥有运行存储过程的权限也一样。所以,如果有人给你建立了一个没有select、upda 阅读全文
posted @ 2012-06-06 19:46 Jack204 阅读(9171) 评论(0) 推荐(0) 编辑
摘要: Unix高级环境编程的简单总结:1 使用pipe生成管道p[2],然后fork出child进程,p[0]是读端,p[1]是写端。这样的话,child和parent一个读--->一个写,就可以进行通信了。2 使用popen打开一个管道,它做的动作是:fork出一个child的stdin或者stdout和返回的描述字连接起来。3 协同进程---比较冷门,shell的管道就是这么做的。将一个进程的stdin和另一个进程的stdout连接起来等等类似的。4 使用msgget,msgsnd,msgrcv创建消息队列,发送消息,接收消息。但是现在的linux上要比管道慢。5 使用mkfifo创建命名 阅读全文
posted @ 2012-06-04 21:24 Jack204 阅读(633) 评论(0) 推荐(0) 编辑
摘要: jobs,fg和bg是控制进程(任务)执行的命令。jobs显示在当前shell环境下任务的状态:正在后台运行的任务,已经终止,以及被停止 (stopped)的任务。键入Control-Z,当前控制终端的前台任务会收到STOP信号从而被停止。可以使用bg命令把它放在后台继续运行。fg 命令会把后台运行的任务或被停止的任务在前台继续运行。后台任务可能因为这些信号SIGTSTP, SIGSTOP, SIGTTIN和SIGTTOU处于被停止状态。 当一个后台进程组的一个成员试图去读它的控制终端时,这个进程组会收到SIGTTIN信号。同样,当它试 图写控制终端时,SIGTTOU信号会发出。(为何有时候消 阅读全文
posted @ 2012-06-02 10:55 Jack204 阅读(2426) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 16 下一页