编辑
2024-04-19
TechNotes
00

mvcp 命令在文件管理中的性能比较

在 Linux 操作系统中,mv(move)和 cp(copy)是两个常用的命令,用于移动和复制文件或目录。虽然它们的功能类似,但在性能和效率上有显著的差异。

mv 命令的工作原理

mv 命令用于移动文件或目录。实际操作中,mv 并不直接移动文件的内容,而是将文件从一个路径“重命名”到另一个路径。具体来说:

  1. 同一文件系统:当源文件和目标位置位于同一文件系统上时,mv 只需更新文件系统的元数据,如目录项。这种操作几乎是瞬时完成的,因为它不涉及数据复制。
  2. 不同文件系统:如果源文件和目标位置位于不同的文件系统上,mv 会先复制文件到目标路径,然后删除源文件。这种情况下,mv 的性能接近于 cp,因为它需要执行数据复制和删除操作。
编辑
2024-04-15
Python
00

1. Django 中的 Form 功能

Django 中的 Form 有两大核心功能:

  • 输入 HTML:通过 Form 类的定义,可以生成相应的 HTML 表单元素,供用户输入数据。
  • 验证用户输入:对用户提交的表单数据进行验证,确保符合规则。
选择 Form 还是 ModelForm 取决于你的具体需求:
  • 如果你的表单与数据库模型紧密相关,且希望简化字段的创建和数据的保存,使用 ModelForm。
  • 如果你的表单与模型无关,或者你需要更高级的自定义,那么使用 Form 更合适。
编辑
2024-04-14
Python
00

Django 分页功能整理

分页是网站中常见的功能,用于将数据拆分成多页显示。以下是实现分页的详细步骤及示例代码。

分页流程

  1. 设定每页显示数据条数

    • 确定每页展示多少条数据,如每页显示5条。
  2. 用户输入页码

    • 用户通过分页按钮选择页码(如第一页、第二页等)。
  3. 计算起始位置

    • 根据设定的每页显示条数和当前页码,计算数据在数据库中的起始位置。
  4. 查询数据库

    • 根据起始位置查询对应页码的数据。
  5. 生成分页导航

    • 根据当前页和总页数,生成分页按钮,如 [上一页][1][2][3][4][5][下一页]
编辑
2024-04-12
Python
00

经常使用到的

安装第三方模块

pip install mysqlclient

自己创建数据库

  • 启动MySQL服务

  • 自带工具创建数据库

    create database database_name DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

django连接数据库

在settings.py文件中进行配置和修改。

python
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'database_name', # 数据库名字 'USER': 'root', 'PASSWORD': 'root123', 'HOST': '127.0.0.1', # 那台机器安装了MySQL 'PORT': 3306, } }
编辑
2024-04-12
DeployDiary
00

项目结构

image.png

微服务架构下部署的问题

  1. 由于服务 + 中间件的复杂度,导致部署复杂度也呈指数级上升
  2. 服务与服务之间的依赖关系
  3. 服务之间的网络共享问题
  4. 考虑有状态服务的数据持久化问题

问题一: 利用 docker-compose 的服务编排能力,来实现对多服务的批量化处理

问题二: 利用 docker-compose 的 depends_on 属性,来设置依赖服务,必须按依赖服务先启动,当前服务才能启动

问题三: 利用自定义网络,或者 links 属性来连接需要通信的服务

问题四: 使用数据持卷来进行持久化的数据管理