2 zhangsheng 1992 zhangsheng_1992 于 2015.07.14 14:26 提问

mysql存储过程问与app问题

最近做一款app的时候用到存储过程 突然有了些想法 请大神答疑
传统的app结构
1app请求web服务器
2web服务器调用脚本语言操作数据库
3数据库返回结果给web服务器
4web服务器将结果返回给app

那么是否app可以直接请求db呢?
假设db在公网 app网段可以请求到
db中以过程的形式执行 那么就成了
1app请求数据库
2数据库返回数据给app
就相当于省去了web服务器环节

假设db可以承受的并发 IO cache cpu 足够大 不考虑后期维护更新 那么这种架构是否可行?缺点在哪?

1个回答

oyljerry
oyljerry   Ds   Rxr 2015.07.14 14:31
已采纳

db在公网,app如果支持数据库对应的引擎,当然可以直接请求到
但是为什么没有这么做,有几个原因

  1. 数据库直接开放,有很大风险,容易被攻击,数据泄漏
  2. app直接访问,app需要知道太多的数据库逻辑等,数据库发生变化,app也需要跟着改变,而作为web api方式,API可以不需要改变,APP也不用跟着变动,只需要服务器后台修改一下逻辑实现就可以了,这样可以保持稳定性。
Csdn user default icon
上传中...
上传图片
插入图片