zhangsheng_1992 2015-07-14 06:26 采纳率: 100%
浏览 1315
已采纳

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 2015-07-14 06:31
    关注

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

    1. 数据库直接开放,有很大风险,容易被攻击,数据泄漏
    2. app直接访问,app需要知道太多的数据库逻辑等,数据库发生变化,app也需要跟着改变,而作为web api方式,API可以不需要改变,APP也不用跟着变动,只需要服务器后台修改一下逻辑实现就可以了,这样可以保持稳定性。
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 给我一个openharmony跑通webrtc实现视频会议的简单demo项目,sdk为12
  • ¥15 vb6.0使用jmail接收smtp邮件并另存附件到D盘
  • ¥30 vb net 使用 sendMessage 如何输入鼠标坐标
  • ¥15 关于freesurfer使用freeview可视化的问题
  • ¥100 谁能在荣耀自带系统MagicOS版本下,隐藏手机桌面图标?
  • ¥15 求SC-LIWC词典!
  • ¥20 有关esp8266连接阿里云
  • ¥15 C# 调用Bartender打印机打印
  • ¥15 我这个代码哪里有问题 acm 平台上显示错误 90%,我自己运行好像没什么问题
  • ¥50 C#编程中使用printDocument类实现文字排版打印问题