我正在尝试优化我的网站的速度,我正在使用pingdom.com上的伟大工具.现在,加载页面所需时间的50%以上是"等待"时间,如下面的屏幕截图所示.我该怎么做才能减少这个?此外,这个数字有多典型?这方面有基准吗?谢谢!
编辑: 好的..让我澄清一些事情.没有服务器端脚本或数据库调用正在进行.只是HTML,CSS,JS和图像.我已经做了一些事情,比如将js推到body标签的末尾以获得并行下载.我知道main.html和templates.html通过在js.js下载后同步完成来增加整体等待时间,这不是问题.我很惊讶每个请求有多少"等待"时间.服务器距离会影响这个吗?如果在共享服务器上,这会影响等待时间吗?是否有任何悬而未决的成果可以解决这些问题?
试图做npm install steroids -g
并遇到两种类型的错误:
第一名:500
npm ERR! registry error parsing json
npm http 500 https://registry.npmjs.org/cardinal
npm ERR! registry error parsing json
npm http 500 https://registry.npmjs.org/glob
npm ERR! registry error parsing json
npm http 500 https://registry.npmjs.org/chmodr
npm ERR! registry error parsing json
npm http 500 https://registry.npmjs.org/fstream
npm ERR! registry error parsing json
Run Code Online (Sandbox Code Playgroud)
当我在浏览器中访问这些网址时,我收到以下消息:
内部路由错误
抱歉,我们无法连接到目标服务器.
我们刚收到这个问题的通知.我们会尽快纠正.
如果您有任何疑问,请随时与我们联系:support@iriscouch.com
第二:503
npm http 503 https://registry.npmjs.org/forever-agent
npm ERR! registry error parsing json
npm http 503 https://registry.npmjs.org/cheerio
npm ERR! registry error parsing json
npm …
Run Code Online (Sandbox Code Playgroud) 我在将XHR responseType设置为"json"时遇到问题.如果我把它留空字符串它工作正常xml.responseType = "";
但是当我将它设置为"json"时,我得到控制台错误消息SYNTAX_ERR:DOM异常12.
.js文件:
var xml = new XMLHttpRequest();
xml.open("GET", "test.php", true);
xml.responseType = "json";
xml.send();
Run Code Online (Sandbox Code Playgroud)
.php文件:
<?php
$foo = "{\"key1\":\"val1\", \"key2\":\"val2\"}";
echo $foo;
?>
Run Code Online (Sandbox Code Playgroud)
不知道发生了什么......有什么想法吗?
我需要在html标签上设置属性,或者在Meteor.js应用程序中设置文档的body标签.
具体来说我想拥有<html dir="rtl">
或<body dir="rtl">
..
尝试后者,我收到控制台消息:
While building the application:
client/views/layout/layout.html:7: Attributes on <body> not supported
=> Your application has errors. Waiting for file change.
Run Code Online (Sandbox Code Playgroud)
那你怎么做的?
你怎么称呼这些模式?他们之间有什么区别?你什么时候用?还有其他类似的模式吗?
(function() {
console.log(this); // window
})();
(function x() {
console.log(this); // window
})();
var y = (function() {
console.log(this); // window
})();
var z = function() {
console.log(this); // window
}();
Run Code Online (Sandbox Code Playgroud)
编辑:我刚刚通过在最后两种情况下命名函数,发现了另外两种看似多余的方法...
var a = (function foo() {
console.log(this); // window
})();
var b = function bar() {
console.log(this);
}();
Run Code Online (Sandbox Code Playgroud)
EDIT2: 下面是@GraceShao提供的另一种模式,它使函数可以在函数范围之外访问.
(x = function () {
console.log(this); // window
console.log(x); // function x() {}
})();
console.log(x); // function x() {}
// I played with this as well …
Run Code Online (Sandbox Code Playgroud) 有什么区别:
Mustache.compile()
,
Mustache.parse()
和
Mustache.render()
在新的mustache.js版本0.5.0中,也许对于奖励积分,你可以告诉我们解析和编译之间的区别是什么.
我注意到在github上,他们在他们想要透明的某些元素上使用0.0001而不是0的不透明度.这是为什么?
我在设置Apache以提供静态Django文件时遇到了麻烦.我在共享主机上,无法访问Apache配置文件.所有的例子都Alias
在Apache配置文件中使用,所以我试图弄清楚如何在.htaccess中使用mod_rewrite.
我的setup.py看起来像这样:
STATIC_ROOT = '/home2/usr/public_html/mydjangoproject/static'
STATIC_URL = '/static/'
Run Code Online (Sandbox Code Playgroud)
我python manage.py collectstatic
在终端中运行并且它做了它的事情,所以现在我有一个/public_html/mydjangoproject/static
目前有子文件夹admin
及其内容的文件夹.
现在我正在尝试将apache配置为仅提供静态文件而不是通过mod_wsgi,正如它在此处的文档中所述:
我们强烈建议使用django.contrib.staticfiles来处理管理文件(以及上一节中概述的Web服务器;这意味着使用collectstatic管理命令收集STATIC_ROOT中的静态文件,然后配置Web服务器以进行服务STATIC_URL的STATIC_ROOT)
为此,我在.htaccess文件中添加了第3行,如下所示.这个文件是/home2/usr/public_html/mydjangoproject/.htaccess
我的.htaccess文件:
AddHandler fcgid-script .fcgi
RewriteEngine On
RewriteRule /static/ /home2/usr/public_html/mydjangoproject/static
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]
Run Code Online (Sandbox Code Playgroud)
请注意,我尝试使用和不使用尾部斜杠的第3行,无效.
当我访问www.mysite.com/mydjangoproject/static/时,我收到500内部服务器错误.同样,管理页面仍然没有获得它需要的css文件.这是怎么回事?
假设我有一个对象,有一些属性和方法:
var Form = {
name: 'sign-up',
show: function() {...},
hide: function() {...},
validate: function() {...},
updateCurrency: function() {...},
handleCheckBox: function() {...}
}
Run Code Online (Sandbox Code Playgroud)
现在我想在我的表单中发生某些事件时调用不同的方法,如下所示:
$('#country-select').bind('change', function() {
Form.updateCurrency();
});
$("input[type='checkbox']").bind('change', function() {
Form.handleCheckBox();
});
Run Code Online (Sandbox Code Playgroud)
我有很多这些事件监听器,坦率地说,我发现它们像这样一个接一个地列出,并没有直接与它们相关的对象联系在一起.有没有更优雅的方法将它们封装在我的对象文字中Form
?有最好的做法吗?
链接到文章:http://www.html5rocks.com/en/tutorials/eventsource/basics/
node.js SSE服务器在该示例中不起作用.我最终打开了一个连接/events
,但浏览器没有收到任何响应.
SSE-server.js
var http = require('http');
var sys = require('sys');
var fs = require('fs');
http.createServer(function(req, res) {
//debugHeaders(req);
if (req.headers.accept && req.headers.accept == 'text/event-stream') {
if (req.url == '/events') {
sendSSE(req, res);
} else {
res.writeHead(404);
res.end();
}
} else {
res.writeHead(200, {'Content-Type': 'text/html'});
res.write(fs.readFileSync(__dirname + '/sse-node.html'));
res.end();
}
}).listen(8000);
function sendSSE(req, res) {
res.writeHead(200, {
'Content-Type': 'text/event-stream',
'Cache-Control': 'no-cache',
'Connection': 'keep-alive'
});
var id = (new Date()).toLocaleTimeString();
// Sends a SSE every …
Run Code Online (Sandbox Code Playgroud) javascript ×6
apache ×2
node.js ×2
.htaccess ×1
ajax ×1
css ×1
django ×1
function ×1
html5 ×1
jquery ×1
meteor ×1
mod-rewrite ×1
mustache ×1
networking ×1
npm ×1
oop ×1
performance ×1
python ×1
steroids ×1
templates ×1