当前位置: 首页 > news >正文

LAMP集群分布式实验报告

前景:

1.技术成熟度和稳定性:

LAMP架构(Linux、Apache、MySQL、PHP)自1998年提出以来,经过长时间的发展和完善,已经成为非常成熟和稳定的Web开发平台。其中,Linux操作系统因其高度的灵活性和稳定性而广受欢迎;Apache服务器则以其高性能、稳定性和广泛的平台支持而著称;MySQL数据库以其易用性、稳定性和高性能在Web应用中占据重要地位;PHP作为脚本语言,与LAMP架构高度兼容,为Web开发提供了丰富的功能和灵活性。

2.分布式集群的优势:

分布式集群通过将多个计算机节点组合成一个整体,共同处理用户请求和数据存储,能够显著提高系统的吞吐量、响应速度和可扩展性。对于LAMP架构来说,采用分布式集群技术可以进一步提升其性能和可靠性,满足大规模Web应用的需求。

3.技术趋势:随着云计算、大数据和人工智能等技术的快速发展,分布式系统已经成为解决大规模数据处理和存储问题的关键技术。LAMP集群分布式实验有助于探索和优化分布式系统的性能,为未来的技术发展提供有力支持。

4.市场需求:随着互联网的普及和Web应用的不断增多,对于高性能、高可靠性和可扩展性的Web平台的需求也在不断增加。LAMP集群分布式实验能够满足这一市场需求,为Web应用提供更加强大和稳定的支持。

教育和研究价值:LAMP集群分布式实验不仅有助于提高学生的实践能力和技术水平,还有助于推动相关领域的科研进展。通过实验,学生可以深入了解分布式系统的原理和实现方式,掌握相关的技术和工具;同时,实验结果还可以为相关领域的科研工作提供有价值的参考和借鉴。

面临的挑战和机遇:

在进行LAMP集群分布式实验时,可能会面临一些挑战,如网络延迟、数据一致性、负载均衡等问题。然而,这些挑战也为实验提供了更多的研究机会和创新空间。通过不断尝试和优化,可以探索出更加高效和可靠的分布式系统解决方案。

综上所述,LAMP集群分布式实验具有广阔的前景和重要的价值。通过深入研究和实验,可以推动分布式系统技术的发展和应用,为Web应用提供更加强大和稳定的支持。

一、实训目的
  1. 熟悉整个Linux操作系统,掌握相关知识。
  2. 了解并运用相关代码对RadHat操作系统进行相关的网络配置。
  3. ①安装httpd ②安装PHP及其相关扩展(如php-mysql,用于与数据库通信)。③安装phpMyAdmin并配置它以连接到MariaDB服务器。④配置Apache以支持PHP⑤确保防火墙和安全组规则允许对Web服务器的HTTP和HTTPS访问。
二、环境准备

hostname ip 系统

web   10.0.0.88  rhel-baseos-9.0-x86_64-dvd.iso

Datebase10.0.0.99 rhel-baseos-9.0-x86_64-dvd.iso

test   10.0.0.77  rhel-baseos-9.0-x86_64-dvd.iso

①显示的是httpd服务器(即apache)和php服务器通过FastCGI协议进行通信,且php作为独立的服务进程运行阶段。

②显示的是php程序和mysql数据库间通过mysql协议进行通信。php与mysql本没有什么联系,但是由php语言写成的程序可以与mysql进行数据交互。同理perl和python写的程序也可以与mysql数据库进行交互。

三、安装Linux firewalld与Linux网络yum SElinux

1、修改主机名

输入命令hostnamectl set-hostname web

修改成web,重启主机输入reboot生效

2、关闭防火墙与SElinux

输入命令systemctl status firewalld查看防火墙状态

systemctl stop firewalld关闭防火墙

输入命令修改SELinux配置文件 vim /etc/selinux/config

将SELINUX=enforcing改为SELINUX=disabled(可将防火墙永久关闭)

