关于其他一些SO问题,我正在开发一个网站监控应用程序作为宠物项目,目的是了解有关Node.js + Redis的更多信息.
我计划的是让用户添加网址并将其添加到Redis SET.每分钟,我都会得到SET结果,执行HTTP Get请求并打印响应.
这似乎工作正常,但是,我有几个问题:
鉴于Redis SET不允许重复键(这将使我无法对同一URL执行请求),如何控制用户何时从其帐户中删除URL但另一个用户具有相同的URL?我可以INCR在URL密钥中使用值,以便知道有多少用户在其帐户中拥有该URL?
鉴于我每分钟都做一次HTTP请求,并且我想使用Redis来保存结果(响应时间,上/下等),在Redis中保存所有数据的最佳方法是什么(每个URL的请求结果都是分钟)?我应该用一个独特的Redis密钥保存每个响应吗?
为了实时向用户显示结果,查询结果并实时解析结果的最佳方法是什么?
谢谢您的帮助.
如何将此正则表达式设置为不区分大小写?
var message_id = result.match(/Message-Id\:(.*)/)[1].replace(/^\s+/, '');
Run Code Online (Sandbox Code Playgroud)
谢谢
有时我的代码中有一个使我的服务器崩溃的typerror.我想知道是否有我可以添加的内容,以便在发生这种情况后不会崩溃.以下是崩溃的更多细节:
2011-06-08T11:23:09+00:00 app[worker.1]: /app/lib/imap.js:1019
2011-06-08T11:23:09+00:00 app[worker.1]: type: cur[0].toLowerCase(), subtype: cur[1].toLowerCase(),
2011-06-08T11:23:09+00:00 app[worker.1]: ^
2011-06-08T11:23:09+00:00 app[worker.1]: TypeError: Object FILENAME,Oportunidad especial de has no method 'toLowerCase'
2011-06-08T11:23:09+00:00 app[worker.1]: at parseBodyStructure (/app/lib/imap.js:1019:53)
2011-06-08T11:23:09+00:00 app[worker.1]: at parseBodyStructure (/app/lib/imap.js:1090:23)
2011-06-08T11:23:09+00:00 app[worker.1]: at parseBodyStructure (/app/lib/imap.js:1000:18)
2011-06-08T11:23:09+00:00 app[worker.1]: at parseBodyStructure (/app/lib/imap.js:994:13)
2011-06-08T11:23:09+00:00 app[worker.1]: at parseFetch (/app/lib/imap.js:974:29)
2011-06-08T11:23:09+00:00 app[worker.1]: at CleartextStream.<anonymous> (/app/lib/imap.js:180:11)
2011-06-08T11:23:09+00:00 app[worker.1]: at CleartextStream.emit (events.js:64:17)
2011-06-08T11:23:09+00:00 app[worker.1]: at CleartextStream._push (tls.js:285:31)
2011-06-08T11:23:09+00:00 app[worker.1]: at SecurePair._cycle (tls.js:565:20)
2011-06-08T11:23:09+00:00 app[worker.1]: at EncryptedStream.write (tls.js:97:13)
2011-06-08T11:23:09+00:00 heroku[worker.1]: Process exited
2011-06-08T11:23:09+00:00 heroku[worker.1]: …Run Code Online (Sandbox Code Playgroud) import imaplib, re
import os
import time
import socket
imap_host = 'imap.gmail.com'
mail = imaplib.IMAP4_SSL(imap_host)
mail.login("xxx@example.com", "sddd")
while True:
try:
print 'Connecting to Inbox..'
mail.select("inbox") # connect to inbox.
result, data = mail.uid('search', None, 'UNSEEN')
uid_list = data[0].split()
print len(uid_list), 'Unseen emails.'
if len(uid_list) > 20:
os.system('heroku restart --app xx-xx-203')
time.sleep(30)
except:
print 'Error'
imap_host = 'imap.gmail.com'
mail = imaplib.IMAP4_SSL(imap_host)
mail.login("xxx@example.com", "xxx")
pass
Run Code Online (Sandbox Code Playgroud)
工作完美,但有时崩溃:
Restarting processes... done
Connecting to Inbox..
Error
Traceback (most recent call last):
File "gmail_new9.py", line 24, …Run Code Online (Sandbox Code Playgroud) 我需要使用Sinatra为我的应用程序创建一个基本的用户管理系统,但我不确定如何考虑它.
它需要:
注册用户
登录用户
我该怎么想呢?这应该不难,我只是对这一切都很新.
谢谢.
我想MONGOHQ_URL在我的sinatra应用程序中设置以便能够这样做:
uri = URI.parse(ENV['MONGOHQ_URL'])
Run Code Online (Sandbox Code Playgroud)
我该如何设置MONGOHQ_URL?
我正在使用Mongoose + CoffeeScript,当我尝试将嵌入文档添加到我的Schema时,代码被错误地转换.
例如:
AccountSchema = new Schema # Companhia
name : String
users : [UserSchema]
custphones : [CustphoneSchema]
Run Code Online (Sandbox Code Playgroud)
变
AccountSchema = new Schema({
name: String({
users: [UserSchema],
custphones: [CustphoneSchema]
})
});
Run Code Online (Sandbox Code Playgroud)
应该成为
AccountSchema = new Schema({
name: String,
users: [UserSchema],
custphones: [CustphoneSchema]
});
Run Code Online (Sandbox Code Playgroud)
为什么会这样?
谢谢