本文目錄一覽:
- 1、clusterize.js怎麼用
- 2、以「.jss」結尾的文件也是javascript腳本么?與「.js」結尾的腳本有何不同以及其主要用途。
- 3、關於JS中appendChild的用法
- 4、什麼是’js”是什麼格式嗎
clusterize.js怎麼用
使用NODE中cluster利用多核CPU
[javascript] view plain copy
var cluster = require(‘cluster’);
var http = require(‘http’);
var numCPUs = require(‘os’).cpus().length;
if (cluster.isMaster) {
// 創建工作進程
for (var i = 0; i numCPUs; i++) {
cluster.fork();
}
cluster.on(‘death’, function(worker) {
console.log(‘worker ‘ + worker.pid + ‘ died’);
cluster.fork();//重啟子進程
});
} else {
// 工作進程創建http 服務器
http.Server(function(req, res) {
res.writeHead(200);
res.end(“hello world\n”);
}).listen(8000);
}
通過消息傳遞來監控工作進程狀態
[javascript] view plain copy
var cluster = require(‘cluster’);
var http = require(‘http’);
var numCPUs = require(‘os’).cpus().length;
var rssWarn = (12 * 1024 * 1024)
, heapWarn = (10 * 1024 * 1024)
if(cluster.isMaster) {
for(var i=0; inumCPUs; i++) {
var worker = cluster.fork();
worker.on(‘message’, function(m) {
if (m.memory) {
console.log(m.memory.rss,rssWarn)
if(m.memory.rss rssWarn) {
console.log(‘Worker ‘ + m.process + ‘ using too much memory.’)
}
}
})
}
} else {
// 服務器
http.createServer(function(req,res) {
res.writeHead(200);
res.end(‘hello world\n’)
}).listen(8000)
// 每秒報告一次狀態
setInterval(function report(){
process.send({memory: process.memoryUsage(), process: process.pid});
}, 1000)
}
殺死殭屍進程
[javascript] view plain copy
var cluster = require(‘cluster’);
var http = require(‘http’);
var numCPUs = require(‘os’).cpus().length;
var rssWarn = (50 * 1024 * 1024)
, heapWarn = (50 * 1024 * 1024)
var workers = {}
if(cluster.isMaster) {
for(var i=0; inumCPUs; i++) {
createWorker()
}
setInterval(function() {
var time = new Date().getTime()
for(pid in workers) {
if(workers.hasOwnProperty(pid)
workers[pid].lastCb + 5000 time) {
console.log(‘Long running worker ‘ + pid + ‘ killed’)
workers[pid].worker.kill()
delete workers[pid]
createWorker()
}
}
}, 1000)
} else {
// 服務器
http.Server(function(req,res) {
// 打亂200 個請求中的1 個
if (Math.floor(Math.random() * 200) === 4) {
console.log(‘Stopped ‘ + process.pid + ‘ from ever finishing’)
while(true) { continue }
}
res.writeHead(200);
res.end(‘hello world from ‘ + process.pid + ‘\n’)
}).listen(8000)
// 每秒鐘報告一次狀態
setInterval(function report(){
process.send({cmd: “reportMem”, memory: process.memoryUsage(),
process: process.pid})
}, 1000)
}
function createWorker() {
var worker = cluster.fork()
console.log(‘Created worker: ‘ + worker.pid)
// 允許開機時間
workers[worker.pid] = {worker:worker, lastCb: new Date().getTime()-1000}
worker.on(‘message’, function(m) {
if(m.cmd === “reportMem”) {
workers[m.process].lastCb = new Date().getTime()
if(m.memory.rss rssWarn) {
console.log(‘Worker ‘ + m.process + ‘ using too much memory.’)
}
}
})
}
以「.jss」結尾的文件也是javascript腳本么?與「.js」結尾的腳本有何不同以及其主要用途。
我覺的看文件不是看擴展名而是看裏面的內容 你也可以把「.js」改成「.ssfsfsd」照樣可以放到網頁上當javascript腳本用 擴展名只是給該文件一個標識而已
關於JS中appendChild的用法
// 創建p節點
var para=document.createElement(“p”);
// 創建文本節點
var node=document.createTextNode(“這是新段落。”);
// 把文本節點添加到p節點裏
para.appendChild(node);
// 查找div1
var element=document.getElementById(“div1”);
// 把p節點添加到div1里
element.appendChild(para);
// 最終html結構
// div id=”div1″
// p id=”p1″這是一個段落。/p
// p id=”p2″這是另一個段落。/p
// p這是新段落。/p
// /div
// 你測試的代碼
// 創建文本節點
var node=document.createTextNode(“這是新段落。”);
// 查找div1
var element=document.getElementById(“div1”);
// 把文本節點添加到div1里
element.appendChild(node);
// 最終html結構
// div id=”div1″
// p id=”p1″這是一個段落。/p
// p id=”p2″這是另一個段落。/p
// 這是新段落。
// /div
什麼是’js”是什麼格式嗎
js指的是網頁Java Script客戶端腳本文件。
js文件常見的有兩種用法。
1.在網頁里使用:一般不能直接打開,只有配合網頁使用,如果是想破解某網站的在線電影等,僅從js文件入手可能性不大,建議使用專門的抓取工具,如wpe,抓取網絡封包,再對封包分析,js可以使用記事本編輯。
2.在單機使用,一般可以用來做為一個可執行程序直接雙擊就可以運行,當然前提是計算機沒有安裝網頁設計軟件。
以js為擴展名的文件是用javascript腳本語言編寫的.
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/152068.html