Comments (11)
- Why do we separate servers' code into two programming languages?
a: I think using NestJS is to extend the modular design concept to the front-end architecture. NestJS focuses on the implementation of front-end display modularity and makes reasonable use of the computing power of the client. Spring boot is to standardize the back-end architecture, facilitating the compatibility of application services and the continuation of development specifications.
from apitable.
- I feel that nestJS is used for front-end template rendering, putting some page rendering on the server side, and the middle layer, which processes data directly. springBoot is for data calculation, CURD and the like.
MVC to MVVC ? - I have the impression that Taobao has also designed it like this.
- In springBoot, the convention is greater than the configuration, and there is no such thing in nestJS. In addition, I feel that nestJS is more like a small springBoot.
from apitable.
- I think the reason for splitting into two back-end services is to separate different businesses. The NestJS for backend server does some relatively simple businesses and some IO processing. And The spring boot server does some relatively complex and data computing businesses.
- No,I haven't seen a similar architecture yet.
- NestJS is more inclined to Web application services, lighter, faster, better at handling I/O tasks, and has low memory usage;And the Spring Boot has a large number of mature components, supports multi-threading, is easier to maintain, and can support larger and more complex projects.
from apitable.
I check backend-server code, room-server code and datasheet code. datasheet-server axios default base url is /api/v1.
If request is xhr backend-server will handle.
If request is ws, socket-server->room-server will handle.
I think this design is because node server can handle many more connection.Because node is asyn, but spring container is sync.
So when server have many more connection,jvm need more memory.
from apitable.
-
Have you ever seen a similar architect in another case?
My previous team used Java, C#, PHP as backend server,we choose it for
different business,such as Game-server with Java and Game-map-editor with C#.
different languages good at different domain,your team member is also like this. -
Why do we separate servers' code into two programming languages?
I am not familiar with NextJS and your business,from my experience, the answer to the above question can be used as my guess.
from apitable.
2)Have you ever seen a similar architect in another case?
A: The project I participated in before did not use two sets of frameworks in different languages to implement the same or similar services on the back-end services, but there will be services with different functions providing interfaces on the microservice architecture, which will use different development languages. So I also think that the same functions or similar back-end services should not be developed in different languages, so as to reduce the cost of development and maintenance.
from apitable.
3)What are the philosophical differences between the NestJS framework and Spring Boot?
A: From the perspective of design purpose, I think NestJS is to modularize some common functions into back-end components, and Spring boot is the running base of these common functions. Other issues are all about different development languages, so that front-end developers can also do back-end design? Maybe we should consider the cost performance of the system!
from apitable.
1、The two services have different functions.I guess.use nestJS you want the backend servers are developed by Front-End Engineer quickly
2、I've never seen a similar architect in another case before
3、NestJs can be regarded as the springboot framework for the node.js version,NestJs more lightweight,fast.springboot has lots of plugins,can combine Spring Boot with Spring Cloud’s rich set of supporting libraries, servers, patterns, and templates.
from apitable.
For sharing of OT-related code between client and server ?
from apitable.
In my option, decoupling it's important for developing software.
- Front-back-separation is convenient for localtion the issue and quickly release the version
- My previous experience used Java as backend server, vue as fronted server
- I haven't used NextJS yet. SpringBoot solgen is convention over configuration, The advantages outweigh the disadvantages if we obey the standard rules
from apitable.
I think the main reason is to share the OT (Operational Transformation) code, for example, the multi-user collaboration OT in cloud documents tends to be implemented using JavaScript. It's mainly an issue of ecosystem preference.
When I wanted to refer to the OT implementation of APITable, I looked at the Java code, and unfortunately, I found that there was no part related to OT.
from apitable.
Related Issues (20)
- docs: A brief description of the documentation
- 非 Docker 私有化部署的话,datasheet 如何部署上线?
- Automation robot endpoint
- fix: The tooltip on the expand/collapse button in the workbench menu sidebar flickers when expanding or collapsing. HOT 1
- make dataenv后报错
- feat: The front-end code runs very sluggishly in the development environment, and we hope to optimize it.
- feat: Support for uploading articles and papers, summarizing them into tables, and importing them into the workspace with Copilot.
- question: The popup for inserting rows is slow
- question: 一个结合AI的场景式低代码平台
- Suggestion: This code repository is too large
- question: A brief description of your question
- Port 3306 connection issue HOT 1
- feat: 自动化操作不够方便
- feat: store data to my table base on webhook ?
- docs: not found automation guide
- question: 关于小程序展示表格的技术方案咨询 HOT 1
- fix: 添加描述中的输入框中,通过 @ 符号选择人的时候,打开的人员选择框会闪一下
- question: Ambiguity in the state of automation operation history
- question: Alternative tool for minio
- feat: Implement View Switching in Time Machine Preview Mode
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from apitable.