netstat
语法
netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。
在Linux下,如果连接数比较大,可以使用效率更高的ss来替代netstat。
1 | usage: netstat [-vWeenNcCF] [<Af>] -r netstat {-V|--version|-h|--help} |
netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。
在Linux下,如果连接数比较大,可以使用效率更高的ss来替代netstat。
1 | usage: netstat [-vWeenNcCF] [<Af>] -r netstat {-V|--version|-h|--help} |
iostat 主要用于输出磁盘IO 和 CPU的统计信息。
iostat属于sysstat软件包。可以用yum install sysstat 直接安装。
1 | Usage: iostat [ options ] [ <interval> [ <count> ] ] |
1 | [root@incloudos logs]# top -h |
Java虚拟机把描述类的数据从class文件加载到内存,并且对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这个过程称为Java虚拟机的类加载机制,Java天生可以动态扩展的语言特性就是依赖运行期动态加载和动态连接这个特点实现的,JVM 类加载机制分为五个部分:加载,验证,准备,解析,初始化,这五部分是在程序运行期间完成;还有使用和卸载,共七个阶段,参考下图所示:
JDK在安装过程中如果勾选安装JRE最终会在安装目录中有两套JRE。简单来说一套用于Java本身的运行(比如java本身的javac、还有监控套件javap等),一套用于程序的运行。两套JRE的路径默认为:
ib_logfile |
记录系统的回滚,重做日志(在你修改数据之前,会先把 修改的操作 作为日志先记录下来) 记录文件的物理更改 记录的是redo log和undo log(应该记录在ibdata1中)的信息,这里记录的基本是commit之前的数据 |
mysql-bin.****** |
记录系统的所有更新记录,数据库的更细日志,记录的是逻辑更改 主从:mysql会把日志发送到slave,salve会接收日志,然后解析日志,把里面的sql语句重新应用到数据库里,于是就能同步数据了 记录的是已经执行完毕的对数据库的dml和ddl信息,这里记录的基本是commit之后的数据信息。 |
中继日志用于主从复制架构中的从服务器上,从服务器的 slave 进程从主服务器处获取二进制日志的内容并写入中继日志,然后由 IO 进程读取并执行中继日志中的语句。在复制过程中产生的日志一个线程读取别人的二进制日志,存到本地叫做中继日志,然后本地在开启一个线程去读取中继日志在本地做回放,就完成了数据的同步
MySQL会最大程度的利用缓存,从而提高数据的访问效率。那么换一句话来说,任何高性能的系统都必须利用到缓存,从各个层面来讲,缓存都发挥了巨大的作用。再上升到一个高度提炼一下:缓存和队列是实现高性能的必走之路。那么对于数据库来说这个却是个很棘手的问题,要保证数据更高效率的读取和存储,所以要利用到缓存。但是要保证数据的一致性,则必须保证所有的数据都必须准确无误的存储到数据库中,及时发生意外,也要保证数据可恢复。我们知道InnoDB是一个事务安全的存储引擎,而一致性是事务ACID中的一个重要特性。InnoDB存储引擎主要是通过InnoDB事务日志实现数据一致性的,InnoDB事务日志包括重做(redo、循环写入)日志,以及回滚(undo)日志。