LAMP平台部署及应用

news2025/7/25 10:22:27

LAMP平台部署及应用

📒博客主页: 微笑的段嘉许博客主页

💻微信公众号:微笑的段嘉许

🎉欢迎关注🔎点赞👍收藏⭐留言📝

📌本文由微笑的段嘉许原创!

📆CSDN首发时间:🌴2022年2月日24🌴

✉️坚持和努力一定能换来诗与远方!

🙏作者水平很有限,如果发现错误,一定要及时告知作者哦!感谢感谢!

本文介绍

LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。


文章目录

  • LAMP平台部署及应用
  • 📝理论讲解:
    • LAMP架构
  • 📖实验配置与实现:
    • 一、安装依赖程序
    • 二、安装Apache
    • 三、安装配置Mysql
    • 四、安装php
    • 五、配置php使用Zend加速
    • 六、php和Apache协同工作
    • 七、安装phpMyadmin系统
    • 八、安装DNS

📝理论讲解:

LAMP架构

LAMP平台是协同工作的一整套系统和相关软件,能够提供动态Wen站点服务以及应用开发环境,是目前最为成熟也是比较传统的一种企业网站应用模式

构成组件

  • Linux系统: LAMP架构的基础,提供用于支撑Web站点的操作系统

  • Apache网站服务: LAMP架构的前端,向用户提供网站服务、发送网页、图片等文件内容

  • MySQL数据库服务: LAMP架构的后端,存储各种账号信息、产品信息、客户资料、业务数据等,其他程序可以通过SQL语句进行查询、更改

  • PHP/Perl/Python编程语言: 负责解释动态网页文件,提供Web应用程序开发和运行环境

LAMP服务平台的优势

  • 成本低廉: 开源,可快速获得免费使用
  • 可定制: 拥有大量的额外组件和扩展功能模块,可以根据需要定制或者自行开发添加新功能
  • 易于开发: 代码简洁,与HTML语言结合度高,容易修改网页代码
  • 方便易用: PHP、Perl属于解释性语言,开发的程序不需要编译,可以直接移植使用
  • 安全和稳定: 开源优势,发现问题能够很快解决

📖实验配置与实现:

一、安装依赖程序

1)挂载系统光盘

[root@centos01 ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@centos01 ~]# ls /mnt/
CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7
EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7
EULA             isolinux  repodata  TRANS.TBL

2)删除系统自带的yum仓库

[root@centos01 ~]# rm -rf /etc/yum.repos.d/CentOS-*			//删除系统自带的yum仓库
[root@centos01 ~]# ls /etc/yum.repos.d/						//查看是否删除成功
local.repo

3)安装依赖程序

yum -y install cmake ncurses-devel zlib-devel libxml2-devel

image-20221205144453735

4)创建管理Mysql组和账户

[root@centos01 ~]# groupadd mysql
[root@centos01 ~]# useradd -M -s /sbin/nologin -g mysql mysql

二、安装Apache

1)挂载LAMP光盘

image-20221205145726449

[root@centos01 ~]# umount /mnt/					//卸载系统光盘
[root@centos01 ~]# ls /mnt/						//查看是否卸载成功
[root@centos01 ~]# mount /dev/cdrom /mnt/		//挂载LAMP光盘
mount: /dev/sr0 写保护,将以只读方式挂载
[root@centos01 ~]# ls /mnt/						//查看是否挂载成功
cmake-2.8.6.tar.gz      mysql-5.5.22.tar.gz
httpd-2.2.17.tar.gz     php-5.3.28.tar.gz
libmcrypt-2.5.8.tar.gz  phpmyadmin-3.3.10-all-languages.tar.gz
mcrypt-2.6.8.tar.gz     zendguardloader-php-5.3-linux-glibc23-i386.tar.gz
mhash-0.9.9.9.tar.gz

2)解压Apache