3、修改ssh配置文件并进行远程链接服务

输入命令vim /etc/ssh/sshd_config

找到port,去掉“#”,将22改成10022

输入命令systemctl restart sshd,若出现以上情况,则很大可能为未下载openssh服务

输入命令 yum -y install openssh进行下载

下载完毕后输入reboot重启服务,此时远程连接端口需特别注意更改为10022才能连接。

四、安装httpd与php服务
1、输入命令yum -y install httpd安装httpd服务

systemctl start httpd启动httpd服务

systemctl enable httpd 实现开机自启动httpd服务

2、安装PHP及其相关扩展

输入命令yum install php php-mysqlnd php-fpm安装

systemctl start php-fpm.service启动服务

systemctl enable php-fpm.service实现开机自启

测试php:创建一个PHP测试页面来验证LAMP服务器是否已正确安装和配置。在Apache的文档根目录(通常是/var/www/html/)中创建一个名为info.php的文件

输入命令systemctl restart httpd重启httpd服务

 cd /var/www/html/

vim info.php创建文件

再次输入ystemctl restart httpd重启httpd服务

3、回到虚拟机进行测试

此时测试成功!

五、安装phpMyAdmin并配置它以连接到MariaDB服务器
1、安装phpMyAdmin并测试

输入命令wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz下载

tar -xvzf phpMyAdmin-latest-all-languages.tar.gz对文件进行解压缩

输入命令ls查看是否解压完成

输入命令mv phpMyAdmin-5.2.1-all-languages phpMyAdmin进行重命名

输入命令mv phpMyAdmin /var/www/html/移动到html目录下

systemctl restart httpd再次重启服务

显示空白页面,则需重新更新yum源

输入命令yum -y update

输入命令重启即可!

2、配置并连接到MariaDB服务器

输入命令ls查看文件

cd phpMyAdmin/

//如果不是config.inc.php,而是config.sample.inc.php,就将文件改成config.inc.php

 mv config.sample.inc.php config.inc.php

输入命令vim config.inc.php编辑文件

输入命令重启服务

3、数据库服务器

(1)安装MariaDB,配置MariaDB以允许来自Web服务器的连接

(IP和ssh的端口设为10022,操作如web服务器并进行远程连接)

输入命令systemctl stop firewalld

Systemctl disable firewalld

相关文章:

LAMP集群分布式实验报告

前景: 1.技术成熟度和稳定性: LAMP架构(Linux、Apache、MySQL、PHP)自1998年提出以来,经过长时间的发展和完善,已经成为非常成熟和稳定的Web开发平台。其中,Linux操作系统因其高度的灵活性和稳…...

vue3中函数必须有返回值么?

在 Vue 3 中,特别是涉及到Composition API的使用时,setup() 函数确实必须有返回值。setup() 函数是组件的入口点,它的返回值会被用来决定哪些数据和方法是可被模板访问的。返回的对象中的属性和方法可以直接在模板中使用。如果setup()没有返回…...

经常用到的函数

