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

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

  1. 安全性问题:前端信息都是公开的,从前端访问数据库,就需要将数据库的地址,密码写在前端的代码中,这样就相当于公开了数据库的访问;用户就可以随意访问数据库,操作数据库,这是很严重的问题,比如随便修改账户金额,删除数据,盗取其他用户敏感信息等;虽然可以通过混淆等手段进行一定的防范,但经验老道的程序员是可以破解的。
  2. 性能问题:限流,动态扩容,异步队列,熔断,兜底,缓存等服务端的一些高可用服务都没有用武之地了。
  3. 可维护性问题:使用前后端分离的架构,将用户界面和业务逻辑分开,可以提高代码的可维护性。前端负责展示数据,后端负责处理业务逻辑和数据库交互。
相关推荐
liux35284 分钟前
MySQL集群架构:MySQL InnoDB Cluster (MIC)详解(十一)
数据库·mysql·架构
Jinuss14 分钟前
源码分析之React中ReactDOMRoot实现
前端·javascript·react.js
web守墓人23 分钟前
【前端】vue3的指令
前端
小北方城市网24 分钟前
MySQL 索引优化实战:从慢查询到高性能
数据库·spring boot·后端·mysql·rabbitmq·mybatis·java-rabbitmq
Chan1625 分钟前
《Java并发编程的艺术》| 并发关键字与 JMM 核心规则
java·开发语言·数据库·spring boot·java-ee·intellij-idea·juc
l1t30 分钟前
DeepSeek对AliSQL 集成 DuckDB 的总结
数据库·sql·mysql·duckdb
想起你的日子43 分钟前
ASP.NET Core EFCore之DB First
数据库·.netcore
SeaTunnel1 小时前
Apache SeaTunnel MySQL CDC 支持按时间启动吗?
大数据·数据库·mysql·开源·apache·seatunnel
韩立学长1 小时前
Springboot喵趣网上宠物店的设计和实现5pidz60b(程序、源码、数据库、调试部署方案及开发环境)系统界面展示及获取方式置于文档末尾,可供参考。
数据库·spring boot·后端
想起你的日子1 小时前
EFCore之Code First
前端·.netcore