[root@centos01 ~]# tar zxf /mnt/httpd-2.2.17.tar.gz -C /usr/src/	//解压httpd程序到/usr/src/
[root@centos01 ~]# cd /usr/src/httpd-2.2.17/						//切换到httpd目录
[root@centos01 httpd-2.2.17]# 

3)配置Apache

[root@centos01 httpd-2.2.17]# ./configure --prefix=/usr/local/httpd --enable-so --enable-chrset-lite --enable-cgi --enable-rewrite

4)安装Apache

[root@centos01 httpd-2.2.17]# make && make install

5)优化命令

[root@centos01 httpd-2.2.17]# ln -s /usr/local/httpd/bin/* /usr/local/bin/

6)生成服务控制文件

[root@centos01 httpd-2.2.17]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[root@centos01 httpd-2.2.17]# chmod +x /etc/init.d/httpd		//添加权限
[root@centos01 httpd-2.2.17]# ls -ld /etc/init.d/httpd 			//查看
-rwxr-xr-x 1 root root 3422 12月  5 23:14 /etc/init.d/httpd

7)修改服务控制文件

[root@centos01 httpd-2.2.17]# vim /etc/init.d/httpd 
---
#!/bin/sh
#chkconfig:35 80 21
#description:Apache Server

8)添加系统服务设置开机自动启动

[root@centos01 httpd-2.2.17]# chkconfig --add httpd
[root@centos01 httpd-2.2.17]# chkconfig --level 35 httpd on

9)检查服务配置文件

[root@centos01 ~]# httpd -t
httpd: Could not reliably determine the server's fully qualified domain name, using fe80::20c:29ff:fe25:91b5 for ServerName
Syntax OK

三、安装配置Mysql

1)解压mysql

[root@centos01 ~]# tar zxf /mnt/mysql-5.5.22.tar.gz -C /usr/src/
[root@centos01 ~]# cd /usr/src/mysql-5.5.22/
[root@centos01 mysql-5.5.22]# 

2)配置MySQL

[root@centos01 mysql-5.5.22]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DSYSCONFDIR=/etc -DWITH_EXTRA_CHARSETS=all

3)编译安装MySQL

[root@centos01 mysql-5.5.22]# make && make install

4)修改目录所有者

[root@centos01 mysql-5.5.22]# chown -R mysql:mysql /usr/local/mysql/

5)生成服务配置文件

[root@centos01 mysql-5.5.22]# cp support-files/my-medium.cnf /etc/my.cnf
cp:是否覆盖"/etc/my.cnf"? y

6)生成服务控制文件添加执行权限

[root@centos01 mysql-5.5.22]# cp support-files/mysql.server /etc/init.d/mysqld
[root@centos01 mysql-5.5.22]# chmod +x /etc/init.d/mysqld 			//添加执行权限

7)添加系统服务设置开机自动启动

[root@centos01 mysql-5.5.22]# chkconfig --add mysqld
[root@centos01 mysql-5.5.22]# chkconfig --level 35 mysqld on

8)优化MySQL命令

[root@centos01 mysql-5.5.22]# echo "PATH=$PATH:/usr/local/mysql/bin/" >> /etc/profile
[root@centos01 mysql-5.5.22]# source /etc/profile

9)初始化MySQL命令

[root@centos01 mysql-5.5.22]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/

10)启动MySQL服务

[root@centos01 mysql-5.5.22]# systemctl restart mysqld
[root@centos01 mysql-5.5.22]# netstat -anptu | grep mysqld
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      64732/mysqld        

11)MySQL系统设置密码

[root@centos01 mysql-5.5.22]# mysqladmin -uroot password
New password: 
Confirm new password: 

12)登录MySQL

[root@centos01 ~]# mysql -uroot -ppwd@123
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.5.22-log Source distribution

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> exit
Bye

四、安装php

1)安装php依赖libmcrypt