创建文件夹和删除文件夹的函数 def make_dirs(*dirs):for new_dir in dirs:if not os.path.exists(new_dir):try:os.makedirs(new_dir)except RuntimeError:return Falsereturn Truedef remove_files(file_path_list):""" 删除列表中指定路径文件Args:file_pat…...

vue3学习(六)

前言 接上一篇学习笔记,今天主要是抽空学习了vue的状态管理,这里学习的是vuex,版本4.1。学习还没有学习完,里面有大坑,难怪现在官网出的状态管理用Pinia。 一、vuex状态管理知识点 上面的方式没有写全,还有…...

[数据集][目标检测]猫狗检测数据集VOC+YOLO格式8291张2类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):8291 标注数量(xml文件个数):8291 标注数量(txt文件个数):8291 标注…...

简单模拟实现shell(Linux)

目录​​​​​​​ 前言 展示效果 实现代码 前言 该代码模拟了shell的实现,也就是解析类似于“ls -a -l"的命令,当我们启动我们自己写的shell的可执行程序时,我们输入"ls"的命令,也可以展示出在shell中输入&…...

SQL深度解析:从基础到高级应用

SQL(Structured Query Language)是用于管理关系型数据库的语言,广泛应用于数据管理、分析和查询。本文将详细介绍SQL的基础知识、高级特性以及一些常见的代码示例,帮助您全面掌握SQL的应用。 一、SQL基础语法 数据库操作 创建数据…...

乡村振兴与脱贫攻坚相结合:巩固拓展脱贫攻坚成果,推动乡村全面振兴,建设更加美好的乡村生活

目录 一、引言 二、巩固拓展脱贫攻坚成果 1、精准施策,确保稳定脱贫 2、强化政策支持,巩固脱贫成果 3、激发内生动力,促进持续发展 三、推动乡村全面振兴 1、加快产业发展,增强乡村经济实力 2、推进乡村治理体系和治理能力…...

[AI Google] Google I/O 2024: 为新一代设计的 I/O

编辑注:以下是 Sundar Pichai 在 I/O 2024 上讲话的编辑版,并包含了更多在舞台上宣布的内容。查看我们收藏中的所有公告。 Google 完全进入了我们的 Gemini 时代。 在开始之前,我想反思一下我们所处的这一刻。我们已经在 AI 上投资了十多年…...

CentOS配置DNS

1.打开/etc/resolv.conf文件 sudo vi /etc/resolv.conf2.添加配置 nameserver 114.114.114.1143.保存并关闭文件。 4.为了确保配置生效,重启网络服务或重启系统。例如: 重启网络: sudo systemctl restart network重启系统: …...

ArcGIS空间数据处理、空间分析与制图;PLUS模型和InVEST模型的原理,参量提取与模型运行及结果分析;土地利用时空变化以及对生态系统服务的影响分析

工业革命以来,社会生产力迅速提高,人类活动频繁,此外人口与日俱增对土地的需求与改造更加强烈,人-地关系日益紧张。此外,土地资源的不合理开发利用更是造成了水土流失、植被退化、水资源短缺、区域气候变化、生物多样性…...

Linux基于V4L2的视频捕捉

简介 linux环境使用V4l2实现摄像头捕捉&#xff0c;界面流畅播放并可以保存图片到本地。 代码 void VideoCapture::run() {qDebug() << "VideoCapture start";// 打开设备int fd open("/dev/video0", O_RDWR);if(fd < 0){qDebug("video设…...

ECS搭建2.8版本的redis

要在ECS&#xff08;Elastic Compute Service&#xff09;上手动搭建Redis 2.8版本&#xff0c;你可以按照以下步骤操作&#xff1a; 步骤1&#xff1a;更新系统和安装依赖 首先&#xff0c;登录到你的ECS实例&#xff0c;确保系统是最新的并安装必要的依赖包&#xff1a; s…...

[机器学习]GPT LoRA 大模型微调,生成猫耳娘

往期热门专栏回顾 专栏描述Java项目实战介绍Java组件安装、使用&#xff1b;手写框架等Aws服务器实战Aws Linux服务器上操作nginx、git、JDK、VueJava微服务实战Java 微服务实战&#xff0c;Spring Cloud Netflix套件、Spring Cloud Alibaba套件、Seata、gateway、shadingjdbc…...

代码随想录算法训练营Day24|216.组合总和III、17.电话号码的字母组合

组合总和III 216. 组合总和 III - 力扣&#xff08;LeetCode&#xff09; 思路和昨日的组合题类似&#xff0c;但注意对回溯算法中&#xff0c;收获时的条件需要写对&#xff0c;path的长度要为k的同时&#xff0c;path中元素总和要为n。 class Solution { public:vector<…...

【Python系列】Python 中方法定义与方法调用详解

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

Java 基础面试300题 (201-230)

Java 基础面试300题 &#xff08;201-230&#xff09; 201.下面代码片段的输出是什么&#xff1f; Predicate<Integer> numberChecker (num)–> num > 20; int input 10; System.out.println(input” greater than 20–”numberChecker.test(input)); //Line 1…...

Go-知识并发控制Context

Go-知识并发控制Context 1. 介绍2. 实现原理2.1 接口定义2.2 Deadline()2.3 Done()2.4 Err()2.5 Value() 3. 空 context4. cancelCtx4.1 Done()4.2 Err()4.3 cancel()4.4 WithCancel4.5 例子4.6 总结 5. timerCtx5.1 Deadline5.2 cancel5.3 WithDeadline5.4 WithTimeout5.5 例子…...

Vue + Nodejs + socket.io 实现聊天

Vue 代码 // 安装 socket.io-clientnpm i socket.io-clientimport io from socket.io-client;mounted () {// * location.origin 表示你的 socket 服务地址// * /XXXX/socket.io 表示 你的 socket 在服务器配置的 访问地址let socket io(location.origin, {path: "/XX…...

cocos creator 3.x实现手机虚拟操作杆

简介 在许多移动游戏中&#xff0c;虚拟操纵杆是一个重要的用户界面元素&#xff0c;用于控制角色或物体的移动。本文将介绍如何在Unity中实现虚拟操纵杆&#xff0c;提供了一段用于移动控制的代码。我们将讨论不同类型的虚拟操纵杆&#xff0c;如固定和跟随&#xff0c;以及如…...

基于Uniapp开发HarmonyOS 5.0旅游应用技术实践

一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架&#xff0c;支持"一次开发&#xff0c;多端部署"&#xff0c;可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务&#xff0c;为旅游应用带来&#xf…...

渲染学进阶内容——模型

最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...

五年级数学知识边界总结思考-下册

目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解&#xff1a;由来、作用与意义**一、知识点核心内容****二、知识点的由来&#xff1a;从生活实践到数学抽象****三、知识的作用&#xff1a;解决实际问题的工具****四、学习的意义&#xff1a;培养核心素养…...

【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表

1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...

AI病理诊断七剑下天山,医疗未来触手可及

一、病理诊断困局&#xff1a;刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断"&#xff0c;医生需通过显微镜观察组织切片&#xff0c;在细胞迷宫中捕捉癌变信号。某省病理质控报告显示&#xff0c;基层医院误诊率达12%-15%&#xff0c;专家会诊…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲

文章目录 前言第一部分&#xff1a;体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分&#xff1a;体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...

Caliper 负载(Workload)详细解析

Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...

【Elasticsearch】Elasticsearch 在大数据生态圈的地位 实践经验

Elasticsearch 在大数据生态圈的地位 & 实践经验 1.Elasticsearch 的优势1.1 Elasticsearch 解决的核心问题1.1.1 传统方案的短板1.1.2 Elasticsearch 的解决方案 1.2 与大数据组件的对比优势1.3 关键优势技术支撑1.4 Elasticsearch 的竞品1.4.1 全文搜索领域1.4.2 日志分析…...

深度剖析 DeepSeek 开源模型部署与应用:策略、权衡与未来走向

在人工智能技术呈指数级发展的当下&#xff0c;大模型已然成为推动各行业变革的核心驱动力。DeepSeek 开源模型以其卓越的性能和灵活的开源特性&#xff0c;吸引了众多企业与开发者的目光。如何高效且合理地部署与运用 DeepSeek 模型&#xff0c;成为释放其巨大潜力的关键所在&…...

使用SSE解决获取状态不一致问题

使用SSE解决获取状态不一致问题 1. 问题描述2. SSE介绍2.1 SSE 的工作原理2.2 SSE 的事件格式规范2.3 SSE与其他技术对比2.4 SSE 的优缺点 3. 实战代码 1. 问题描述 目前做的一个功能是上传多个文件&#xff0c;这个上传文件是整体功能的一部分&#xff0c;文件在上传的过程中…...