MySQL集群、Nginx负载均衡、反向代理、 SQL注入、 面向对象编程OOP 、 adb命令、 使用celery异步邮件、 FastDFS 、Django、Flask框架

🍕 MySQL集群

多个MySQL数据库服务器组成的集合,通过主从复制、负载均衡器和监控工具等技术手段实现数据的高可用性、负载均衡和扩展性,提供稳定、高效的数据库服务,适用于规模应用程序和高并发环境,确保数据安全、故障恢复和系统稳定性。

🍕 Nginx负载均衡

Nginx是高性能web开源服务器,将传入的请求分发到多个服务器上,以确保各个服务器的负载均衡,提高整体的性能和可靠性。

在项目中操作Nginx负载均衡和反向代理:

1、安装和配置Nginx
在服务器上安装Nginx,并确保配置文件可编辑。
编辑Nginx配置文件(通常是nginx.conf),添加负载均衡和反向代理的配置。

2、配置负载均衡
在Nginx配置文件中,配置负载均衡的 upstream,指定后端服务器的地址和端口,以及负载均衡算法。

upstream backend_servers {
    server 192.168.1.101:80;
    server 192.168.1.102:80;
    // 可以添加更多后端服务器
    // ...
}

配置负载均衡的 location,将请求代理到 upstream 中定义的后端服务器

server {
    listen 80;
    server_name example.com;
    
    location / {
        proxy_pass http://backend_servers;
    }
}

步骤3:配置反向代理
在Nginx配置文件中,配置反向代理的 location,指定要代理的后端服务器地址。

server {
    listen 80;
    server_name example.com;
    
    location / {
        proxy_pass http://backend_server;
    }
}

步骤4:重启Nginx服务
完成配置后,重新加载或重启Nginx服务,使配置生效

sudo nginx -s reload

🍕 反向代理

反向代理是一个位于客户端和原始服务器之间的服务器,它接收客户端的请求,并代表原始服务器向客户端返回响应

🍕 SQL注入

SQL 注入是一种利用应用程序对用户输入数据处理不当的安全漏洞,攻击者通过在输入字段中插入恶意的 SQL 代码,以达到篡改数据库查询、获取敏感数据甚至控制数据库的目的,从而造成信息泄露、数据损坏或系统瘫痪等严重后果。

例如:

假设有一个网站上的登录页面,用户需要输入用户名和密码进行身份验证。登录页面的后台代码可能会使用用户输入的用户名和密码来构建 SQL 查询语句,例如:

SELECT * FROM users WHERE username='输入的用户名' AND password='输入的密码'
如果网站没有对用户输入进行充分验证和处理,攻击者可以利用 SQL 注入漏洞来破坏原有的查询逻辑。比如,攻击者可能会在用户名输入框中输入以下内容:

' OR '1'='1
那么构建出来的 SQL 查询语句将变成:

SELECT * FROM users WHERE username='' OR '1'='1' AND password='输入的密码'
由于 ‘1’=‘1’ 始终为真,这个条件将绕过密码验证部分,使得查询返回第一个用户的数据,从而绕过了登录身份验证,进而实现非法登录或者获取敏感信息的目的。这就是一个简单的 SQL 注入示例。要防止这种攻击,应该对用户输入进行有效的过滤和参数化处理,以确保输入数据不会被误解为 SQL 代码的一部分。

🍕 面向对象编程OOP

1、封装(Encapsulation)

封装是将数据和操作数据的方法封装在一个单元中,对外部隐藏对象的具体实现细节,只暴露必要的接口供其他对象访问。这样可以提高代码的安全性和可维护性。

2、继承(Inheritance):
继承允许一个类(子类)基于另一个类(父类)的属性和方法来定义自己的新类。通过继承,子类可以复用父类的代码,减少重复编写代码的工作量,并构建出更加灵活和易扩展的类结构。

3、多态(Polymorphism):
多态性允许不同类的对象对同一个消息做出不同的响应。通过多态,可以提高代码的灵活性和可复用性,同时减少代码的耦合度。

4、抽象(Abstraction):
抽象是指忽略对象的具体实现细节,只关注对象的行为和特征。通过抽象,可以更好地理解问题领域的结构和关系,以及简化复杂系统的设计和实现过程。

5、类与对象:
类是面向对象编程的基本概念,它是对具有相同属性和行为的对象的抽象描述对象是类的实例,每个对象都具有独特的状态(属性)和行为(方法)。

🍕 adb命令

ADB(Adroid Debug Bridge)是Android 调试桥,是 Android 开发工具包(SDK)中的一个工具,用于与连接到计算机的 Android 设备进行通信和调试。

adb devices:列出当前连接到计算机的所有 Android 设备

adb shell:进入设备的命令行 shell 界面,可以在设备上执行各种命令

adb install <path_to_apk>:安装一个应用程序(APK 文件)到设备上