[root@centos01 ~]# tar zxf /mnt/libmcrypt-2.5.8.tar.gz -C /usr/src/			//解压
[root@centos01 ~]# cd /usr/src/libmcrypt-2.5.8/								//切换目录
[root@centos01 libmcrypt-2.5.8]# ./configure && make && make install		//编译安装
[root@centos01 libmcrypt-2.5.8]# ln -s /usr/local/lib/libmcrypt.* /usr/lib/		//优化命令
[root@centos01 libmcrypt-2.5.8]# cd

2)安装php依赖mhash

[root@centos01 ~]# tar zxf /mnt/mhash-0.9.9.9.tar.gz -C /usr/src/
[root@centos01 ~]# cd /usr/src/mhash-0.9.9.9/
[root@centos01 mhash-0.9.9.9]# ./configure && make && make install
[root@centos01 mhash-0.9.9.9]# ln -s /usr/local/lib/libmhash.* /usr/lib
[root@centos01 mhash-0.9.9.9]# cd

3)安装php依赖mcrypt

[root@centos01 ~]# tar zxf /mnt/mcrypt-2.6.8.tar.gz -C /usr/src/
[root@centos01 ~]# cd /usr/src/mcrypt-2.6.8/
[root@centos01 mcrypt-2.6.8]# export LD_LIBRARY_PATH=/usr/local/lib
[root@centos01 mcrypt-2.6.8]# ./configure && make && make install

4)配置php

[root@centos01 ~]# tar zxf /mnt/php-5.3.28.tar.gz -C /usr/src/
cd[root@centos01 ~]# cd /usr/src/php-5.3.28/
[root@centos01 php-5.3.28]# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --with-mcrypt --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql/ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring

image-20221205161726904

5)编译安装php

[root@centos01 php-5.3.28]# make && make install

6)生成php配置文件

[root@centos01 php-5.3.28]# cp php.ini-production /usr/local/php/php.ini
[root@centos01 php-5.3.28]# cd

7)修改php主配置文件

[root@centos01 ~]# vim /usr/local/php/php.ini 
---
227 short_open_tag = On			//支持php
786 default_charset = "utf-8"	//支持中文和英文

image-20221205162802618

image-20221205162739897

五、配置php使用Zend加速

1)解压

[root@centos01 ~]# tar zxf /mnt/zendguardloader-php-5.3-linux-glibc23-i386.tar.gz -C /usr/src/			//解压到/usr/src目录
[root@centos01 ~]# cd /usr/src/ZendGuardLoader-php-5.3-linux-glibc23-i386/php-5.3.x/				//切换到php-5.3.x目录
[root@centos01 php-5.3.x]# 

2)移动zend到php配置文件中

[root@centos01 php-5.3.x]# cp ZendGuardLoader.so /usr/local/php/lib/php/
[root@centos01 php-5.3.x]# cd

3)配置php加载zend加速

[root@centos01 ~]# vim /usr/local/php/php.ini
---
[PHP]
zend_extension= /usr/local/php/lib/php/ZendGuardLoader.so
zend_loader.enable=1

image-20221205163602493

六、php和Apache协同工作

1)修改Apache配置文件

[root@centos01 ~]# vim /usr/local/httpd/conf/httpd.conf
---
53 LoadModule php5_module        modules/libphp5.so
166 <IfModule dir_module>
167     DirectoryIndex index.html index.php
168 </IfModule>
310     AddType application/x-httpd-php .php

image-20221205163839081

image-20221205164021097

image-20221205165222571

2)写php测试文件

[root@centos01 ~]# vim /usr/local/httpd/htdocs/index.php
---
<?php
        phpinfo();
?>

image-20221205164541132

3)重启Apache服务

[root@centos01 ~]# systemctl restart httpd

七、安装phpMyadmin系统

1)清除Apache跟目录数据

[root@centos01 ~]# rm -rf /usr/local/httpd/htdocs/*

2)解压安装phpMyadmin

[root@centos01 ~]# tar zxf /mnt/phpmyadmin-3.3.10-all-languages.tar.gz -C /usr/src/
[root@centos01 ~]# mv /usr/src/phpMyAdmin-3.3.10-all-languages/* /usr/local/httpd/htdocs/

