复制代码代码如下:
var memcache = ต้องการ ('memcache')
, http = reghed ('http')
, url = ต้องการ ('url')
, qs = ต้องการ ('querystring')
, memsettings = {พอร์ต: 2000, โฮสต์: '10 .6.0.6 '}
, httpsettings = {พอร์ต: 3000}
, cacheObject = {}
, httpserver
, ลูกค้า
, requesthandler;
ไคลเอนต์ = ใหม่ memcache.client (memsettings.port, memsettings.host);
-
client.on ('Connect', function () {
client.connection = true;
-
client.on ('close', function () {
// ไม่มีข้อโต้แย้ง - การเชื่อมต่อถูกปิด
client.connected = false;
-
ฟังก์ชั่น getData (คีย์, wrapper, res) {
client.get (คีย์, ฟังก์ชัน (ข้อผิดพลาด, ผลลัพธ์) {
// การโทรกลับทั้งหมดมีสองข้อโต้แย้ง
// 'ผลลัพธ์' อาจมีสิ่งที่ไม่ค่อยดี แต่
// ไม่ใช่ข้อผิดพลาดจริงๆเช่น 'not_stored'
ถ้า (! ข้อผิดพลาด) {
ถ้า (ผลลัพธ์) {
CacheObject [key] = ผลลัพธ์;
res.write (wrapper + '(' + result + ')');
} อื่น {
res.write ('ไม่มีข้อมูล');
-
res.end ();
-
-
/*ถ้า (cacheObject [key]) {
Response.write (CacheObject [key]);
Response.end ();
} อื่น {
client.get (คีย์, ฟังก์ชัน (ข้อผิดพลาด, ผลลัพธ์) {
// การโทรกลับทั้งหมดมีสองข้อโต้แย้ง
// 'ผลลัพธ์' อาจมีสิ่งที่ไม่ค่อยดี แต่
// ไม่ใช่ข้อผิดพลาดจริงๆเช่น 'not_stored'
ถ้า (! ข้อผิดพลาด) {
CacheObject [key] = ผลลัพธ์;
cacheObject [key] ['timeoutid'] = settimeout (function () {
client.get (คีย์, ฟังก์ชัน (ข้อผิดพลาด, ผลลัพธ์) {
ถ้า (! ข้อผิดพลาด) {
CacheObject [key] = ผลลัพธ์;
-
-
-
Response.write (ผลลัพธ์);
Response.end ();
-
-
-
-
httpserver = http.createserver (ฟังก์ชั่น (req, res) {
var urlobj, queryobj;
urlobj = url.parse (req.url);
res.writehead (200, {"content-type": "text/javascript; charset = utf-8"});
queryobj = qs.parse (urlobj.Query);
path = queryobj.pathName;
if (queryobj.gid) {
getData (queryobj.gid, queryobj.callback || 'callback', res);
} อื่น {
res.write ('ไม่มีอินพุต');
res.end ();
-
-
switch (urlobj.pathName) {
กรณี '/pai':
res.write (urlobj.pathName);
หยุดพัก;
กรณี '/Qiang':
res.write (urlobj.pathName);
หยุดพัก;
ค่าเริ่มต้น:
res.write ('default');
หยุดพัก;
-
res.end ();
-
-
client.connect ();
httpserver.listen (httpsettings.port);
console.log ('เซิร์ฟเวอร์ http ฟังบน' + httpsettings.port);