2016-07-10 13 views
6

Để ngắn gọn, tôi đã thiết lập dự án không có lối vào phía trước buồm với bộ điều khiển cơ bản và nhấn nó với loadtest, bộ nhớ tiếp tục tăng và không có dấu hiệu ổn định. Tôi đã đọc bài viết trước và đã vô hiệu hóa grunt, phiên, ổ cắm, pubsub và vvBộ nhớ tăng không ngừng với ứng dụng Sails cơ bản

Setup:

Sails phiên bản: v0.12.3

Node phiên bản: v4.4.7

NPM phiên bản: v2.15.8

tái sản xuất:

tạo cánh buồm mới dự án

sails new Project --no-frontend 

chỉnh sửa .sailsrc:

{ 
    "generators": { 
    "modules": {} 
    }, 

    "hooks": { 
    "session": false, 
    "sockets": false, 
    "pubsub": false, 
    "grunt": false, 
    "i18n": false 
    } 
} 

thêm controllers/TestController.js:

module.exports = { 
    hi: function (req, res) { 
    return res.send("Hi there!"); 
    } 
}; 

chạy thử tải:

var loadtest = require('loadtest'); 

var host = 'http://localhost:1337'; 

var options = { 
    url: host + '/test/hi', 
    requestsPerSecond: 50 
}; 

loadtest.loadTest(options, function(error, result) 
{ 
    if (error) 
    { 
     return console.error('Got an error: %s', error); 
    } 
    console.log('Tests run successfully: '+result); 
}); 

Cảm ơn bạn về sự giúp đỡ của bạn.

Mars

+0

bạn có biết cách cấu hình ứng dụng nodejs không? – AJS

Trả lời

3

Tôi biết điều này là có khả năng để có được một cuộc bỏ phiếu xuống vì không một câu trả lời cụ thể hoặc ném ra liên kết nhưng chủ đề này đã được bao phủ bởi Mike một số lần qua các vấn đề github. Vì có rất nhiều biến để xem xét anh ta đã chuẩn bị một hướng dẫn chụp rắc rối, trong khi tôi có thể sao chép và dán ở đây tôi không nghĩ rằng đó là sử dụng tốt thời gian anyones. Vì vậy, đây là liên kết: https://github.com/balderdashy/sails/issues/2779#issuecomment-209735285

Mike đặc biệt đề cập đến việc nêu vấn đề về dự án nếu bạn cảm thấy có rò rỉ chính hãng không được đề cập trong hướng dẫn khắc phục sự cố. Tôi nghĩ rằng bạn sẽ chỉ nhận được các khuyến nghị điển hình trên stack vì vậy tôi nghĩ rằng bạn đang tốt hơn đặt trực tiếp đến github nếu vấn đề của bạn không cố định.

3
  1. Lấy một vài bãi chứa trước, trong và sau khi kiểm tra tải của bạn.
  2. Kiểm tra trong các công cụ dành cho Chrome bằng cách tải vùng chứa đống
  3. Báo cáo rò rỉ!

https://github.com/bnoordhuis/node-heapdump

Ngoài ra, bạn có thể thử buộc GC mỗi 60 giây hoặc một cái gì đó bằng tay bằng cách thiết lập một thời gian chờ, để xem nếu bộ nhớ đi xuống sau khi GC (có nghĩa là không có một sự rò rỉ).

nút --expose-gc script.js

Và sau đó từ bên trong javascript chỉ làm:

setTimeout(function(){ 
    global.gc(); 
},60000); 
0

tôi vẫn không thể tìm ra những gì đang xảy ra với sails.js sau khi điều tra trong vòng một tháng .Tôi kết thúc việc viết lại mọi thứ với khung công tác cơ bản và tôi rất vui vì tôi đã làm điều đó.

Các vấn đề liên quan