3)生成配置文件

cp /usr/local/httpd/htdocs/config.sample.inc.php /usr/local/httpd/htdocs/config.inc.php

八、安装DNS

1)挂载系统光盘

[root@centos02 ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@centos02 ~]# ls /mnt/
CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7
EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7
EULA             isolinux  repodata  TRANS.TBL

2)安装DNS服务

[root@centos02 ~]# rpm -ivh /mnt/Packages/bind-9.9.4-50.el7.x86_64.rpm 
[root@centos02 ~]# rpm -ivh /mnt/Packages/bind-chroot-9.9.4-50.el7.x86_64.rpm

3)设置开机自启

[root@centos02 ~]# systemctl enable named

4)备份主配置文件避免修改错误源文件丢失

[root@centos02 ~]# cp /etc/named.conf /etc/named.conf.bak
[root@centos02 ~]# echo "" > /etc/named.conf
[root@centos02 ~]# cat /etc/named.conf

[root@centos02 ~]# 

5)修改主配置

vim /etc/named.conf 
---
options {
        listen-on port 53 { 192.168.100.20; };
        directory "/var/named"; 
};      
zone "ljm.com" IN {
        type master; 
        file "/var/named/ljm.com.zone";
};

image-20221205175614855

6)修改区域配置文件

[root@centos02 ~]# vim /var/named/ljm.com.zone
---
$TTL            86400
@               SOA             ljm.com. root.ljm.com. (
                2022120510
                1H
                15M
                1W
                1D
)
@               NS              centos02.ljm.com.
centos02        A               192.168.100.20
www             A               192.168.100.10

image-20221205172934025

7)为Centos01、02、03配置DNS

Centos01:(DNS指向DNS服务器的IP地址)

[root@centos01 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32
---
TYPE=Ethernet
BOOTPROTO=static
NAME=ens32
DEVICE=ens32
ONBOOT=yes
IPADDR=192.168.100.10
NETMASK=255.255.255.0
DNS1=192.168.100.20
[root@centos01 ~]# systemctl restart network		//重新启动网卡服务

Centos02:(因为Centos02是DNS服务器所有DNS指向自己的IP地址)

[root@centos02 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32
---
TYPE=Ethernet
BOOTPROTO=static
NAME=ens32
DEVICE=ens32
ONBOOT=yes
IPADDR=192.168.100.20
NETMASK=255.255.255.0
DNS1=192.168.100.20
[root@centos01 ~]# systemctl restart network		//重新启动网卡服务

Centos03:(Centos03作为客户端验证使用,如果使用win10验证就在win10客户端配置IP地址,DNS指向DNS服务器的IP地址)

[root@centos02 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32
---
TYPE=Ethernet
BOOTPROTO=static
NAME=ens32
DEVICE=ens32
ONBOOT=yes
IPADDR=192.168.100.30
NETMASK=255.255.255.0
DNS1=192.168.100.20

8)启动DNS服务器

[root@centos02 ~]# systemctl restart named

9)测试DNS是否能够正常解析

[root@centos02 ~]# nslookup www.ljm.com
Server:		192.168.100.20
Address:	192.168.100.20#53

Name:	www.ljm.com
Address: 192.168.100.10

10)验证(开一台Linux或着win10都行)

image-20221205180127460

注:默认为数据库的账户名密码(如果MySQL没有设置密码就为空)

image-20221205180507484


🙏作者水平很有限,如果发现错误,一定要及时告知作者哦!感谢感谢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/368352.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

117.Android 简单的拖拽列表+防止越界拖动(BaseRecyclerViewAdapterHelper) 两种方式实现

//一.第一种方式 通过BaseItemDraggableAdapter类和其提供的的拖拽监听实现&#xff1a; //1.第一步 导入依赖库和权限&#xff1a; //依赖库&#xff1a; //RecyclerView implementation com.android.support:recyclerview-v7:28.0.0//RecyclerAdapter implementation com.…