adb uninstall <package_name>:卸载指定包名的应用程序

adb pull <remote> <local>:从设备中复制文件到计算机

adb push <local> <remote>:将计算机上的文件推送到设备中

adb logcat:查看设备的日志信息,可以用于调试应用程序

adb logcat -c 清楚手机日志

adb shell am start -n <package_name/activity_name>:启动指定包名和活动名称的应用程序

adb shell pm list packages:列出设备上安装的所有应用程序包名

adb reboot:重启设备

🍕 使用celery异步邮件

使用 Celery 异步发送邮件的原理是利用 Celery 提供的任务队列机制,将邮件发送任务放入队列中,由 Celery 后台进程异步执行这些任务

具体步骤是:首先配置 Celery 应用,定义一个异步发送邮件的 Celery 任务,然后在需要发送邮件的地方调用该任务,并通过 delay 方法将任务推送到 Celery 的消息队列中,Celery 后台进程会从队列中取出任务并执行发送邮件的操作,完成邮件发送过程。这样可以避免邮件发送过程对主线程造成阻塞,提高系统性能和响应速度。

🍕 FastDFS

FastDFS 是一个开源的分布式文件系统,用于实现文件存储、上传和管理。

要使用 FastDFS 完成文件上传与管理,首先需要搭建 FastDFS 的服务端和客户端环境。然后客户端通过上传文件到 FastDFS 服务器,服务器接收文件后会返回一个文件标识符(File ID),用于后续文件访问和管理。通过这个 File ID,可以实现文件的下载、删除、更新等操作。

FastDFS 的原理是将文件分块存储在多台存储服务器上,通过 Tracker 服务器进行文件管理和负载均衡,实现高可用性和扩展性。客户端通过 Tracker 服务器获取存储服务器地址信息,然后直接与存储服务器通信进行文件上传和下载操作,从而实现高效的文件存储和管理。

🍕 Django框架

Django 是一个基于 Python 的开源 Web 应用框架,它遵循 MVC(模型-视图-控制器)的设计模式,实际上在 Django 中使用的是 MTV 模式(模型-模板-视图)。

原理是基于约定优于配置的理念,提供了一整套预定义的组件和工作流程,包括强大的 ORM(对象关系映射)、自带的管理界面、认证系统等,使开发者能够快速构建复杂的 Web 应用。

Django 的核心思想是提供开发效率和可维护性,通过明确的规范和约定,简化开发过程,并提供了丰富的功能和插件,使得开发者可以专注于业务逻辑的实现,而无需过多关注底层技术细节。

🍕 Flask框架

Flask 是一个轻量级的 Python Web 应用框架,基于 Werkzeug WSGI 工具和 Jinja2 模板引擎,其设计理念是简洁、灵活,核心功能较少但易于扩展。

Flask 并没有严格的约定和规范,开发者可以根据需要选择合适的插件和库来构建个性化的 Web 应用,适合快速原型开发和小型项目。通过装饰器和扩展机制,Flask 提供了灵活性和自由度,使开发者能够快速上手,并根据项目需求进行定制化开发。

  • 27
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
同一ip(都是80端口)可以绑定无数个域名 配置简单 里面包含一个配置文档:配置文档.doc 看一遍 大部分人都会设置了。 内容如下: NGNIX配置文档 1.解压文件到相应文件夹下(我解压到D:/下) (这里是图片) 目录结构如上 2.在D:\nginx\目录下用记事本新建一个文本文档改名为 proxy.conf。 proxy.conf里面的内容格式如下: server { listen 80; server_name www.*****.com; location / { proxy_pass http://192.168.45.1:8045; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } (完整拷贝上面的内容server_name www.*****.com; 这里面的域名即是来访域名 proxy_pass http://192.168.45.1:8045; 这里面的域名(http://192.168.45.1:8045)即是内部跳转的地址,将该内容拷贝多份实现不同来访域名的跳转) 如下: 3.找到D:\nginx\conf下nginx.conf文件用记事本打开 在文段末尾大括号前加上 include proxy.conf;(就是加载刚刚新建的那个文件(注意路径)) 4.进入cmd 进入D盘: d: 进到nginx文件夹下:cd nginx 启动nginx.exe:start nginx Cmd窗口会闪一下 进程里面会多了个 浏览器里面输入:http://127.0.0.1 将出现: Nginx的欢迎界面。 注: nginx -s stop // 停止nginx nginx -s reload // 重新加载配置文件 nginx -s quit // 退出nginx nginx-1.3.9.zip(这个版本) (1分钟搞定只是夸张说法啦,给你增加信心的啦,真正的操作起来,因人而异,没搞定的耐心再试试,自己xp系统亲测成功,不喜欢的无拍砖哦,实在搞不定的加我qq852208555 一起研究下 谢谢!)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Taverry

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值