苹果推送nodejs+apn

news/2024/11/17 7:38:12/

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

安装nodejs的apn

<!-- lang: shell -->
npm install apn

默认安装到了用户目录,要让本机程序找到require的头文件需要设置环境变量

<!-- lang: shell -->
NODE_PATH=C:\Users\xxx\node_modules

性能测试

对同一个token,相同消息,循环调用函数

<!-- lang: js -->
service.pushNotification(note, tokens);

10000次所消耗时间为100ms左右。 当然了,nodejs的必杀技就是异步的嘛,所以发送速度很快。 最大连接数分别设为1、10、100。以开始发送起,到最后一次触发发送成功回调函数位置。所消耗的时间分别为:15s、12.4s、9s。后来反复测试发现基本都在10s到17s之间波动。而且与最大连接数无关。可见apn的性能大约在600-1100qps。 当最大连接数设置为100时,通过

<!-- lang: shell -->
netstat -ano | find "2195"

发现其连接数只有1。参数“maxConnections”根本没有起作用。 查看源代码文件connection.js 在函数 Connection.prototype.serviceBuffer = function() 中:

<!-- lang: js -->
//从sockets数组取一个socket
if (socket !== null)
...// 发送消息
else if (!this.initialisingConnection() && this.sockets.length < this.options.maxConnections)this.createConnection(); // 创建新连接

只有当没有有效的socket可用时才会创建新的连接。测试中只对一个token循环发送,可能使得socket根本就不忙。这一个连接的socket一直都有效,所以就没有建立其他的连接。可以在高并发、同一个信息发送多个token再测试一下。

转载于:https://my.oschina.net/u/1864567/blog/292554


http://www.ppmy.cn/news/754189.html

相关文章

APN

carrier APN 通过网络运营商发送多媒体消息以及群组消息需要设置APN 参考&#xff1a; APN基础常识 苹果XS MAX安装完APN Carrier Settings以后怎么设置新的接入点&#xff1f;&#xff1f; 常用APN接入点 APN简介 APN是什么意思

iPhone6手机网络apn设置方法

为什么80%的码农都做不了架构师&#xff1f;>>> 1.连上wifi&#xff0c;打开safari登录www.unlockit.co.nz 2.点“创建的APN” cmcc&#xff1a;中国移动 UNICOM&#xff1a;中国联通 选好自己的运行商后直接点击 &#xff1a;创建的APN 3.然后他会自动转到一个界面…

苹果6手机怎么设置鸿蒙,苹果6手机的接入点怎么设置成net

iPhone 6plus的APN接入点怎么设置成net可以这么来做。 具体步骤如下&#xff1a; 在确保我们的苹果手机已经完美越狱的情况下&#xff0c;打开Cydia。在Cydia当中点击下方的“搜索”选项&#xff0c;输入“APNEdit”并查找&#xff0c;点击安装&#xff0c;然后重启手机&#x…

ios修改apn的插件_iPhone手机APN修改方案

1、下载并安装iPhoneConfigUtilitySetup工具 ⑴下载地址:http://www.apple.com/support/iphone/enterprise/ ⑵点击上图红色线条标注的超链接,弹出如下网页并点击“Download”按钮,待弹出下载界面后,点击保存即可完成程序的下载。 ⑶安装iPhoneConfigUtilitySetup工具 2、建…

ios修改apn的插件_苹果iPhone查看和编辑APN方法教程

iPhone怎么查看和编辑APN?很多小伙伴们都还不知道,下面小编为大家整理了苹果iPhone查看和编辑APN方法教程,一起来看看吧。 iPhone怎么查看和编辑APN 如果您输入了错误的 APN 设置,可能会失去蜂窝移动数据连接并产生额外费用。除非您的运营商或移动设备管理员指示您编辑 APN…

-Xss / -XX:ThreadStackSize

-Xss / -XX:ThreadStackSize指定线程最大栈空间jdk1.4里默认的栈大小是256KBjdk1.5里默认的栈大小为1M这个参数直接会影响创建线程数量&#xff0c;值越小创建线程数越多&#xff1b; &#xff08;估算jvm进程的最大线程数&#xff09;这个参数直接决定了函数可调用的最大深度&…

不同ts文件下,提示变量名重复的问题解决

同一个目录的不同文件下使用同一个变量名称出现报错 是因为ts的文件默认是全局文件 发现即使在标签栏关闭 也无法解决&#xff0c; 可以尝试在 报错的文件上加上 export{}&#xff0c;即可完美解决

20201220苹果黑解开放-黑解教程 最新iccid

话不多说&#xff0c;直接开整。 先升级手机最新系统14.4 已有卡贴的&#xff0c;直接进进sim卡应用程序&#xff0c;选择模式或运营商&#xff0c;自动跳黑色菜单&#xff0c;点选完美解锁&#xff1b; 修改ICCID为&#xff1a;89014104279605344027 或者 8901410427960534461…