WAF:ModSecurity on Nginx(15)

预备知识 Nginx概述 Nginx ("engine x") 是一个高性能的HTTP和 反向代理 服务器&#xff0c;也是一个 IMAP/POP3/SMTP服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的&#xff0c;第一个公开版本0.1.0发布于2004年10月4日。其将源代…

Mysql的函数GROUP_CONCAT和FIND_IN_SET

业务场景&#xff1a; 表A&#xff1a;存在 customer_phone&#xff1b;bac_id主键 表B&#xff1a;存在 主键id&#xff1b;bac_id字段 customer_phone:用户手机号&#xff1b; bac_id:主键 表A &#xff1a;每个手机号可能会对应多个主键&#xff1b;要查询每个客户手机号包…

我该怎么选择IB课程?

IB用6大学科组及3大课程核心构建知识体系&#xff0c;涵盖广博、注重知行合一&#xff0c;对学生的综合素质的提升以及综合竞争力的打造都十分有益。IB选课建议 六大学科组中的每个课程分为HL&#xff08;高难度&#xff09;和SL&#xff08;标准水平&#xff09; HLIB课程&…

「RISC-V Arch」SBI 规范解读(上)

术语 SBI&#xff0c;Supervisor Binary Interface&#xff0c;管理二进制接口 U-Mode&#xff0c;User mode&#xff0c;用户模式 S-Mode&#xff0c;Supervisor mode&#xff0c;监督模式 VS-Mode&#xff0c;Virtualization Supervisor mode&#xff0c;虚拟机监督模式 …

三菱FX3U与威纶MT8071IP走RS422通讯

一、准备工作 1.需要工具&#xff1a; 电脑一台、PLC&#xff1a;三菱FX3U一个、触摸屏&#xff1a;威纶MT8071一个、 &#xff08;三菱圆形编程口转USB&#xff09;一根、触摸屏与电脑通讯线一根&#xff08;T型口数据线&#xff09;、PLC与触摸屏通讯线&#xff1a;电烙…

谷歌搜索留痕的技术公式【2023年新版】

本文主要分享谷歌搜索留痕的技术公式&#xff0c;让你更简单的去学习谷歌留痕的技术原理 本文由光算创作&#xff0c;有可能会被修改和剽窃&#xff0c;我们佛系对待这样的行为吧。 谷歌搜索留痕的技术公式是什么&#xff1f; 答案是&#xff1a;需要做排名的关键词海量能搜…

Apache Hadoop生态部署-hadoop单机安装

目录 查看服务架构图-服务分布、版本信息 1&#xff1a;安装包下载 2&#xff1a;配置环境变量 3&#xff1a;服务配置 &#xff08;1&#xff09;core-site.xml &#xff08;2&#xff09;配置 hadoop-env.sh &#xff08;3&#xff09;HDFS 配置文件hdfs-site.xml &a…

【Redis】数据库和缓存如何保证一致性?

【Redis】数据库和缓存如何保证一致性&#xff1f; 文章目录【Redis】数据库和缓存如何保证一致性&#xff1f;常见方案先更新缓存&#xff0c;再更新数据库先更新数据库&#xff0c;再更新缓存并发情况下的思考先删除缓存&#xff0c;再更新数据库先更新数据库&#xff0c;再删…

StopWatch计时器

前言 开发中&#xff0c;为了评估性能&#xff0c;我们通常会使用System.currentTimeMillis() 去计算程序运行耗时 long startTimeSystem.currentTimeMillis();//业务代码... long endTimeSystem.currentTimeMillis(); System.out.println("耗时:" (endTime-startT…

Java多线程(三)---synchronized、Lock和volatile

Java内存模型&#xff08;非JVM&#xff09;Java内存模型(Java Memory Model简称JMM)&#xff0c;是一种共享内存模型&#xff0c;是多线程的东西&#xff0c;并不是JVM&#xff08;Java Virtual Machine(Java虚拟机)的缩写&#xff09;&#xff0c;这是俩玩意儿&#xff01;&a…

