随笔分类 - 性能调优
摘要:一、关键配置 1. 配置文件的位置 MySQL配置文件 /etc/my.cnf 或者 /etc/my.cnf.d/server.cnf 几个关键的文件:.pid文件,记录了进程id.sock文件,是内部通信使用的socket接口,比3306快.log文件,日志文件.cnf或.conf文件,配置文件安
阅读全文
摘要:一、SQL在数据库中的执行过程 二、执行计划 1. ACID 原子性:一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被恢复(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。一致性:在事务开始之前
阅读全文
摘要:一、为优化而设计 1. 数据库设计 数据库设计,一个软件项目成功的基石。数据库设计也是门学问。在项目早期由开发者进行数据库设计(后期调优需要DBA)。一个精通OOP和ORM的开发者,设计的数据库往往更为合理,更能适应需求的变化。因为数据库的规范化,与OO的部分思想雷同(如内聚)。而DBA,设计的数据
阅读全文
摘要:一、优化策略 战略级的优化思路应在设计之初就建立,软件初始设计,模块,架构,很难深远的思考性能瓶颈、模块规模等因素。但应以适合优化的角度实施开发。 战略优化思路1: 战略优化思路2: 全局战略优化措施: 1、开发框架的选择2、数据存储的设计3、模块层级的衔接与拆分 局部战略优化措施: 1、单一职责,
阅读全文
摘要:一、Tomcat工作原理 1. TCP的三次握手四次挥手 三次握手: 说明: 类比于A和B打电话: A对B说:你好,我是A,你能听到我说话吗? B对A说:嗯,我能听到你说话 A对B说:好,那我们开始聊天吧 在服务器上使用如下命令能看到当前服务器的连接情况 netstat -n | awk '/^tc
阅读全文
摘要:一、几个基本概念 GCRoots对象都有哪些 所有正在运行的线程的栈上的引用变量。所有的全局变量。所有ClassLoader。。。 1.System Class.2.JNI Local3.JNI Global4.Thread Block5.Busy Monitor6.Java Local7.Nati
阅读全文
摘要:一、虚拟机组成 虚拟机主要由三部分组成:编译器(执行引擎),堆与栈。 1. 编译器 编译器分为即时编译器与解释器。 即时编译器将代码编译成本地代码存于code区。因此它快,但它有内存限制! 解释器逐行解释字节码,相当于脚本顺序执行,很慢,性能约为C语言的80%。优化的一部分是使代码尽早进入编译器。将
阅读全文
摘要:一. 基本概念 1. 软件系统质量特性 安全性:同时兼顾向合法用户提供服务,以及阻止非授权使用软件及资源的能力。 健壮、可靠:软件系统在一定的时间内无故障运行的能力、容错能力、恢复能力 可扩展、可维护、可移植:正在运行的软件系统以适应新需求、变化了的需求的难易程度 可用性、易用性、性能:性能是指软件
阅读全文