aaaaaa 发表于 2011-03-20 10:32

这个stack trace貌似其他人没碰到过,如果还有Seg Fault, 还请协助尽量帮忙定位一下。

v2.1.7明后天发布,对性能有些提升。

你的情况下,1.5G内存是否少了?根据计算默认配置TS需要大约300-500M内存,其他内存基本都可以分配给RAM Cache。你可以根据系统的内存使用情况来找到一个安全值

xiaxueyi 发表于 2011-03-28 10:31

回复 21# aaaaaa

   
CU改版,版面都找不到了...

从我测试的情况下,ts除ram缓存外用的内存不止500M。刚编译了2.1.7,设1.8G的ram缓存,半小时ts总内存就达到2701m了,还在不断增长。ram缓存再设大的话,很容易总内存到3G然后挂了。32位系统,没办法。

另外发现新版貌似有两块磁盘io分配不均的现象,缓存大小设的是一样的,但是io利用率差别比较大,之前没有这种情况。

之前的Segmentation 是在url_host_set 函数里,不知道和remap.config设置有没关系:
regex_map http://(.+$) http://$1 @action=deny
regex_map http://(+) http://$1

rhinux 发表于 2011-03-28 18:25

回复 1# aaaaaa


    hi,现在在配置parent的时候出现问题了
records.config开启了parent_proxy
repmap.config#
regex_map http://.+.rhinux.cn:8080/http://172.16.27.55
regex_reverse_map http://172.16.27.55http://.+.rhinux.cn:8080/parent.configdest_domain=.parent="172.16.27.87:80"87是一台开启80端口的trafficserver,配置除了端口,已经是否开启parent_proxy之外和子节点相同。

目前的情况访问请求http://abc.rhinux.cn:8080/a.html 也就是子节点的时候,没有任何反应,日志里记录是1301304861.909 30086 172.16.27.89 ERR_CLIENT_ABORT/000 0 GET http://172.16.27.55/a.htm - EMPTY/- - -
上面有设置问题吗?
开启debug后看到的错误 Server {34393309632} DEBUG: (dns) DNS error 2 for
Server {34393309632} DEBUG: (dns) DNS error 2 for
Server {34393309632} DEBUG: (dns) DNS error 2 for
以下是将172.16.27.55 换成域名
Server {34393309632} DEBUG: (dns) DNS error 3 for
Server {34393309632} DEBUG: (dns) DNS error 3 for 所有涉及域名的设置都设置在hosts中,源服务器,子节点,父节点的hosts都相同

rhinux 发表于 2011-03-28 18:26

补充一点我用的是freebsd8.2+ts2.1.6

aaaaaa 发表于 2011-03-28 21:11

回复 22# xiaxueyi


    好像的确是读写分配有问题唉。2.1.7有些改动涉及到底层的分配等,我会尽快跟大家一起debug这个问题。

aaaaaa 发表于 2011-03-28 21:27

本帖最后由 aaaaaa 于 2011-03-28 22:37 编辑

回复 23# rhinux


    关于parent的用法,主要是用作map规则完成后取内容的服务器映射。我觉得你的问题还在于如何使用remap和parent的关系。
通常的用法是:
子TS服务器:
remap.config:
map regex_map http://.+.rhinux.cn:8080/http://myownhost.myonwdomain

parent.config:
dest_domain=myownhost.myonwdomainparent="172.16.27.87:80"

父TS服务器:
remap.config:
http://myownhost.myonwdomain/ http://172.16.27.55

这样的话,子TS将所有的url都映射到http://myownhost.myonwdomain/XXXX,然后从父TS里取这个内容。父TS根据remap直接从172.16.27.55取。其关系是,子TS在取父TS的内容前已经做完了该做的remap转换。你需要考虑到这点。
看看是不是你需要的?

另外:
proxy.config.url_remap.pristine_host_hdr 这个参数默认是1,即remap规则只是起到制定ip地址的转换作用。如果设置为0,则可以进行url的转换。灵活运用这个参数和remap的配合,将可以很好的解决所有的需求。

