前端为什么不能直接连数据库

其实也不是不可以,只是这样做有很多不好的地方,但是如果是一个只有几个人用的内网小系统,是没有问题的。主要基于以下原因考虑

  1. 安全性问题:前端信息都是公开的,从前端访问数据库,就需要将数据库的地址,密码写在前端的代码中,这样就相当于公开了数据库的访问;用户就可以随意访问数据库,操作数据库,这是很严重的问题,比如随便修改账户金额,删除数据,盗取其他用户敏感信息等;虽然可以通过混淆等手段进行一定的防范,但经验老道的程序员是可以破解的。
  2. 性能问题:限流,动态扩容,异步队列,熔断,兜底,缓存等服务端的一些高可用服务都没有用武之地了。
  3. 可维护性问题:使用前后端分离的架构,将用户界面和业务逻辑分开,可以提高代码的可维护性。前端负责展示数据,后端负责处理业务逻辑和数据库交互。
相关推荐
Elastic 中国社区官方博客2 小时前
Elasticsearch:使用 Agent Builder 的 A2A 实现 - 开发者的圣诞颂歌
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
2301_816660212 小时前
PHP怎么处理Eloquent Attribute Inference属性推断_Laravel从数据自动推导类型【操作】
jvm·数据库·python
懂懂tty2 小时前
CRA 迁移 Rspack(实战)
前端·架构
qq_372154233 小时前
Go 中自定义类型与基础类型的显式转换规则详解
jvm·数据库·python
小码哥_常3 小时前
Kotlin 助力 Android 启动“大提速”
前端
GreenTea3 小时前
AI 时代,工程师的不可替代性在哪里
前端·人工智能·后端
_下雨天.3 小时前
NoSQL之Redis配置与优化
数据库·redis·nosql
LiAo_1996_Y3 小时前
CSS如何实现文字渐变效果_通过background-clip实现艺术字
jvm·数据库·python
Jagger_3 小时前
能不能别再弄低代码害人了
前端
2401_887724503 小时前
CSS如何让表单在手机端友好展示_利用Flexbox实现堆叠排版
jvm·数据库·python