当前位置: 首页 > 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;以及如…...

K8S认证|CKS题库+答案| 11. AppArmor

目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作&#xff1a; 1&#xff09;、切换集群 2&#xff09;、切换节点 3&#xff09;、切换到 apparmor 的目录 4&#xff09;、执行 apparmor 策略模块 5&#xff09;、修改 pod 文件 6&#xff09;、…...

Qt Widget类解析与代码注释

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码&#xff0c;写上注释 当然可以&#xff01;这段代码是 Qt …...

FastAPI 教程:从入门到实践

FastAPI 是一个现代、快速&#xff08;高性能&#xff09;的 Web 框架&#xff0c;用于构建 API&#xff0c;支持 Python 3.6。它基于标准 Python 类型提示&#xff0c;易于学习且功能强大。以下是一个完整的 FastAPI 入门教程&#xff0c;涵盖从环境搭建到创建并运行一个简单的…...

java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别

UnsatisfiedLinkError 在对接硬件设备中&#xff0c;我们会遇到使用 java 调用 dll文件 的情况&#xff0c;此时大概率出现UnsatisfiedLinkError链接错误&#xff0c;原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用&#xff0c;结果 dll 未实现 JNI 协…...

Java - Mysql数据类型对应

Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

dify打造数据可视化图表

一、概述 在日常工作和学习中&#xff0c;我们经常需要和数据打交道。无论是分析报告、项目展示&#xff0c;还是简单的数据洞察&#xff0c;一个清晰直观的图表&#xff0c;往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server&#xff0c;由蚂蚁集团 AntV 团队…...

TSN交换机正在重构工业网络,PROFINET和EtherCAT会被取代吗?

在工业自动化持续演进的今天&#xff0c;通信网络的角色正变得愈发关键。 2025年6月6日&#xff0c;为期三天的华南国际工业博览会在深圳国际会展中心&#xff08;宝安&#xff09;圆满落幕。作为国内工业通信领域的技术型企业&#xff0c;光路科技&#xff08;Fiberroad&…...

系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文通过代码驱动的方式&#xff0c;系统讲解PyTorch核心概念和实战技巧&#xff0c;涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...

认识CMake并使用CMake构建自己的第一个项目

1.CMake的作用和优势 跨平台支持&#xff1a;CMake支持多种操作系统和编译器&#xff0c;使用同一份构建配置可以在不同的环境中使用 简化配置&#xff1a;通过CMakeLists.txt文件&#xff0c;用户可以定义项目结构、依赖项、编译选项等&#xff0c;无需手动编写复杂的构建脚本…...

保姆级【快数学会Android端“动画“】+ 实现补间动画和逐帧动画!!!

目录 补间动画 1.创建资源文件夹 2.设置文件夹类型 3.创建.xml文件 4.样式设计 5.动画设置 6.动画的实现 内容拓展 7.在原基础上继续添加.xml文件 8.xml代码编写 (1)rotate_anim (2)scale_anim (3)translate_anim 9.MainActivity.java代码汇总 10.效果展示 逐帧…...