内存参数

MySQL配置文件

不想你离开。 提交于 2019-11-30 22:45:43
1 [client] 2 #客户端设置,即客户端默认的连接参数 3 # password = 你的密码 4 port = 3306 5 #默认连接端口 6 socket = /usr/local/mysql/data/mysql.sock 7 #用于本地连接的socket套接字 8 default-character-set = utf8 9 #编码 10 11 [mysqld] 12 #服务端基本设置 13 port = 3306 14 #MySQL监听端口 15 socket = /usr/local/mysql/data/mysql.sock 16 #为MySQL客户端程序和服务器之间的本地通讯指定一个套接字文件 17 pid-file = /usr/local/mysql/data/mysql.pid 18 #pid文件所在目录 19 basedir = /usr/local/mysql 20 #使用该目录作为根目录(安装目录) 21 datadir = /usr/local/mysql/database 22 #数据文件存放的目录 23 tmpdir = /usr/local/mysql/data/tmp 24 #MySQL存放临时文件的目录 25 character_set_server = utf8 26 #服务端默认编码(数据库级别) 27 collation

Spark配置参数详解

邮差的信 提交于 2019-11-30 22:19:35
以下是整理的Spark中的一些配置参数,官方文档请参考 Spark Configuration 。 Spark提供三个位置用来配置系统: Spark属性:控制大部分的应用程序参数,可以用SparkConf对象或者Java系统属性设置 环境变量:可以通过每个节点的 conf/spark-env.sh 脚本设置。例如IP地址、端口等信息 日志配置:可以通过log4j.properties配置 Spark属性 Spark属性控制大部分的应用程序设置,并且为每个应用程序分别配置它。这些属性可以直接在 SparkConf 上配置,然后传递给 SparkContext 。 SparkConf 允许你配置一些通用的属性(如master URL、应用程序名称等等)以及通过 set() 方法设置的任意键值对。例如,我们可以用如下方式创建一个拥有两个线程的应用程序。 [plain] view plain copy val conf = new SparkConf() .setMaster("local[2]") .setAppName("CountingSheep") .set("spark.executor.memory", "1g") val sc = new SparkContext(conf) 动态加载Spark属性 在一些情况下,你可能想在 SparkConf 中避免硬编码确定的配置。例如

MySQL高负载优化

旧时模样 提交于 2019-11-30 21:51:24
MySQL配置文件优化 [client] port = 3306#客户端端口号为3306 socket = /data/3306/mysql.sock # default-character-set = utf8 #客户端字符集,(控制character_set_client、character_set_connection、character_set_results) [mysql] no-auto-rehash #仅仅允许使用键值的updates和deletes [mysqld] #组包括了mysqld服务启动的参数,它涉及的方面很多,其中有MySQL的目录和文件,通信、网络、信息安全,内存管理、优化、查询缓存区,还有MySQL日志设置等。 user = mysql#mysql_safe脚本使用MySQL运行用户(编译时--user=mysql指定),推荐使用mysql用户。 port = 3306#MySQL服务运行时的端口号。建议更改默认端口,默认容易遭受攻击。 socket = /data/3306/mysql.sock #socket文件是在Linux/Unix环境下特有的,用户在Linux/Unix环境下客户端连接可以不通过TCP/IP网络而直接使用unix socket连接MySQL。 basedir = /application/mysql

java虚拟机的基本结构如图

