不支持故障恢复
  不知你是否在调试的过程中注意,当程序有错误发生时,整个进程就会结束,需要重
  新在终端中启动服务器。这一点在开发中无可厚非,但在产品环境下就是严重的问题
  了,因为一旦用户访问时触发了程序中某个隐含的bug ,整个服务器就崩溃了,将无
  法继续为所有用户提供服务。在部署Node.js 应用的时候一定要考虑到故障恢复,提
  高系统的可靠性。
  没有日志
  对于开发者来说,日志,尤其是错误日志是及其重要的,经常查看它可以发现测试时
  没有注意到的程序错误。然而这个服务器运行时没有产生任何日志,包括访问日志和
  错误日志,所以有必要实现它的日志功能。
  无法利用多核提高性能
  由于Node.js是单线程的,一个进程只能利用一个CPU   核心。当请求大量到来时,单
  线程就成为了提高吞吐量的瓶颈。随着多核乃至众核时代的到来,只能利用一个核心
  所带来的浪费是十分严重的,我们需要使用多进程来提高系统的性能。
  独占端口
  假如整个服务器只有一个网站,或者可以给每个网站分配一个独立的IP 地址,不会有
  端口冲突的问题。而很多时候为了充分利用服务器的资源,我们会在同一个服务器上
  建立多个网站,而且这些网站可能有的是PHP ,有的是 Rails,有的是 Node.js。不能每
  个进程都独占80端口,所以我们有必要通过反向代理来实现基于域名的端口共享。
  需要手动启动
  先前每次启动服务器都是通过在命令行中直接键入命令来实现的,但在产品环境中,
  特别是在服务器重启以后,全部靠手动启动是不现实的。因此,我们应该制作一个自
  动启动服务器的脚本,并且通过该脚本可以实现停止服务器等功能。

开心学习系列学习笔记-----nodejs缺点的更多相关文章

  1. 开心菜鸟学习系列学习笔记------------nodejs util公共函数

    global  在最外层定义的变量:    全局对象的属性:    隐式定义的变量(未定义直接赋值的变量).  一.process   process 是一个全局变量,即 global 对象的属性 ...

  2. 开心菜鸟系列学习笔记--------初探Nodejs(了解篇)

    一Node.js开始学习了!    1) 输出hellow worlds   a.建一个js文件 hello.js 写 console.info('hellow world !!!');    进入终 ...

  3. 开心菜鸟系列学习笔记------javascript(5)

    一.this的关系    1)全局代码中的this    2)函数代码中的this在函数代码中使用this时很有趣,这种情况很难且会导致很多问题. 这种类型的代码中,this值的首要特点(或许是最主要 ...

  4. 开心菜鸟系列学习笔记-------javascript(3)

    一.原型链:     1)Object 是一个属性的集合,并且都拥有一个单独的原型对象.,这个原型对象object可以是一个object或者null值 2)不过一般来说,我们会使用__内部属性名__下 ...

  5. 开心菜鸟系列学习笔记------------javascript(6)

    一.作用域链            1)函数的生命周期:            函数的生命周期分为创建和激活阶段(调用时),让我们详细研究它.            作用域链与一个执行上下文相关,变量 ...

  6. 开心菜鸟系列学习笔记------javascript(4)

    一.全局上下文中的变量对象:        1)全局对象(Global object) 是在进入任何执行上下文之前就已经创建了的对象:这个对象只存在一份,它的属性在程序中任何地方都可以访问,全局对象的 ...

  7. MVA Universal Windows Apps系列学习笔记1

    昨天晚上看了微软的Build 2015大会第一天第一场演讲,时间还挺长,足足3个小时,不过也挺震撼的.里面提到了windows 10.Microsoft edge浏览器.Azure云平台.Office ...

  8. 《Machine Learning》系列学习笔记之第一周

    <Machine Learning>系列学习笔记 第一周 第一部分 Introduction The definition of machine learning (1)older, in ...

  9. (转)深度学习word2vec笔记之基础篇

    深度学习word2vec笔记之基础篇 声明: 1)该博文是多位博主以及多位文档资料的主人所无私奉献的论文资料整理的.具体引用的资料请看参考文献.具体的版本声明也参考原文献 2)本文仅供学术交流,非商用 ...

随机推荐

  1. java 发送 http 请求

    public class VoteHandler implements IVoteHandler { private static final Logger LOGGER = LoggerFactor ...

  2. PYTHON线程知识再研习C---线程互斥锁

    结合例子,就很好理解了. 就是不要让共享变量被各个线程无序执行,导致结果不可预期 threading模块中定义了Lock类,可以方便的处理锁定: #创建锁mutex = threading.Lock( ...

  3. POJ 1225 Substrings

    http://poj.org/problem?id=1226 题意:给定n个串.求一个最长的串,使得这个串或者其反串在每个串中都出现过? 思路:先在大串里面加入正反串,然后二分,判定即可. #incl ...

  4. Qt中文乱码问题(比较清楚,同一个二进制串被解释成不同的语言)

    文章来源:http://blog.csdn.net/brave_heart_lxl/article/details/7186631 以下是dbzhang关于qt中文乱码问题原因的阐述,觉得不错: 首先 ...

  5. POST多个参数到Web API控制器

    交互基于Json的方式打包传递就不介绍了,主要设置请求头为 contentType: "application/json", //必须有 数据位Json格式的字符串,在服务器端定义 ...

  6. 文本编辑BOM标记(Byte Order Mark)

    微软的自带记事本程序notepad.exe会给UTF-8编码的文件头加入三个隐藏的字节(即BOM).这是一种很愚蠢的做法.就是为了让编辑器不去猜测文件本身是ASCII码还是UTF-8. 什么是BOM ...

  7. Fence Repair (POJ 3253)

    农夫约翰为了修理栅栏,要将一块很长的木板切割成N块.准备切成的木板长度为L1.L2.L3...LN,未切割前的木板长度恰好为切割后木板长度的总和.每次切断木板时,需要的开销为这块木板的长度.例如长度为 ...

  8. 【hihoCoder第十四周】无间道之并查集

    就是基础的并查集.0代表合并操作,1代表查询操作.一开始以为会卡路径压缩,忐忑的交了一版裸并查集,结果AC了.数据还是很水的. 以后坚持做hiho,当额外的练习啦~ #include <bits ...

  9. Linux文件io--one简述

    什么是文件IO IO就是input/output,输入/输出.文件IO的意思就是读写文件. 文件操作的主要接口API 什么是操作系统API (1)API是一些函数,这些函数是由linux系统提供支持的 ...

  10. (转载)XML Tutorial for iOS: How To Read and Write XML Documents with GDataXML

    In my recent post on How To Choose the Best XML Parser for Your iPhone Project, Saliom from the comm ...