加入收藏 | 设为首页 | 会员中心 | 我要投稿 辽源站长网 (https://www.0437zz.com/)- 云专线、云连接、智能数据、边缘计算、数据安全!
当前位置: 首页 > 运营中心 > 建站资源 > 优化 > 正文

透过现象看本质: 常见的前端架构风格和案例

发布时间:2019-10-15 17:35:22 所属栏目:优化 来源:_sx_
导读:所谓软件架构风格,是指描述某个特定应用领域中系统组织方式的惯用模式。架构风格定义一个词汇表和一组约束,词汇表中包含一些组件及连接器,约束则指出系统如何将构建和连接器组合起来。软件架构风格反映了领域中众多系统所共有的结构和语义特性,并指导

这种风格在后端用得比较多,举前端比较熟悉的例子,NodeJS. NodeJS是单线程的,为了利用多核资源,NodeJS标准库提供了一个cluster模块,它可以根据CPU数创建多个Worker进程,这些Worker进程可以共享一个服务器端口,对外提供同质的服务, Master进程会根据一定的策略将资源分配给Worker:

  1. const cluster = require('cluster'); 
  2. const http = require('http'); 
  3. const numCPUs = require('os').cpus().length; 
  4. if (cluster.isMaster) { 
  5.  console.log(`Master ${process.pid} is running`); 
  6.  // Fork workers.for (let i = 0; i < numCPUs; i++) { 
  7.  cluster.fork(); 
  8.  } 
  9.  cluster.on('exit', (worker, code, signal) => { 
  10.  console.log(`worker ${worker.process.pid} died`); 
  11.  }); 
  12. } else { 
  13.  // Workers可以共享任意的TCP连接 // 比如共享HTTP服务器  
  14.  http.createServer((req, res) => { 
  15.  res.writeHead(200); 
  16.  res.end('hello world 
  17. '); 
  18.  }).listen(8000); 
  19.  console.log(`Worker ${process.pid} started`); 
  20. 复制代码 

利用多核能力可以提升应用的性能和可靠性。我们也可以利用PM2这样的进程管理工具,来简化Node集群的管理,它支持很多有用的特性,例如集群节点重启、日志归集、性能监视等。

(编辑:辽源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读