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

网站建设功能表如何做网站优化

网站建设功能表,如何做网站优化,政府高度重视门户网站建设的理由,网站建设-英九网络代码与环境配置解耦 git分支的代码应做到“环境无关”:代码本身不硬编码任何环境特定的配置(如数据库连接、密钥、API地址),而是通过外部机制动态注入。 配置与代码分离:将配置信息存储在代码库之外(如环…

代码与环境配置解耦

git分支的代码应做到“环境无关”:代码本身不硬编码任何环境特定的配置(如数据库连接、密钥、API地址),而是通过外部机制动态注入。

配置与代码分离:将配置信息存储在代码库之外(如环境变量、独立配置文件、密钥管理服务),避免提交到 Git 仓库。

环境变量/配置文件 随便用,对内存的影响完全可以忽略不记
案例:典型 Web 应用的配置
  • 环境变量:约 10 个变量(如数据库 URL、API 密钥、调试模式),总大小约 1KB
  • 配置文件:一个 500 行的 JSON 文件(约 5KB),解析后内存占用约 10-20KB
  • 总内存影响:不到 50KB,远低于一个简单 Python 对象(如空列表占用 40KB)。

对于YAML和TOML的选择来说,我更倾向于TOML,主要是TOML对缩进及空格数量不敏感,YAML的缩进和横杠-真烦啊!

各种配置文件的优缺点对比

配置格式语法复杂度结构化数据支持注释支持数据类型支持适用场景解析库
.ini差(仅支持键值对)否(所有值为字符串)小型应用configparser
settings.py强(Python 代码)Django/Python 项目Python 直接解析
.env差(仅键值对)否(所有值为字符串)12 Factor Apppython-dotenv
json强(嵌套支持)Web 开发、APIjson
yaml强(嵌套支持)DevOps、KubernetesPyYAML
toml强(嵌套支持)Python/Rust 配置toml

选择合适的配置文件

  • Web 开发/Djangosettings.py
  • 存储环境变量/API 密钥.env
  • 前后端通用配置、API 交互json
  • DevOps/Kubernetesyaml
  • Python、Rust 工程配置toml
  • 小型桌面应用、简单配置.ini

在 Web 应用中,使用数据库存储用户配置(如用户偏好、通知设置、API 密钥等)是一种常见的方法。与 .env、配置文件或环境变量相比,数据库存储具有更强的可管理性,但也存在一定的性能和安全性问题。下面是数据库存储用户配置的优缺点分析实现方式

Python 代码(Django ORM)

from django.db import modelsclass UserSettings(models.Model):user = models.OneToOneField("auth.User", on_delete=models.CASCADE)theme = models.CharField(max_length=50, default="light")notifications = models.BooleanField(default=True)language = models.CharField(max_length=10, default="en")updated_at = models.DateTimeField(auto_now=True)

查询用户配置

settings = UserSettings.objects.get(user=request.user)
print(settings.theme)  # "light"

应用程序修改自身配置并保留注释

通常情况下,配置文件(如 .ini, .env, .yaml, .toml, .json)主要用于存储应用的静态配置,而应用程序一般只读取配置。但在某些特定场景下,应用程序允许修改自身的配置文件。

配置格式只读解析库解决方案(修改保存)
.iniconfigparser使用 ConfigObj
.envdotenv_values手动读取/合并
.yamlPyYAML使用 ruamel.yaml
.tomltoml使用 tomlkit
.jsonjson使用 commentjson
from configobj import ConfigObjconfig = ConfigObj("config.ini", encoding="utf-8")# 修改配置
config["settings"]["theme"] = "dark"# 保存时会保留注释
config.write()

from tomlkit import parsewith open("config.toml", "r") as f:toml_data = parse(f.read())# 修改配置
toml_data["app"]["debug"] = False# 保存 (保留注释)
with open("config.toml", "w") as f:f.write(toml_data.as_string())

http://www.hrbkazy.com/news/17943.html

相关文章:

  • 上海黄浦网站建设新产品如何快速推广市场
  • 网站自适应开发上海百度搜索优化
  • 网页制作收入汕尾网站seo
  • 专业做营销网站建设搜索引擎优化工具
  • 做网站是不是要模板下载安装百度一下
  • 关于建设网站的图片公司网站设计报价
  • 网站的积分系统怎么做拉新推广怎么快速拉人
  • php 新闻网站开发东莞seo网站优化排名
  • wordpress国外插件速度慢seo首页网站
  • 网站别人做的我自己怎么续费淄博网站seo
  • 哪家做网站好 成都哈尔滨企业网站模板建站
  • 网站开发设计报告书怎么写点击seo软件
  • 中小企业网络拓扑图seo标题优化导师咨询
  • 网站建设框架都有哪些内容seo优化公司排名
  • wordpress nginx 伪静态规则seo公司厦门
  • 小红书的网站建设网站搜索排优化怎么做
  • 广东网站建设公司报价表网站需要怎么优化比较好
  • 宿州建设企业网站公司营销渠道策划方案
  • wordpress评论qq头像seo排名优化课程
  • 2017年做网站多少钱建立网站要多少钱一年
  • 朝阳公司做网站网络市场的四大特点
  • 做国内网站多少钱友情链接有哪些作用
  • 推荐个网站好吗关键词推广工具
  • 全屋定制怎么样做网站友情链接获取的途径有哪些
  • 做网站已经不行企业网站营销的优缺点
  • 网站制作软件都是什么亚马逊关键词排名查询工具
  • 东莞网站开发推荐做手机关键词快速排名软件
  • 好医生网站怎么做不了题目了百度站长管理平台
  • 樟木头镇网站仿做手机百度高级搜索入口
  • 天津建设工程信息网怎么报名的淘宝seo优化是什么