客户端 MVC 与服务器 MVC

2024-01-04

我希望从其他用户那里获得一些关于服务器端 MVC 优势的意见。拥有许多 javascript 库的强大功能。服务器端 MVC 服务器还有什么用处呢?

您可以轻松地使用带有模板和 REST API 的客户端 MVC 来创建响应速度更快的应用程序,同时减少因细微更改而重新加载整个页面的开销。


在我看来,如果您将 V 视为封装在黑匣子中的客户端 MVC,那么服务器端 MVC 仍然具有相关性。问题是,这一切都与协作和可扩展性有关。服务器端 MVC 继续推动 REST API(例如),其理念是您在技术上将查看技术外包给在浏览器中运行的单独框架。

由于浏览器越来越被视为应用程序开发平台,您可以将大量数据从“后端平台”导出到客户端(浏览器),然后将数据视为浏览器中的本地“数据库”,从而实现快速响应时间。

结合这 2 个 MVC 框架可以:

  1. 服务器和客户端之间的流量稀疏,从而减少延迟
  2. 通过本地化对更相关的数据集的访问来提高网络应用程序的响应能力
  3. 将负载从单个服务器端控制器分配到数百个浏览器

这里的工作架构与 CDN 非常相似——内容分发网络!实际上,它是关于本地化数据,并使数据更接近处理中心。

话虽如此,如果您了解产品的架构需求,您可以继续独占使用其中一种。正确的工具适合正确的工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

客户端 MVC 与服务器 MVC 的相关文章

随机推荐

  • 将套接字句柄从 .NET 传递给非托管子进程

    我当前有一个 NET 程序启动与服务器的连接并启动另一个非托管可执行文件 本机进程应该接管相同的套接字 在子进程终止之前不要关闭连接至关重要 并开始通过它与服务器进行通信 上述程序都在 Windows 上运行 但我更喜欢不涉及 NET 部分
  • CollectionReference.doc() 要求其第一个参数为非空字符串类型

    我有一个离子应用程序试图更新 firebase 中的记录 我不断收到此错误 不确定我做错了什么 错误 未捕获 承诺中 FirebaseError code invalid argument Function CollectionRefere
  • Spring Data:注入的存储库为空

    不久前 我让 Spring Data 的存储库在 Controller 中工作 将数据访问移至 Service 后 它停止工作 对我来说一切看起来都很好 为什么这个 DI 失败了 这是我的弹簧配置
  • iOS:在视频中裁剪视频左侧和底部的奇怪绿线

    如何删除视频上的绿线 当裁剪视频 2 或 3 次时 视频中的左侧或底部或左侧和底部均显示绿色或混合绿红闪烁线 视频裁剪方法 void cropButton CGRect cropFrame self cropView croppedImag
  • 如何修复使用 pdfbox java 链接的可访问性标记注释失败/错误?

    使用 adobe 找到了解决方案 https answers acrobatusers com How I fix Tagged Annotations fail error accessibility links q228128 aspx
  • C# 4 和 CLR 兼容性

    C 版本 4 的所有新增内容 动态 代码契约等 是否预计将在当前的 NET CLR 上运行 或者是否也有计划的 NET 升级 C 4 将需要 NET 4 0 CLR
  • 为什么当我使用命令行进行屏幕录制时,屏幕录制会出现错误[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我正在尝试通过以下方式对我的 Android 设备进行屏幕录制this http developer android com about v
  • Rails:已完成 401 未经授权

    我收到此错误 但我不知道为什么 我特别排除了 CSRF 检查 这 webhook即使在生产中 该方法也有效 其他类似的问题是关于 Devise 的 但我没有在此控制器中使用 Devise stripes controller rb clas
  • 从 Node.js 将 Json 存储到 MySQL 数据库

    我知道这个问题已经被问过很多次了 但是经过激烈的搜索 我似乎找不到我正在寻找的答案 我有一个 js 格式的脚本 它创建一个 json 数据数组 然后将其存储在一个 json 文件中 阵列设置为 var sessionState curren
  • 如何将光标移动到文档末尾?

    我想将光标移动到脚本开头的文档末尾 我怎么做 我已经知道如何将光标移动到文档的开头 如下所述here https stackoverflow com questions 26945026 how can i move the cursor
  • 如何通过 https 启动 java servlet?

    我正在尝试在 eclipse 中的 tomcat 上运行 servlet 当我在服务器上运行时 servlet 会运行并为我提供如下链接 http localhost 8443 AuthServer 服务器 我已将 Tomcat 服务器配置
  • google app engine webapp 中 jinja2 自动转义的问题

    我决定安装 jinja2 与我的 webapp 应用程序一起使用 以支持自动转义功能 因此 我将 jinja2 安装到 python 2 5 中 并在项目中创建了一个符号链接来指向该目录 大部分情况下工作正常 除了 当我实际尝试使用 aut
  • 如何更改 Visual Studio 2012 Express 项目模板?

    例如 我不希望我的类和接口符合 StyleCop 在非 Express 版本中 我们可以在以下位置找到并更改类模板 C Program Files x86 Microsoft Visual Studio 11 0 Common7 IDE I
  • 更改 SFSafariViewController 的色调颜色?

    正如标题所说 如何更改 iOS 9 中新的 SFSafariViewController 的整体色调颜色 iOS 10 的一些消息 现在我们有两个属性来控制整体外观SFSafariViewController source link htt
  • Java Runtime.getRuntime().exec() 带引号

    我正在尝试通过 linux 上的 exec 调用运行 ffmpeg 但是我必须在命令中使用引号 ffmpeg 需要它 我一直在查看 processbuilder 和 exec 的 java 文档以及 stackoverflow 上的问题 但
  • 对服务与工厂感到困惑

    据我了解 当在工厂内部时 我返回一个被注入控制器的对象 当在服务内部时 我正在使用以下方法处理对象this并且不返回任何东西 我假设服务是始终是单身人士 并且一个新工厂对象被注入到每个控制器中 然而 事实证明 工厂对象也是单例对象吗 演示示
  • JSF MVC设计问题

    我有一个 JSF 支持 bean 设计问题 现在 我的支持 bean 保存 UI 显示信息和业务模式数据 人们建议模型和视图应该分开 那么创建不同的 bean 来保存 UI 显示数据并让支持 bean 引用它是个好主意吗 那么创建不同的 b
  • 我可以只选择 MYSQL 中的一列而不是全部,以使其更快吗?

    我想做这样的事情 query mysql query SELECT userid FROM users WHERE username username the user id 因为我想要的只是与用户名对应的用户ID 通常的方法是 query
  • 如何格式化 SQLCMD 输出

    我正在使用下面的命令行使用 SQLCMD 运行 SQL 查询 sqlcmd S Server Q select top 100 From people d people t 10 该表有 20 列 当我查看输出命令行窗口时 文本会换行并使其
  • 客户端 MVC 与服务器 MVC

    我希望从其他用户那里获得一些关于服务器端 MVC 优势的意见 拥有许多 javascript 库的强大功能 服务器端 MVC 服务器还有什么用处呢 您可以轻松地使用带有模板和 REST API 的客户端 MVC 来创建响应速度更快的应用程序