ⅰ亾dé卋堺 提交于 2019-11-30 21:46:03
1 java虚拟机的基本结构如图: 1)类加载子系统负责从文件系统或者网络中加载Class信息,加载的类信息存放于一块称为方法区的内存空间。除了类的信息外,方法区中可能还会存放运行时常量池信息,包括字符串字面量和数字常量(这部分常量信息是Class文件中常量池部分的内存映射)。 2)java堆在虚拟机启动的时候建立,它是java程序最主要的内存工作区域。几乎所有的java对象实例都存放在java堆中。堆空间是所有线程共享的,这是一块与java应用密切相关的内存空间。 3)java的NIO库允许java程序使用直接内存。直接内存是在java堆外的、直接向系统申请的内存空间。通常访问直接内存的速度会优于java堆。因此出于性能的考虑,读写频繁的场合可能会考虑使用直接内存。由于直接内存在java堆外,因此它的大小不会直接受限于Xmx指定的最大堆大小,但是系统内存是有限的,java堆和直接内存的总和依然受限于操作系统能给出的最大内存。 4)垃圾回收系统是java虚拟机的重要组成部分,垃圾回收器可以对方法区、java堆和直接内存进行回收。其中,java堆是垃圾收集器的工作重点。和C/C++不同,java中所有的对象空间释放都是隐式的,也就是说,java中没有类似free()或者delete()这样的函数释放指定的内存区域。对于不再使用的垃圾对象,垃圾回收系统会在后台默默工作,默默查找

分析一套源代码的代码规范和风格并讨论如何改进优化代码

ε祈祈猫儿з 提交于 2019-11-30 19:11:57
在本次的工程实践中,我的题目是《基于opengl的车载虚拟仪表软件开发》,是一项校企合作的项目,在项目中以前做过的学长也向我们分享了以往做过的相关的项目的源代码,代码主要是由c语言写出,通过调用opengl的api接口规范来实现的图像旋转,拉伸,平移等操作,源代码如下 : #include "config.h" #include "main.h" #include "./lib/lib_opengl.h" #include "./font.h" #include "./resource.h" #ifdef DEBUG_LOCATION #undef DEBUG_LOCATION #endif #define DEBUG_LOCATION "MAIN" pthread_t taskTimer; extern void *threadTimer(void); int main(int argc, char* argv[]) { float rotate = 0; FT_ULong strW[10] = {0}; u32 delay = 0; InitGL(); initFont(); initResource(); loadImage(IDIMG_BG); enableGlStatus(); //多线程 //pthread_create(&taskTimer, NULL,

大数据技术复习常见问题

