Articles of node.js

dockerWebsocket缩放

什么是使用jetty websocket服务器打开的任何一个websocket的最大数量。 我最近试图加载testing一样,并能够在一个8核心的Linux虚拟机作为服务器和16个客户端,每个4核心打开20万并发连接。 每个客户端都能够创build12500个并发连接,他们开始得到套接字超时exception。 此外,我已经调整了打开文件的数量以及客户端和服务器的TCP连接设置,如下所示。 sudo sysctl -w net.core.rmem_max=16777216 sudo sysctl -w net.core.wmem_max=16777216 sudo sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216" sudo sysctl -w net.ipv4.tcp_wmem="4096 16384 16777216" sudo sysctl -w net.core.somaxconn=8192 sudo sysctl -w net.core.netdev_max_backlog=16384 sudo sysctl -w net.ipv4.tcp_max_syn_backlog=8192 sudo sysctl -w net.ipv4.tcp_syncookies=1 sudo sysctl -w net.ipv4.ip_local_port_range="1024 65535" sudo sysctl -w net.ipv4.tcp_tw_recycle=1 sudo sysctl -w net.ipv4.tcp_congestion_control=cubic 相反,一个2核心机器运行节点能够扩展到90k连接。 […]

请问react-router会影响页面加载时间吗?

例如,如果在routes.js文件中有3个路由,而在同一个文件中有10个路由。 包含10个路由的文件是否需要较长时间才能加载? 假设每个路由都导入相同大小的组件。 或者我们进入路线后,组件将被导入?

只有当节点的版本足够大时,我如何才能要求包?

我知道可以为一个包指定一个最小版本的节点,以允许在没有警告的情况下安装它 。 还有一个问题[只安装你的软件包兼容的最新版本,没有更新。] 但是,在我的情况下,我试图使我的软件包与不能运行0.10.x以上版本节点的硬件兼容。 具体而言,这是使用ARMv5处理器的硬件,在V8的较新版本中支持这种处理器。 为此,我需要一些polyfills,例如os-homedir 。 我不希望实际上要求安装任何这样的软件包,如果不需要的话,因为它们被标记为不赞成使用,在上面的例子中,它的npmjs页面被标记为甚至没有被使用,虽然我目前能够npm install它。 我如何指定只有当系统上的nodejs版本是0.10.x或更高版本时才需要特定的模块?

Webpack:如何让具有相同模块名称的运行时(不是buildtime)function标志?

我希望find一种方法来从相同的webpack运行和相同的输出url可用的同一个文件的替代版本,一个服务调用之后dynamic加载不同的块/ bundle确定用户属于哪个组。 背景: 在相同的构build和输出url中将alpha / beta更改投入生产,可以让我们开发和testing外部用户的function,但是需要改变的任何地方(以及后来删除它们)的条件都很容易出错,并且会生成更复杂的代码。 我的想法是有相同的文件在特殊的命名的子集的替代版本 – 例如foo / file.js和foo / flagged – special / file.js – 然后当某些东西从'foo / file'中导入blah时,它会自动为该用户获取正确的版本。 这避免了代码本身的条件,并为所有人提供了一个function,只是用备用代码覆盖基本文件。 它也不涉及我们现有的代码库和webpackconfiguration的巨大变化,也没有涉及到很多时髦和产品特定的语法来replace我们的所有导入语句。 (当我把这个想法集中在一起后,有人把我指向孟德尔,尽pipe他们自己的框架与webpack不友好,但是我认为基本的想法并不是疯狂的) 问题: 我看到function的例子 – 标记一个版本或另一个版本,但不是在一个版本中都有的两个例子。 我可以写一个自定义的加载器或插件来包装每个文件加载来做到这一点(我想 – 不知道webpack的输出如何在运行时评估方面工作),但这会导致添加两个版本的捆绑。 我想我可以创build一个基本输出块只是获取用户的选项,然后dynamic加载具有不同版本的两个备用块之一…但我不知道这是否会工作,或者如果我正在与networking内部的战争打一场不败的战争。 这可以工作吗? 有人已经做了这个? 有没有更好的办法? 提前致谢!

JSONurl无法捕获空错误

我正在使用服务器JavaScript文件,JSON数据和节点服务器Atom编程! var fs = require('fs'); var dataP = fs.readFileSync('database.json'); var data = JSON.parse(dataP); var express = require('express'); var app = express(); var server = app.listen(3000); app.use(express('website')); app.get('/check/:input', addInput); function addInput(request, response){ var inputData = request.params.input; if(!inputData){ response.send("Error: no input was found"); } } 所以我有terminal运行我的服务器进入nodemon server.js当我testing的URL代码@ 本地主机:3000 /检查它不会捕获我写的错误消息错误:没有input被发现 ,我觉得很奇怪,因为它是一个空input,如果我假设正确。 我也试图改变if语句,并补充说: if(!data && data == null) //Also […]

从Electron主脚本触发点击

我怎样才能触发从电子主脚本button点击? 在我的项目中,我有一个带有一个button的HTML文件,我想模拟点击,一个JavaScript文件,我定义了一些使用JQuery的行为和主要的JavaScript文件,这是主要的电子过程。 Electron的主进程应该向渲染进程发送一个命令来触发button点击,但是我无法从main.js访问渲染。 我必须做些什么select?

npm安装失败,因为node-gyp失败。 怎么修?

我最近试图为我们的项目做一个干净的安装。 但是现在npm install在Ubuntu 17.04上失败了。 我已经改变了节点,npm,node-gyp和python的版本,我没有成功。 这是由于对node-gyp或其他东西的改变? 运行: node-gyp rebuild 给我: gyp info it worked if it ends with ok gyp info using node-gyp@3.6.2 gyp info using node@7.10.1 | linux | x64 gyp info spawn /usr/bin/python2 gyp info spawn args [ '/usr/local/lib/node_modules/node-gyp/gyp/gyp_main.py', gyp info spawn args 'binding.gyp', gyp info spawn args '-f', gyp info spawn args […]

我可以从服务器端而不是浏览器端的ejs页面访问cookie吗?

我需要做一个例程来检查环境下的login状态 – node.js,express,ejs。 我想我需要在服务器端的所有ejs查看页面中检查login状态,而不是在浏览器端。 要做到这一点,我认为我需要在ejs页面上编写一个代码,查找并查看一个cookie – 这个cookiecertificate用户已经正确login。 我可以从ejs页面访问浏览器cookie吗? 如果是这样,你能指导我如何从ejs页面访问cookie吗? 我可以使用ejs中的cookieparsing器模块吗? 如果没有办法从ejs页面的服务器端访问cookie,我相信我只需要在浏览器端访问cookie。 这是正常的方式来处理login?

Linkedin:根据个人的电子邮件ID获取“还有人看过”

我正在研究nodejs项目,现在我得到一个新的要求,我必须得到根据电子邮件地址查看个人资料链接的人员列表。 例如。 如果我有一个人的电子邮件地址,那么我想要查看该人的个人资料的人员(姓名,照片和电子邮件地址)列表。 我尝试使用linkedin JavaScript的SDK,但我没有find任何API将返回此数据。 如果有人能帮助我,我会很感激。

如何在fs.createWriteStream中创builddynamic模板?

这是我的代码。 我正在使用pdfkit。 所以,而不是发送一个文本,我想发送一个HTML模板与dynamic数据。 现在我正在使用doc.text('my text11111')。 我们可以用模板replace它吗? var PDFDocument = require('pdfkit'); var doc = new PDFDocument({ size: 'letter' }); doc.pipe(fs.createWriteStream('will.pdf')); doc.text('my text11111') doc.end();