系统架构图 java node_前端的全栈模式是什么架构,node.js做中间端,JAVA,或者其他语言做后端怎么理解呢?...
先上后端架构图:
整套系统的后端部分,我们使用了 nest.js ,nest.js 是一个 类spring 的node.js 框架。纯 typescript ,十分适合大型项目的开发,又兼顾了 node.js 的开发效率,在 java node 之间找到一个新的平衡点。
而且,
重要的是,如果你会Angular ,那么nest.js 你也差不多会了。 这俩虽然一个后端框架一个前端框架,但装饰器名字甚至有很多相同的地方。
API接口: apollo-graphql 用作API 接口。
内部通信: Grpc 用作服务和API层通信。
数据库ORM: typeorm 用来操作数据库。
这里数据库推荐使用 postgresql ,当然也兼容mysql 。
对于有复杂业务的服务,可以用 spring 写,Grpc 接口保持一致即可。
对于有性能要求的cpu 密集型业务,可以用 C++ 或者 Rust ,替换对应的服务,同样Grpc通信。https://github.com/notadd/notaddgithub.com
API 网关层可以 使用 kong ,或者腾讯/阿里的负载均衡服务。
K8S 管理可以自己上,也可以用云,当然不上 K8S 也能单机部署。
再说说前端架构, angular 对 apollo-graphql 接口支持非常好,基本上后端把 gra 文件扔过来,service 引入就行,省去了很多麻烦。https://github.com/notadd/ng-notaddgithub.com
对于一些需要快速开发的,以及手机端的,或者需要SSR 的建议 vue + nuxt 。Vue.js Material Component Framework — Vuetify.jsvuetifyjs.com
最后,所有前端资源都可以部署在 云存储(CDN) 以加速访问。
标签:
相关文章
-
无相关信息