爱⌒轻易说出口 提交于 2019-11-30 18:08:05
1. 使用mr,spark ,spark sql编写 word count 程序 (1) mr public class WordCount { public static class TokenizerMapper extends Mapper < Object , Text , Text , IntWritable >{ private final static IntWritable one = new IntWritable( 1 ); private Text word = new Text(); public void map (Object key, Text value, Context context ) throws IOException, InterruptedException { StringTokenizer itr = new StringTokenizer(value.toString()); while (itr.hasMoreTokens()) { word.set(itr.nextToken()); context.write(word, one); } } } public static class IntSumReducer extends Reducer < Text , IntWritable , Text , IntWritable

Linux进程内存统计

微笑、不失礼 提交于 2019-11-30 17:22:42
一、 进程内存统计 cat /proc/[pid]/status 通过/proc/[pid]/status可以查看进程的内存使用情况,包括虚拟内存大小(VmSize),物理内存大小(VmRSS),数据段大小(VmData),栈的大小(VmStk),代码段的大小(VmExe),共享库的代码段大小(VmLib)等等。 * Name: java /*进程的程序名*/ * State: S (sleeping) /*进程的状态信息,具体参见*/ * Tgid: 9744 /*线程组号*/ * Pid: 9744 /*进程pid*/ * PPid: 7672 /*父进程的pid*/ * TracerPid: 0 /*跟踪进程的pid*/ * VmPeak: 60184 kB /*进程地址空间的大小*/ * VmSize: 60180 kB /*进程虚拟地址空间的大小reserved_vm:进程在预留或特殊的内存间的物理页*/ * VmLck: 0 kB /*进程已经锁住的物理内存的大小.锁住的物理内存不能交换到硬盘*/ * VmHWM: 18020 kB /*文件内存映射和匿名内存映射的大小*/ * VmRSS: 18020 kB /*应用程序正在使用的物理内存的大小,就是用ps命令的参数rss的值 (rss)*/ * VmData: 12240 kB /*程序数据段的大小

转:Tomcat 内存溢出 \"OutOfMemoryError\" 问题总结 (JVM参数说明)

懵懂的女人 提交于 2019-11-30 17:11:35
问题说明: 公司内网环境中部署的jenkins代码发版平台突然不能访问了,查看tomcat的catalina.out日志发现报错如下: ? 1 2 3 4 5 6 [root@redmine logs] # tail -f /srv/apache-tomcat-7.0.67/logs/catalina.out ...... Exception in thread "http-bio-8080-exec-5" java.lang.OutOfMemoryError: PermGen space Exception in thread "http-bio-8080-exec-5" java.lang.OutOfMemoryError: PermGen space Exception in thread "http-bio-8080-exec-5" java.lang.OutOfMemoryError: PermGen space ...... 上面报错是由于tomcat内存溢出引起的: ? 1 2 3 [root@redmine logs] # ps -ef|grep tomcat root 23615 1 14 15:15 ? 00:04:45 /usr/java/jdk1 .7.0_79 /bin/java -Djava.util.logging.config. file =

JAVA基础

♀尐吖头ヾ 提交于 2019-11-30 16:10:32
语法部分 1.java的技术结构:JAVASE JAVAEE JAVAME 2.Java的跨平台:基于JVM---java语言是跨平台的,JVM不跨平台。 3. 入门程序: 类名和 java文件名不一定一致 : class文件名和类名对应。(java、javac两个指令) 4. 关键字: 53个---goto,const---2个保留字 5. 标识符:由字母、数字、 _、$组成,数字不能开头,不能使用关键字,见名知意。 6. 注释:单行 //、多行/* */、文档/** */,文档注释一般用来标识类和方法---注释的作用:解释说明程序、排错 7. 进制:开头标识: 2进制以0b开头,8进制以0开头,16进制以0x开头。 byte b = 00010000;---报错(这是一个八进制的) 01111111->177 8.变量:先声明后使用,先赋值后操作 9. 数据类型:基本数据类型( byte short int long float double char boolean)、引用数据类型(类、接口、数组) A.byte的取值范围:-128-127; B. 整数默认是 int类型,小数默认是double类型 C.float需要以F/f结尾,long需要有一个L/l结尾 D. 科学计数法: dobule d = 3.2e4;32000 double d = 0x8p3;64 10

【11】MySQL:优化

落爺英雄遲暮 提交于 2019-11-30 16:06:53
写在前面的话 不管是作为运维还是作为 DBA,我们的工作都不是写 SQL,搞业务。更多的还是如何实现又好又快的给开发提供一个数据库环境和保障数据的安全性。前面的文章中读写分离,高可用,建立索引,分库分表等都是类似改变业务的架构来提升数据库的性能和稳定性。本章节介绍如何通过修改 my.cnf 配置文件直接以最低的成本提升服务器的性能。 关于 MySQL 优化 优化的标准: 1. 优化有风险,配置需谨慎。 2. 优化永远不是一个人的问题,需要开发,运维,DBA 共同介入。 3. 稳定比性能重要,没有明显提升的优化是失败的。 4. 一个问题的解决往往伴随着另外一个问题的产生,优化不一定都是好的。 优化的方向:安全和性能 优化的范围: 1. 硬件和系统:例如机器配置,网络,系统优化等。 2. 业务程序优化:例如索引,锁,SQL 性能等。 3. 数据库优化:例如数据库架构,数据库配置参数等。 操作系统级别的优化 1. CPU 使用情况:top 命令 --> 按 1 我这里选的 4 核,所以可以看到 4 个 CPU。 主要指标: us :use,用户程序运行中 CPU 占比,理想中是能达到 70% 最好,这样才能说明设备性能充分利用。 sy :sys,系统资源,一般内核调用,这个偏高可能是 BUG,中毒或者数据库锁住了。 id :idle,空闲时间占比。 wa :wait,等待时间