nodejs restful webapi
Go to file
2021-11-28 22:50:56 +08:00
.gitignore remove data 2021-07-25 17:11:17 +08:00
index.js 重构 2021-11-28 22:50:56 +08:00
LICENSE Initial commit 2021-07-25 03:41:47 +08:00
package.json 重构 2021-11-28 22:50:56 +08:00
README.md 重构 2021-11-28 22:50:56 +08:00
start.sh debug 2021-08-26 20:47:47 +08:00
yarn.lock 重构 2021-11-28 22:50:56 +08:00

shizukana

nodejs restful webapi

Install

# clone 到本地
git clone ...

# 切换到项目目录
cd shizukana

# 使用 yarn 或 npm 安装依赖包
yarn

# 使用 node 运行 index 文件
node index

# 也可以使用 pm2 作守护进程
pm2 start node --name shizukana -- index

特征

  1. 抽象化以扩大泛用性
  2. 无须配置依赖项的

程序结构

  1. 抽象细分原则模块化
  2. 免配置原则
  3. 分层原则
  4. 分布式原则
  5. 解耦扩容原则

接口层

对外接口允许多服务终端, 服务集群皆为公开阵列 允许即刻熔断

  1. 每地区一台或多台伺服器, 伺服器只是节点, 不属于中心
  2. 具体落盘数据格式与冗余如何与接口节点无关

则终端连接伺服器通过可用时期节点列表缓存 终端连接信任域列表, 使用证书校验节点有效性 终端从信任域获取列表, 并将列表缓存, 特定更新周期或事件对伺服器列表更新

/全功能伺服器 任意节点都是伺服器之一, 没有分级且发挥节点所有效能 节点给出可用节点列表,

节点之间如何通信实现可用列表和数据的同步?

  1. 主动从节点阵列获取
  2. 被动从节点阵列收取

事件模型中, 当伺服节点产生事件, 向有限域传递事件 但由于传递过程时间有滞后, 无法保障事件发生顺序准确性

因而, 有因果勾连的事物须在唯一时空与媒介发生 不同节点并不能属于同一时空, 且节点本以在不同时空降低滞后性效用而存在, 以及隔离

小团体伺服节点在不同伺服器之间无感转移(媒介)

  1. 媒介作为通讯会话, 可轻易建立与销毁
  2. 伺服器作为沟通节点提供连接,如 websocket
  3. 在节点与节点之间建立通信, 为媒介
  4. 多个节点可能同时通信
  5. 但效率不如此次会话所有终端连接同一伺服节点
  6. 且算力是定量, 无论节点多少

使用示例