开发一个 B/S 项目,若要弄成前后端分离分离的话,前端用什么支撑?

2021-07-10 19:57:49 +08:00
 tctc4869

一个人开发一个 B/S 项目,若前后端分离分离的话,前端用什么支撑?

简单一点静态资源服务器:apache 、aginx ?( aginx 的语法感觉有点难以理解)

动态复杂一点:node.js 、C#+Blazor ?

js 和 c#我接触过(用 js 写浏览器程序,用 C#的 wpf 前端写 c/s 程序),但没有做过它们的作为服务端应用的开发,如果选这两个,那么选谁好呢

你们前端服务器用什么?

2682 次点击
所在节点    程序员
16 条回复
zwy100e72
2021-07-10 20:09:27 +08:00
(以下是个人一点外行角度的看法)

前后端分离,我理解为客户端渲染,服务端只提供静态页面 + API 。这种情况下静态页面用什么都可以,API 部分当然要用支持动态返回的服务器。

请求量较小时静态页面可以直接用 API 服务器提供,量较大时推荐用 Nginx 等静态服务器返回本地文件;请求量更大的情况下静态文件通常都缓存在 CDN 上。
tctc4869
2021-07-10 20:18:05 +08:00
@zwy100e72 动态页面呢?
zwy100e72
2021-07-10 20:49:15 +08:00
@tctc4869 动态页面我理解是 服务端直接生成最终网页;页面之间的跳转通过网页跳转实现。

这种情况下 js & css 这类文件最好还是放在 Nginx 或者 CDN 上。页面服务器 通常用模板引擎+直接填充内容的方式搭建。

仔细看了下你的问题,我认为你可以考虑 ASP.NET core 作为服务端,加上 Vue / React / jQuery 等做客户端框架。(据个人浅薄的知识)服务端用 Node.js 可能需要和浏览器 js 不一样的玩法

也有服务器渲染 + 客户端渲染的玩法,这种情况下服务端负责首次加载时的渲染,后续内容交给客户端完成、服务端仅提供 API
iamppz
2021-07-10 20:54:34 +08:00
nginx 够了,ssr 的话上 nodejs
walpurgis
2021-07-10 21:01:35 +08:00
前后端分离不就是 C/S 吗
zwy100e72
2021-07-10 21:09:17 +08:00
ssr (server side render): (个人理解)狭义的 SSR 指可以做客户端渲染的 js 框架部署在服务端做预渲染;广义上也可以指传统的服务端模板引擎+填充数据形式生成最终页面
tctc4869
2021-07-10 21:47:09 +08:00
@walpurgis 有人将其涉及到 B/S 端去了,
shintendo
2021-07-10 22:32:50 +08:00
我怎么没看懂你的问题呢,前后端分离不是分开部署啊
JerryCha
2021-07-10 23:31:27 +08:00
nginx container 集群化部署
chendy
2021-07-10 23:34:18 +08:00
没有比较高的要求,又没有经费 /必要上 cdn 的话
就简简单单 nginx 就可以了,配置也没多复杂
tctc4869
2021-07-11 08:32:47 +08:00
@chendy
@JerryCha
ssr 的 blazor server 怎么样?
raaaaaar
2021-07-11 11:21:02 +08:00
agnix 是什么
sudoy
2021-07-11 14:52:06 +08:00
Nginx 就可以了呀,不想自己搞就直接用 serverless 也行。个人和开源项目的话还可以考虑 GitHub page 之类免费 serverlsss 。如果是单页面网页程序,可以考虑 vue 、react 之类的 js 库
no1xsyzy
2021-07-11 16:54:13 +08:00
准确地说,搞前后端分离了以后也不是 B/S,而是另一种 C/S,只不过这个 C 利用了 Web 技术,所以应该叫 WC/S
xuanbg
2021-07-11 23:14:40 +08:00
BS:搞网站,没有端的概念。
CS:做应用,C 就是客户端的意思,无论用什么技术做的客户端,都是客户端。并不是说客户端运行在浏览器里面就不是客户端了。
sudoy
2021-07-13 10:12:49 +08:00
我么一般直接叫网页程序或者桌面程序, 网页程序又分为服务端渲染和客户端渲染(前后端分离)。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/788754

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX