当前位置:首页 » 网页前端 » pm2web
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

pm2web

发布时间: 2022-03-12 06:07:40

1. linux install pm2-web自动roll back为什么

1、最重要的一点,如果目标文件存在,cp会先清空文件后往里写入新文件,而install则会先删除掉原先的文件然后写入新文件。这是因为往正在 使用的文件中写入内容可能会导致一些问题,比如说写入正在执行的文件可能会失败,比如说往已经在持续写入的文件句柄中写入新文件会产生错误的文件。而使用 install先删除后写入(会生成新的文件句柄)的方式去安装就能避免这些问题了;
2、install命令会恰当地处理文件权限的问题。比如说,install -c会把目标文件的权限设置为rwxr-xr-x;
3、install命令可以打印出更多更合适的debug信息,还会自动处理SElinux上下文的问题。

2. nodejs 线上部署 也需要npm start么

pm2=P(rocess)M(anager)2,是可以用于生产环境的Nodejs的进程管理工具,并且它内置一个负载均衡。它不仅可以保证服务不会中断一直在线,并且提供0秒reload功能,还有其他一系列进程管理、监控功能。并且使用起来非常简单。下面我将把我的使用过程分享出来,Nodejs应用是一个基于Express 4.x的应用,名称是Wolverine。

安装

环境清单:

  • windows7 x64

  • node v5.0.0

  • npm 3.3.6

  • 全局安装pm2

  • $ npm install pm2 -g

  • 更新

  • $ pm2 update

  • 启动

    以前启动Wolverine是利用package.json的scripts来实现的,只需要执行npm run start就可以启动,配置如下:

  • "scripts": { "start": "node ./bin/www", "debug": "node debug ./bin/www"


  • },

  • 使用pm2我们可以在start处配置成pm2 ./bin/www,命令后面支持加参数来实现watch、cluster多进程模式等功能。我不太喜欢一大串的命令,于是我使用了配置文件的方式。

    在Wolverine的根目录,我创建了一个processes.json配置文件,配置文件内容如下,注释写的也很清楚了

  • { "apps" : [{ "name" : "Wolverine", //名称 "script": "./bin/www", //程序入库 "cwd": "./", //根目录 "watch":[ "bin", "common", "configs", "public", "routes", "views"

  • ],//需要监控的目录 "error_file":"./logs/app-err.log",//错误输出日志 "out_file":"./logs/app-out.log", //日志 "log_date_format":"YYYY-MM-DD HH:mm Z" //日期格式

  • }]

  • }

  • 随后,我在package.json中增加了一条

  • "pm2": "pm2 start processes.json"

  • 在启动就直接输入如下命令就好:

  • $ npm run pm2

  • 看到下面的界面,就启动成功了,然后我们就可以关掉这个窗口了,服务不会因此停止,是不是高大上多了。

    拿出你的想象力,我们可以开发一个应用来调用此api,就可以开发出一个图形界面的监控软件了。。。

3. pm2 web 执行后怎么关闭

1、最重要的一点,如果目标文件存在,cp会先清空文件后往里写入新文件,而install则会先删除掉原先的文件然后写入新文件。这是因为往正在 使用的文件中写入内容可能会导致一些问题,比如说写入正在执行的文件可能会失败,比如说往已经在持续写入

4. pm2 start app.js怎么在web端查看

先看一下Web中,我们给h1标签添加一个onclick事件,让它在被点击之后,修改当前的url。
Web中的HTML代码:
<html>
<head>
<script>

function getInfo(name)
{
window.location = "/getInfo/"+name;
}

</script>

</head>

<body>
<h1 onclick="getInfo('why')">Name</h1>
</body>

</html>

iOS中,先拖拽WebView,访问localhost,然后通过WebView的委托事件监听url跳转操作,并且把跳转截取下来。
也就是说,在onclick的时候,普通浏览器灰跳转到那个url,但是在iOS的这个WebView里面,这个跳转会被拦截,
用这种方式可以巧妙地实现JS调用iOS的原生代码:

//
// DWViewController.m
// DareWayApp
//
// Created by why on 14-6-3.
// Copyright (c) 2014年 DareWay. All rights reserved.
//

#import "DWViewController.h"

@interface DWViewController ()

@property (weak, nonatomic) IBOutlet UIWebView *myWebview; // 主页面

@end

@implementation DWViewController

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.

// 适配iOS6的状态栏
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) {
_myWebview.frame = CGRectMake(0,20,self.view.frame.size.width,self.view.frame.size.height-20);
}

5. 如何在同一台服务器起多个pm2进程

PM2是一个带有负载均衡功能的Node应用的进程管理器。PM2可以利用服务器上的所有CPU,并保证进程永远都活着,0秒的重载,部署管理多个Node项目。PM2是Node线上部署完美的管理工具。PM2安装npm install -g pm2
PM2用法$ pm2 start app.js -i 4 #后台运行pm2,启动4个app.js,也可以用’max’参数,进程数目依赖于Cpu的核心数目$ pm2 start app.js –name my-api # 命名进程$ pm2 restart 0 # 重启指定的进程$ pm2 restart all # 重启所有进程$ pm2 reload all # 0秒停机重载进程 (用于NETWORKED进程)$ pm2 stop 0 # 停止指定的进程$ pm2 stop all # 停止所有进程$ pm2 startup # 产生init脚本,保持进程活着$ pm2 delete 0 # 杀死指定的进程$ pm2 delete all # 杀死全部进程$ pm2 web # 运行健壮的 computer API endpoint (http://localhost:9615)$ pm2 list # 列出由pm2管理的所有进程信息。$ pm2 monit # 监视每个node进程的CPU和内存的使用情况。$ pm2 logs # 显示所有进程日志$ pm2 kill # 杀死pm2进程$ pm2 info 0 # 描述指定项目或者进程信息$ pm2 logs # 实时集中log处理

6. web前端自学要多久

这个要看个人的实际情况决定;自学最注重个人的自制力和学习力,你要抵御各种诱惑,还要有详细的学习规划,才能保证正常的学习,徐徐渐进。下面的学习路线或许对你有帮助:

前端完整学习路线

第一阶段:

HTML CSS:HTML进阶、CSS进阶、div css布局、HTML css整站开发。

JavaScript基础:Js基础教程、js内置对象常用方法、常见DOM树操作大全、ECMAscript、DOM、BOM、定时器和焦点图。

JS基本特效:常见特效、例如:tab、导航、整页滚动、轮播图、JS制作幻灯片、弹出层、手风琴菜单、瀑布流布局、滚动事件、滚差视图。

JS高级特征:正则表达式、排序算法、递归算法、闭包、函数节流、作用域链、基于距离运动框架、面向对象基础。

第二阶段:HTML5和移动Web开发

HTML5:HTML5新语义标签、HTML5表单、音频和视频、离线和本地存储、SVG、Web Socket、Canvas。

CSS3:CSS3新选择器、伪元素、脸色表示法、边框、阴影、background系列属性改变、Transition、动画、景深和深透、3D效果制作、Velocity.js框架、元素进场、出场策略、炫酷CSS3网页制作。

移动Web开发:跨终端WEB和主流设备简介、视口、流式布局、弹性盒子、rem、移动终端JavaScript事件、手机中常见JS效果制作、Zepto.js、手机聚划算页面、手机滚屏。

第三阶段:HTTP服务和AJAX编程

WEB服务器基础:服务器基础知识、Apache服务器和其他WEB服务器介绍、Apache服务器搭建、HTTP介绍。

PHP基础:PHP基础语法、使用PHP处理简单的GET或者POST请求。

第四阶段:面向对象进阶

面向对象终极篇:从内存角度到理解JS面向对象、基本类型、复杂类型、原型链、ES6中的面向对象、属性读写权限、设置器、访问器。

面向对象三大特征:继承性、多态性、封装性、接口。

设计模式:面向对象编程思维、单例模式、工厂模式、策略模式、观察者模式、模板方法模式、代理模式、装饰者模式、适配器模式、面向切面编程。

第五阶段:封装一个属于自己的框架

框架封装基础:事件流、冒泡、捕获、事件对象、事件框架、选择框架。

框架封装中级:运动原理、单物体运动框架、多物体运动框架、运动框架面向对象封装。

框架封装高级和补充:JQuery框架雏形、可扩展性、模块化、封装属于传智自己的框架。

第六阶段:模块化组件开发

面向组件编程:面向组件编程的方式、面向组件编程的实现原理、面向组件编程实战、基于组件化思想开发网站应用程序。

面向模块编程:AMD设计规范、CMD设计规范、RequireJS,LoadJS、淘宝的SeaJS。

第七阶段:主流的流行框架

Web开发工作流:GIT/SVN、Yeoman脚手架、NPMer依赖管理工具、Grunt/Gulp/Webpack。

MVC/MVVM/MVW框架:Angular.js、Backbone.js、Knockout/Ember。

常用库:React.js、Vue.js、Zepto.js。

第八阶段:HTML5原生移动应用开发

Cordova:WebApp/NativeApp/HybirdApp简介、Cordova简介、与PhoneGap之间的关系、开发环境搭建、Cordova实战(创建项目,配置,编译,调试,部署发布)。

Ionic:Ionic简介和同类对比、模板项目解析、常见组件及使用、结合Angular构建APP、常见效果(下拉刷新,上拉加载,侧滑导航,选项卡)。

HTML5 :HTML5 中国产业联盟、HTML5 Plus Runtime环境、HBuilder开发工具、MUI框架、H5 开发和部署。

第九阶段: Node.js全栈开发:

快速入门:Node.js发展、生态圈、Io.js、Linux/Windows/OS X环境配置、REPL环境和控制台程序、异步编程,非阻塞I/O、模块概念,模块管理工具、开发流程,调试,测试。

核心模块和对象:全局对象global,process,console,util、事件驱动,事件发射器、加密解密,路径操做。

7. 如何使用 pm2 部署 express 多进程

PM2是一个带有负载均衡功能的Node应用的进程管理器。PM2可以利用服务器上的所有CPU,并保证进程永远都活着,0秒的重载,部署管理多个Node项目。PM2是Node线上部署完美的管理工具。

PM2安装
npm install -g pm2

PM2用法
$ pm2 start app.js -i 4 #后台运行pm2,启动4个app.js,也可以用’max’参数,进程数目依赖于Cpu的核心数目
$ pm2 start app.js –name my-api # 命名进程
$ pm2 restart 0 # 重启指定的进程
$ pm2 restart all # 重启所有进程
$ pm2 reload all # 0秒停机重载进程 (用于NETWORKED进程)
$ pm2 stop 0 # 停止指定的进程
$ pm2 stop all # 停止所有进程
$ pm2 startup # 产生init脚本,保持进程活着
$ pm2 delete 0 # 杀死指定的进程
$ pm2 delete all # 杀死全部进程
$ pm2 web # 运行健壮的 computer API endpoint (http://localhost:9615)
$ pm2 list # 列出由pm2管理的所有进程信息。
$ pm2 monit # 监视每个node进程的CPU和内存的使用情况。
$ pm2 logs # 显示所有进程日志
$ pm2 kill # 杀死pm2进程
$ pm2 info 0 # 描述指定项目或者进程信息
$ pm2 logs # 实时集中log处理

标签:Nodejs学习

8. 请问web开发工具都有哪些

1.Web应用框架
这些软件是专门设计来帮助网站开发,并使创建网站的Web开发的过程变得更容易。该软件完全支持Web服务,Web资源和Web
API。这些框架会自动执行与Web开发中的常见活动相关联的一些进程,从而使Web开发人员的工作变得更加容易。可用的Web开发框架包括ASP.NET,JavaEE,WebObjects,web2py,OpenACS等。
2.协作工具
对于远程工作的团队,需要时刻保持联系和协作。为了提高开发效率,帮助开发者在同一个项目上工作的流程简化开发流程,以实现团队的设定目标,市场上出现了很多协作工具,如Slack,Trello,Asana,Jira等。
3.本地开发环境
一个快速的本地开发环境,可以推出取决于操作系统或您正在使用的计算机。有各种各样的免费软件,软件Apache,MySQL和其他打包在一起。这是在本地计算机上最快的一种测试方式,为了方便使用,有些程序还出了便携式版本。本地开发环境包括MAMP,LARAGAN,XAMPP和Vagrant等。
4.前端框架
前端框架基本上是一些文件和文件夹,如HTML,CSS和JavaScript等。前端框架通常包含有有准备好的组件,大多数组件都是可以进行修改和调整的,开发人员可以根据自己的开发需求来选择使用,目前最常见的前端框架是Bootstrap。
5.图标
图标对于Web开发人员,尤其是前端开发人员非常重要,它们是Web开发的重要组成部分。上图中的图标都可以应用于你的项目,且这其中大部分是免费的。
6.网站速度测试工具
网站速度是决定一个网站是否成功的重要因素。现在的用户越来越挑剔,大家往往更倾向于加载速度快的网站,对于加载速度慢的网站,大家几乎是零容忍。另外,SEO做得好的话,可能会带来更高的转化率和更好的用户体验。Web开发人员可以使用工具来测试他们的网站速度,以确保他们的网站能够拥有较短的加载时间。
7.文本对比检查
Diff checkers 可以帮助您比较文件之间的差异,然后合并更改,帮助我们更直观的看见文本之间的差异。
8.数据库
数据库基本上是已经存储信息的集合,可以进行信息的检索,管理甚至更新。Web开发人员常用的数据库有MySQL,MariaDB,MongoDB,Redis等。
9.Web开发通讯
为什么选择通讯订阅,因为开发人员可以利用这些工具节省时间和精,通过这些工具选择最佳的Web开发和性能主题,而不必自己动手。
10.任务批处理工具/包管理器
任务批处理工具有助于自动化工作流程。例如,你创建了一个任务,可以通过JavaScript编写的工具来自动化工作流程。除此之外,还可以新建和组合任务,使用任务管理器缩短开发时间,加快开发速率。
另一方面,包管理器也是很重要的,它可以跟踪所有软件,确保这些软件都更新至最新版本,拥有最强的功能。这些工具包括:Grunt,Gulp,npm等。
11.文本和代码编辑器
文本和代码编辑器不仅能够为开发者带来良好的代码体验,而且能够大大节约网站开发的时间。比较常用的编辑器有Atom,Notepad++,Vim等。之前,笔者也发过程序员票选最佳的代码编辑器,感兴趣的朋友可以戳进去看一下。
12.灵感
对于很多工种来说,灵感都是极为重要的,但是灵感是可遇不可求的,所以一旦有了灵感就必须及时记录下来。除了我们自己的灵感迸现,我们也可以从别人的作品中提炼出新的灵感。常见的记录灵感的工具有CodePen
和Dribble。
13.编程语言
每个Web开发工具都有一种编程语言。编程语言被设计为开发人员或程序员和计算机之间的桥梁,并帮助程序员创建我们每天使用的程序。比较流行的编程语言包括PHP,NodeJS,Python,Ruby等。
14.代码共享/实验工具
基本上编程这个工作是一个团队合作,团队之间要保持亲密无间的协作关系,互相检查对方的代码有助于更有效的进行程序编写。代码共享是现在程序员都在使用的一种方式,常见的有Slack。
15.Git 托管
Git是一款免费、开源的分布式版本控制系统,可以高效的管理大小项目的各个版本,可以帮助开发团队避免混乱。

9. Web前端岗位面试题有哪些

前端面试题汇总,基本上会有四大类问题,具体如下:
一、HTML

1、Doctype作用?严格模式与混杂模式如何区分?它们有何意义?

2、HTML5 为什么只需要写 <!DOCTYPE HTML>?
3、行内元素有哪些?块级元素有哪些? 空(void)元素有那些?
4、页面导入样式时,使用link和@import有什么区别?
5、介绍一下你对浏览器内核的理解?
6、常见的浏览器内核有哪些?
7、html5有哪些新特性、移除了那些元素?如何处理HTML5新标签的浏览器兼容问题?如何区分 HTML 和 HTML5?
8、简述一下你对HTML语义化的理解?
9、HTML5的离线储存怎么使用,工作原理能不能解释一下?
10、浏览器是怎么对HTML5的离线储存资源进行管理和加载的呢?
11、请描述一下 cookies,sessionStorage 和 localStorage 的区别?
12、iframe有那些缺点?
13、Label的作用是什么?是怎么用的?(加 for 或 包裹)
14、HTML5的form如何关闭自动完成功能?
15、如何实现浏览器内多个标签页之间的通信? (阿里)
16、webSocket如何兼容低浏览器?(阿里)
17、页面可见性(Page Visibility)API 可以有哪些用途?
18、如何在页面上实现一个圆形的可点击区域?
19、实现不使用 border 画出1px高的线,在不同浏览器的Quirksmode和CSSCompat模式下都能保持同一效果。
20、网页验证码是干嘛的,是为了解决什么安全问题?
21、tite与h1的区别、b与strong的区别、i与em的区别?

二、css

1、介绍一下标准的CSS的盒子模型?与低版本IE的盒子模型有什么不同的?

2、CSS选择符有哪些?哪些属性可以继承?
3、CSS优先级算法如何计算?
4、CSS3新增伪类有那些?
5、如何居中div?如何居中一个浮动元素?如何让绝对定位的div居中?
6、display有哪些值?说明他们的作用。
7、position的值relative和absolute定位原点是?
8、CSS3有哪些新特性?
9、请解释一下CSS3的Flexbox(弹性盒布局模型),以及适用场景?
10、用纯CSS创建一个三角形的原理是什么?

11、一个满屏 品 字布局 如何设计?

三、常见兼容性问题?


  1. 1、li与li之间有看不见的空白间隔是什么原因引起的?有什么解决办法?
    2、经常遇到的浏览器的兼容性有哪些?原因,解决方法是什么,常用hack的技巧 ?
    3、为什么要初始化CSS样式。
    4、absolute的containing block计算方式跟正常流有什么不同?
    5、CSS里的visibility属性有个collapse属性值是干嘛用的?在不同浏览器下以后什么区别?
    6、position跟display、margin collapse、overflow、float这些特性相互叠加后会怎么样?
    7、对BFC规范(块级格式化上下文:block formatting context)的理解?
    8、CSS权重优先级是如何计算的?
    9、请解释一下为什么会出现浮动和什么时候需要清除浮动?清除浮动的方式
    10、移动端的布局用过媒体查询吗?
    11、使用 CSS 预处理器吗?喜欢那个?
    12、CSS优化、提高性能的方法有哪些?
    13、浏览器是怎样解析CSS选择器的?
    14、在网页中的应该使用奇数还是偶数的字体?为什么呢?
    15、margin和padding分别适合什么场景使用?
    16、抽离样式模块怎么写,说出思路,有无实践经验?[阿里航旅的面试题]
    17、元素竖向的百分比设定是相对于容器的高度吗?
    18、全屏滚动的原理是什么?用到了CSS的那些属性?
    19、什么是响应式设计?响应式设计的基本原理是什么?如何兼容低版本的IE?
    20、视差滚动效果,如何给每页做不同的动画?(回到顶部,向下滑动要再次出现,和只出现一次分别怎么做?)
    21、::before 和 :after中双冒号和单冒号 有什么区别?解释一下这2个伪元素的作用。
    22、如何修改chrome记住密码后自动填充表单的黄色背景 ?
    23、你对line-height是如何理解的?
    24、设置元素浮动后,该元素的display值是多少?(自动变成display:block)
    25、怎么让Chrome支持小于12px 的文字?
    26、让页面里的字体变清晰,变细用CSS怎么做?(-webkit-font-smoothing: antialiased;)
    27、font-style属性可以让它赋值为“oblique” oblique是什么意思?
    28、position:fixed;在android下无效怎么处理?
    29、如果需要手动写动画,你认为最小时间间隔是多久,为什么?(阿里)
    30、display:inline-block 什么时候会显示间隙?(携程)
    31、overflow: scroll时不能平滑滚动的问题怎么处理?
    32、有一个高度自适应的div,里面有两个div,一个高度100px,希望另一个填满剩下的高度。
    33、png、jpg、gif 这些图片格式解释一下,分别什么时候用。有没有了解过webp?
    34、什么是Cookie 隔离?(或者说:请求资源的时候不要让它带cookie怎么做)
    35、style标签写在body后与body前有什么区别?

    四、JavaScript

    1、介绍JavaScript的基本数据类型。
    2、说说写JavaScript的基本规范?
    3、JavaScript原型,原型链 ? 有什么特点?
    4、JavaScript有几种类型的值?(堆:原始数据类型和 栈:引用数据类型),你能画一下他们的内存图吗?
    5、Javascript如何实现继承?
    6、Javascript创建对象的几种方式?
    7、Javascript作用链域?
    8、谈谈This对象的理解。
    9、eval是做什么的?
    10、什么是window对象? 什么是document对象?
    11、null,undefined的区别?
    12、写一个通用的事件侦听器函数(机试题)。
    13、[“1”, “2”, “3”].map(parseInt) 答案是多少?
    14、关于事件,IE与火狐的事件机制有什么区别? 如何阻止冒泡?
    15、什么是闭包(closure),为什么要用它?
    16、javascript 代码中的”use strict”;是什么意思 ? 使用它区别是什么?
    17、如何判断一个对象是否属于某个类?
    18、new操作符具体干了什么呢?
    19、用原生JavaScript的实现过什么功能吗?
    20、Javascript中,有一个函数,执行时对象查找时,永远不会去查找原型,这个函数是?
    21、对JSON的了解?
    22、[].forEach.call($$("*"),function(a){ a.style.outline="1px solid #"+(~~(Math.random()*(1<<24))).toString(16) }) 能解释一下这段代码的意思吗?
    23、js延迟加载的方式有哪些?
    24、Ajax 是什么? 如何创建一个Ajax?
    25、同步和异步的区别?
    26、如何解决跨域问题?
    27、页面编码和被请求的资源编码如果不一致如何处理?
    28、模块化开发怎么做?
    29、AMD(Moles/Asynchronous-Definition)、CMD(Common Mole

    Definition)规范区别?
    30、requireJS的核心原理是什么?(如何动态加载的?如何避免多次加载的?如何 缓存的?)
    31、让你自己设计实现一个requireJS,你会怎么做?
    32、谈一谈你对ECMAScript6的了解?
    33、ECMAScript6 怎么写class么,为什么会出现class这种东西?
    34、异步加载的方式有哪些?
    35、documen.write和 innerHTML的区别?
    36、DOM操作——怎样添加、移除、移动、复制、创建和查找节点?
    37、.call() 和 .apply() 的含义和区别?
    38、数组和对象有哪些原生方法,列举一下?
    39、JS 怎么实现一个类。怎么实例化这个类
    40、JavaScript中的作用域与变量声明提升?
    41、如何编写高性能的Javascript?
    42、那些操作会造成内存泄漏?
    43、JQuery的源码看过吗?能不能简单概况一下它的实现原理?
    44、jQuery.fn的init方法返回的this指的是什么对象?为什么要返回this?
    45、jquery中如何将数组转化为json字符串,然后再转化回来?
    46、jQuery 的属性拷贝(extend)的实现原理是什么,如何实现深拷贝?
    47、jquery.extend 与 jquery.fn.extend的区别?
    48、jQuery 的队列是如何实现的?队列可以用在哪些地方?
    49、谈一下Jquery中的bind(),live(),delegate(),on()的区别?
    50、JQuery一个对象可以同时绑定多个事件,这是如何实现的?
    51、是否知道自定义事件。jQuery里的fire函数是什么意思,什么时候用?
    52、jQuery 是通过哪个方法和 Sizzle 选择器结合的?(jQuery.fn.find()进入Sizzle)
    53、针对 jQuery性能的优化方法?
    54、Jquery与jQuery UI有啥区别?
    55、JQuery的源码看过吗?能不能简单说一下它的实现原理?
    56、jquery 中如何将数组转化为json字符串,然后再转化回来?
    57、jQuery和Zepto的区别?各自的使用场景?
    58、针对 jQuery 的优化方法?
    59、Zepto的点透问题如何解决?
    60、jQueryUI如何自定义组件?
    61、需求:实现一个页面操作不会整页刷新的网站,并且能在浏览器前进、后退时正确响应。给出你的技术实现方案?
    62、如何判断当前脚本运行在浏览器还是node环境中?(阿里)
    63、移动端最小触控区域是多大?
    64、jQuery 的 slideUp动画 ,如果目标元素是被外部事件驱动, 当鼠标快速地连续触发外部元素事件, 动画会滞后的反复执行,该如何处理呢?
    65、把 Script 标签 放在页面的最底部的body封闭之前 和封闭之后有什么区别?浏览器会如何解析它们?
    66、移动端的点击事件的有延迟,时间是多久,为什么会有? 怎么解决这个延时?(click 有 300ms 延迟,为了实现safari的双击事件的设计,浏览器要知道你是不是要双击操作。)
    67、知道各种JS框架(Angular, Backbone, Ember, React, Meteor, Knockout…)么? 能讲出他们各自的优点和缺点么?
    68、Underscore 对哪些 JS 原生对象进行了扩展以及提供了哪些好用的函数方法?
    69、解释JavaScript中的作用域与变量声明提升?
    70、那些操作会造成内存泄漏?
    71、JQuery一个对象可以同时绑定多个事件,这是如何实现的?
    72、Node.js的适用场景?
    (如果会用node)知道route, middleware, cluster, nodemon, pm2, server-side rendering么?
    73、解释一下 Backbone 的 MVC 实现方式?
    74、什么是“前端路由”?什么时候适合使用“前端路由”? “前端路由”有哪些优点和缺点?
    75、知道什么是webkit么? 知道怎么用浏览器的各种工具来调试和debug代码么?
    76、如何测试前端代码么? 知道BDD, TDD, Unit Test么? 知道怎么测试你的前端工程么(mocha, sinon, jasmin, qUnit..)?
    77、前端templating(Mustache, underscore, handlebars)是干嘛的, 怎么用?
    78、简述一下 Handlebars 的基本用法?
    79、简述一下 Handlerbars 的对模板的基本处理流程, 如何编译的?如何缓存的?
    80、用js实现千位分隔符?(来源:前端农民工,提示:正则+replace)
    检测浏览器版本版本有哪些方式?
    81、我们给一个dom同时绑定两个点击事件,一个用捕获,一个用冒泡,你来说下会执行几次事件,然后会先执行冒泡还是捕获

10. Node 重启服务器的 几种常用方法

目前网上已有 pm2-zabbix 工具可以实现Zabbix对Node/greatcare/pm2-zabbix.git 3.Zabbix Web管理后台导入模板文件 pm2-zabbix/install/zabbix-server/pm2-zabbix.template.xml 4.Node.js服务器添加服务,根据服务器操作系统版本选择,并修改服务运行用户和使用PM2启动的Node.js用户一致 RHEL/CentOS 7系列: cp pm2-zabbix/install/init/systemd/pm2-zabbix.service /usr/lib/systemd/system/ 修改目标文件 pm2-zabbix.service 文件内容 User项: User=root RHEL/CentOS 6或5系列: cp pm2-zabbix/install/init/sysv/pm2-zabbix /etc/init.d/ 修改目标文件 pm2-zabbix 文件内容 DAEMON_USER项: DAEMON_USER=root 5.新建软连接,根据自己服务器修改软连接指向的真实文件路径 mkdir -p /etc/zabbix ln -s /App/zabbix/etc/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf ln -s /App/zabbix/bin/zabbix_sender /usr/bin/zabbix_sender ln -s `which node` /usr/bin/node ln -s `which pm2-zabbix` /usr/local/bin/pm2-zabbix 6.启动 pm2-zabbix 服务 RHEL/CentOS 7系列: systemctl start pm2-zabbix RHEL/CentOS 6或5系列: service start pm2-zabbix 7.修改Zabbix Agent配置文件 zabbix_agentd.conf,添加包含其它配置 Include=/App/zabbix/etc/zabbix_agentd.conf.d/*.conf 8.拷贝Zabbix Agent配置 cp pm2-zabbix/install/zabbix-agent/pm2-zabbix.conf /App/zabbix/etc/zabbix_agentd.conf.d/pm2.conf 9.修改配置 pm2.conf 内容 sudo -u 用户和第4步一致,同事修改 pm2-zabbix 路径 UserParameter=pm2.processes,sudo -u root /usr/local/bin/pm2-zabbix --discover 10.服务器终端执行程序 visudo 添加sudo配置 zabbix ALL=(ALL:ALL) NOPASSWD: /usr/local/bin/pm2-zabbix Defaults:zabbix !requiretty 11.重启Node.js服务器Zabbix Agent服务 /etc/init.d/zabbix_agentd restart 12.Zabbix Web管理后台设置Node.js服务器添加链接 Template App PM2 模板 PM2守护进程CPU使用率 PM2守护进程内存占用 PM2管理的Node进程实例CPU使用率 PM2管理的Node进程实例内存占用 以上所述是小编给大家介绍的Zabbix添加Node.js监控的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!