2013-04-04 60 views
-3

我正在使用这个简单的代码。如何禁用READ_XBUF缓存?

#include "gwan.h" 

int main(int argc, char *argv[]) 
{ 
    xbuf_t *reply = get_reply(argv), *read_buff; 

read_buff = (xbuf_t*)get_env(argv, READ_XBUF); 
xbuf_cat(reply, "START\n"); xbuf_ncat(reply, read_buff->ptr, read_buff->len); xbuf_cat(reply, "END\n"); 

// this line is important if I don't use read_buff everything seems OK 
// but I need parse read_buff :(
printf("%s\n", read_buff->ptr); // this line is most important 

return 200; 
} 

起初一切似乎都OK

壳:〜在seq 0 1为I $;做卷曲-A“”-H“TST:$ {I}”'http://test.com:8080/?read_buf.c&scp=3';做

START 
GET /?read_buf.cscp=3HTTP/1.1 
Host: test.com8080 
Accept: */* 
TST: 0 

END 
START 
GET /?read_buf.cscp=3HTTP/1.1 
Host: test.com8080 
Accept: */* 
TST: 1 

END 

执行我的循环再

START 
GET /?read_buf.cscp=3HTTP/1.1 
Host: test.com8080 
Accept: */* 
TST: 0 

END 
START 
GET /?read_buf.cscp=3HTTP/1.1 
Host: test.com8080 
Accept: */* 
TST: 1 

END 

执行我的循环再

START 
GET /?read_buf.cscp=3HTTP/1.1 
Host: test.com8080 
Accept: */* 
TST: 0 

END 
START 
GET /?read_buf.cscp=3HTTP/1.1 
Host: test.com8080 
Accept: */* 
TST: 1 

END 

但我的问题。 TST仍然是0?

执行我的循环再

START 
GET /?read_buf.cscp=3HTTP/1.1 
Host: test.com8080 
Accept: */* 
TST: 0 

END 
START 
GET /?read_buf.cscp=3HTTP/1.1 
Host: test.com8080 
Accept: */* 
TST: 0 

END 

执行我的循环再

START 
GET /?read_buf.cscp=3HTTP/1.1 
Host: test.com8080 
Accept: */* 
TST: 0 

END 
START 
GET /?read_buf.cscp=3HTTP/1.1 
Host: test.com8080 
Accept: */* 
TST: 0 

END 

为什么?由于缓存?如何禁用它?

PS:这个servlet是因为这个问题被张贴后我们通过电子邮件回答了它的G-WAN 4.3.14

+0

我的代码是servlet。 – user2244023 2013-04-04 09:47:32

+0

顺便说一下,每块之间的时间超过200毫秒! – user2244023 2013-04-04 09:58:55

+0

这是微缓存问题。 – user2244023 2013-04-04 11:07:44

回答

0

执行,毫无疑问对其真正目标,这是非常遥远从所谓的技术借口。

为了让人们做出判断,这里是我们通过电子邮件发送的那家伙的答复:


所有用户将看到你的脚本显示。

而你的脚本没有使用任何用户会话。在并发下,此脚本以相同的方式为所有客户端显示相同的信息。

G-WAN会检测到,并且由于脚本速度较慢(可能是由于打印到控制台),因此会触发其缓存。

真实世界中不存在这样的应用程序:您可能会使用个性化的URI参数,POST实体甚至Cookies--这些是您的测试小心避免的 - 因此无关紧要。

此外,你可能会受益于阅读的G-WAN的常见问题:

http://gwan.ch/faq#cache

最后,G-WAN未创建与任何现有的Web框架进行竞争。我们的目标是只是为了满足我们自己的项目的需要:

http://twd-industries.com/

这里G-WAN适合这个任务,非常好,因为我们的意图写的正确使用它。