TS目前不采用标准的/etc/hosts文件,除非你使用了特别的dns解析库。

rhinux 发表于 2011-03-28 22:50

本帖最后由 rhinux 于 2011-03-28 23:09 编辑

回复 26# aaaaaa


    感谢回复,
以下日志是上周测试的时候的

子TS日志1300951004.057 11 172.16.27.89 TCP_MISS/404 421 GET http://172.16.27.55/get/pathjpg/Autumn.jpg - PARENT_HIT/172.16.27.87 text/html -
父TS日志1300948204.924 0 172.16.27.88 ERR_CONNECT_FAIL/404 413 GET http://172.16.27.55/get/myjpg/Azul.jpg - NONE/- text/html -
但今天在测试的时候发现我子TS上的包根本就没发往父TS
只有子TS的日志1301315542.327 28693 172.16.27.89 ERR_CLIENT_ABORT/000 0 GET http://172.16.27.55/a.htm - EMPTY/- - -
(另外按你的配置,理论上好像如果父TS down了子TS无法直接将请求发往源服务器(27.55))


在手册里也没看到作为子TS的remap.config应该如何配置,目前我的认识停留在 子TS相比父TS只是开启parent_proxy和增加parent.config的区别。理论上应该够了,子TS先匹配自己的remap,因为开启了parent_proxy所以再看parent.config,匹配到一条规则,将请求转给parent.config指定的父TS(这个过程应该有程序完成host转换啥的吧)

rhinux 发表于 2011-03-29 10:58

已经搞定了,子TS不发包是端口hang住了,做了一件丢人的事情,重启了机器,
至于我的质疑说父TS挂了切换到original服务器,我在parent.config配置中吧original服务器也加在parent list中了,呵呵。谢谢楼主的回答

xiaxueyi 发表于 2011-03-29 11:59

回复 26# aaaaaa


    说到TS的map和不支持hosts文件,我不太能理解。貌似外国人做CDN都喜欢取源使用的host和公开的host不一样,那设想一下大一点的cache系统,第一层memcache,第二层同机房硬盘cache,第三层多线机房,然后才到真实源,那光做map就得累死。

昨天测试2.1.7,跑了一晚上,TS挂了n多次,大部分都是内存跑到3G挂了,还出现了上次 url_host_set memcpy错误,还出现了一次


NOTE: Traffic Server received Sig 11: Segmentation fault
/usr/local/ts/bin/traffic_server - STACK TRACE:

/usr/local/ts/bin/traffic_server(_ZN8DNSEntry4postEP10DNSHandlerP7HostEntb+0x5d5)

/usr/local/ts/bin/traffic_server(_ZN7EThread13process_eventEP5Eventi+0x1ff)
/usr/local/ts/bin/traffic_server(_ZN7EThread7executeEv+0x4be)
/usr/local/ts/bin/traffic_server(main+0x1245)
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe0)
/usr/local/ts/bin/traffic_server
/usr/local/ts/bin/traffic_server



这时内存总体使用还是安全的,不是内存耗尽的原因。还好Ts重启比较快,不需要像squid那样重建缓存索引,不然不敢在生产中用了。

总结一下我测试下来的问题:
1.    容易core掉
2.    感觉内存有泄漏,设了1.5G的ram cache,总内存使用很容易达到3G
3.    2.1.7 磁盘IO分配不均

希望能早日测试新版,谢谢!

aaaaaa 发表于 2011-03-29 22:51

你这个core的问题和IO不均衡的问题已经开了bug。
内存的问题需要长期的项目去解决,我希望是一个自动优化机制,来替代目前的固定大小,因为TS和操作系统都会由于系统负载的不同而使用不同的内存,并且可能活动幅度比较大,从道理上讲,制定一个安全的保留空间给TS,其他都用上应该是一个很好的方式。我希望这个问题照这个方向解决。

如有其他crash的问题,还希望你能够即时贴上来。
页: 1 2 [3] 4 5 6 7 8 9 10 11 12
查看完整版本: Apache Traffic Server 3.2.0 正式版,附srpm包