Ubuntu 22.04.2 发布,可更新至 Linux Kernel 5.19

Ubuntu 22.04 LTS (Jammy Jellyfish) Ubuntu 22.04.2 发布&#xff0c;可更新至 Linux Kernel 5.19 请访问原文链接&#xff1a;Ubuntu 22.04 LTS (Jammy Jellyfish)&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。 作者主页&#xff1a;www.sysin.org 发行说…

ssh远程登录报错:kex_exchange_identification: Connection closed by remote host

基本信息系统&#xff1a;MacOS Catalina 10.15.7报错信息&#xff1a;终端登录远程服务器时报错&#xff1a;kex_exchange_identification: Connection closed by remote host复制然而服务商的一键登录或VNC登录正常。解决方案首先使用以下命令debug登录过程&#xff0c;以便定…

这可能是Spring Boot Starter 讲的最清楚的一次了

前面我们简单介绍了如何使用消息中间件Apache Pulsar&#xff0c;但是在项目中那样使用&#xff0c;显然是不太好的&#xff0c;不管从易用性和扩展性来看&#xff0c;都是远远不够&#xff0c; 为了和springboot项目集成&#xff0c;写一个pulsar-spring-boot-starter是非常有…

Linux核心技能:2023主流监控Prometheus详解,附官方可复制中文文档教程

Prometheus既是一个时序数据库&#xff0c;又是一个监控系统&#xff0c;更是一套完备的监控生态解决方案。作为时序数据库&#xff0c;目前Prometheus已超越了老牌的时序数据库OpenTSDB、Graphite、RRDtool、KairosDB等&#xff0c;如图所示。 &#xff08;来源网络&#xff0…

QT+OpenGL鼠标操作和模型控制

文章目录QTOpenGL鼠标操作和模型控制鼠标拾取理论有点小复杂从鼠标计算射线第 0 步&#xff1a;2D 视口坐标第 1 步&#xff1a;3d归一化设备坐标第 2 步&#xff1a;4d齐次剪辑坐标第 3 步&#xff1a;4d眼(相机)坐标第 4 步&#xff1a;4d 世界坐标代码展示模型控制多模型加载…

自动执行自动化测试用例

phpunit 接口自动化测试系列 所有自动化测试用例最终的目的都是一样的&#xff0c;实现无人值守的自动化运行。而目前最常用的就是Jenkins来实现这个功能&#xff0c;在前面的WebdriverPython页面自动化的教程中我们已经详细讲解了如何将自动化测试用例接入到Jenkins中。本章我…

RK系列(RK3568) i2s 音频输入 麦克风驱动

平台&#xff1a;Android12SOC&#xff1a;RK3568外围芯片&#xff1a;XS9922i2s简介&#xff1a;从上图看I2s主要的线有&#xff1a;SDO SCLK LRCK MCLK I2S协议只定义三根信号线&#xff1a;串行时钟信号SCLK(BCLK)、数据信号SD和左右声道选择信号WS。&#xff08;1&#xff…

QT入门Containers之QStackedWidget

目录 一、QStackedWidget界面相关 1、布局介绍 2、插入界面 3、插入类界面 二、Demo展示 此文为作者原创&#xff0c;创作不易&#xff0c;转载请标明出处&#xff01; 一、QStackedWidget界面相关 1、布局介绍 QStackedWidget这个控件在界面布局时&#xff0c;使用还…

JVM整体分析篇

这里写目录标题JVM的组成部分1.类装载子系统1.1一个类加载到JVM的过程1.2类加载机制1.3为什么设计双亲委派机制1.4怎么打破双亲委派机制2.运行时数据区2.1线程私有及共享2.2JVM内存区结构2.3JVM参数设置经验3.Java对象的生命周期3.1.对象的创建3.2.对象大小的计算&#xff08;6…