发布于 2015-01-21 01:28:27 | 339 次阅读 | 评论: 0 | 来源: 网友投递
Apache Traffic Server 反向代理和缓存服务器
Apache Traffic Server(ATS或TS)是一个高性能的、模块化的HTTP代理和缓存服务器,与 Nginx 和 Squid 类似。Traffic Server最初是 Inktomi 公司的商业产品,该公司在2003 年被 Yahoo 收购, 2009 年 8月 Yahoo 向 Apache 软件基金会(ASF)贡献了源代码,并于 2010 年 4月成为了 ASF的顶级项目(Top-LevelProject)。 Apache TrafficServer 现在是一个开源项目,开发语言为C++。
Apache Traffic Server 5.2.0 发布,Traffic Server 是一套快速、模块化的兼容 HTTP/1.1 的反向代理服务器,与 Nginx 和 Squid 类似,目前该项目已经转到 Apache 基金会。
该版本包含 bug 修复,新特性和改进,详细介绍请看这里。
完整的记录包括:
[TS-1476] - static analysis: argument with 'nonnull' attribute passed null
[TS-1477] - static analysis: dead store, dead assignment
[TS-1478] - static analysis: dead store, dead increment
[TS-1479] - static analysis: dead store, dead initialization
[TS-1480] - static analysis: logic error, called C++ object pointer is null
[TS-1481] - static analysis: logic error, dereference of null pointer
[TS-407] - traffic_server not using proxy.config.syslog_facility
[TS-898] - Fix potential problems from coverity scan
[TS-1475] - Static analysis: clean up all clang and coverity reports
[TS-1535] - FetchSM process_fetch_write should ignore event TS_EVENT_VCONN_WRITE_READY
[TS-1570] - remap doesn't reject request whose Host has extra characters after port (like "test.com:80xxx")
[TS-2009] - Disallow � in all headers
[TS-2095] - autoconf warnings related to unordered_map
[TS-2883] - core dump in TSFetchCreate()
[TS-2938] - Core dump in HttpSM::redirect_request when handling 307
[TS-2959] - Compiler warnings from gcc 4.9.1
[TS-3020] - Blind Tunnel fake request URL is IPv4 only
[TS-3026] - SPDY not forwarding Accept-Encoding headers for Firefox
[TS-3035] - Double logging on errored transactions
[TS-3039] - OCSP stapling memory leaks
[TS-3042] - Fix the static traffic_server build
[TS-3048] - Removed hard coded directory in TSPluginDirGet Regresson Test
[TS-3051] - Bad if for perror on AIO.cc
[TS-3064] - Expose TS_EVENT_VCONN_ACTIVE_TIMEOUT in headers
[TS-3065] - Delete the header "Transfer-Encoding" when the error body was set
[TS-3066] - Latest master does not compile on OmniOS
[TS-3073] - tr-pass: non-http request gets blocked with error message instead of being tunnelled to the origin server
[TS-3074] - Regression fails on FreeBSD after TS-2736
[TS-3076] - Coverity warning and build error on RHEL6
[TS-3081] - ATS doesn't send FIN flag to indicate data complete to the client in some cases..
[TS-3083] - Double free of FetchSM
[TS-3084] - Forwarding mode breaks iPhone activation (gs.apple.com)
[TS-3085] - Large POSTs over (relatively) slower connections failing in ats5
[TS-3087] - Flow control can stall at low water mark values
[TS-3092] - SSL_CTX_set_timeout should be set even if Server Side Session Cache is disabled
[TS-3097] - Reloading SSL certificates crashes
[TS-3098] - Fix the ability to configure keep-alive on post to the origin
[TS-3105] - Combination of fixes for TS-3084 and TS-3073 causing asserts and segfaults on 5.1 and beyond
[TS-3106] - ATS error responses do not flush request body
[TS-3109] - Build broken on ubuntu saucy64
[TS-3112] - core dump in FetchSM.cc
[TS-3120] - Overlapping rank in config.remap when using .include directives
[TS-3121] - Seeing garbage SPDY responses sometimes
[TS-3125] - SSL ctx is set to a constant allowing for potential inappropriate session reuse.
[TS-3129] - Parent proxy configuration does not work for incoming HTTPS requests
[TS-3130] - Core dump in Logging
[TS-3152] - We offer up H2-14 on current master, even when it's not working / supported
[TS-3179] - ats_scoped_fd should not provide boolean operators
[TS-3184] - SPDY window_update not triggered correctly..
[TS-3188] - Do not set half_close flag for short post on keep_alive client connections
[TS-3189] - Do not start reading data on server to user agent tunnel too soon
[TS-3190] - Change producer_run() to run a specific producer in more cases
[TS-3191] - Confusion with HTTP_TUNNEL_STATIC_PRODUCER
[TS-3196] - Core dump when handle event check_inactivity
[TS-3199] - HEAD request over SPDY hangs until inactivity timeout
[TS-3202] - HTTP Parsing should not allow CTL characters in the method
[TS-3205] - ASAN complaints on config reload freeing malloc'ed memory with delete[]
[TS-3207] - _xstrdup incorrectly calls ink_strlcpy with zero length strings
[TS-3221] - ink_atoi64 return 0 for input of 0..9
[TS-3223] - Fix the internal buffer sizing.
[TS-3226] - SSL data not read from the socket sometimes causing transactions to timeout
[TS-3244] - stats_over_http plugin does not get the optional path argument properly
[TS-3248] - 5.2.0 Segmentation fault due to TS-3189
[TS-3254] - AdminClient.pm broken in v5.2.0
[TS-3257] - possible memory leak in v5.2.0
[TS-3261] - possible slow leak in v5.2.0
[TS-3262] - Build failure using clang on Fedora 21
[TS-3265] - core dump in spdy_prepare_status_response_and_clean_request
[TS-3274] - Cache fixup can cause race condition in ram cache.
[TS-3276] - Cache incompatible between 5.0.1 and 5.2.0
[TS-3280] - Segfault in new freelist bulk freeing
[TS-1120] - Use ink_zero / ats_zero instead of calling memset when zeroing a variable or member.
[TS-2119] - mysql_remap plugin is in the source tree but does not build
[TS-2289] - Only support AIO_MODE_THREAD and AIO_MODE_NATIVE
[TS-2561] - Remove app-template from examples
[TS-2945] - Balancer plugin forward to other port than 80
[TS-2989] - ats_speed: implement In-Place-Resource-Optimization flow
[TS-3006] - Augment SNI callback processing
[TS-3023] - Support space separated values in inline plugin parameters in remap rules
[TS-3024] - Build with OPENSSL_NO_SSL_INTERN
[TS-3033] - Reimplement management protocol
[TS-3034] - Unanchored traffic_line metrics match
[TS-3041] - Add a way to show the installation layout
[TS-3044] - Linux native AIO should use eventfd if available to signal thread
[TS-3047] - The Makefile.am for traffic_top is inconsistent with the rest of the build system
[TS-3054] - Premature origin connection reset: flush partial data received to client before closing client connection
[TS-3068] - Remove usage of Boost
[TS-3069] - Add mysql_remap to automake
[TS-3070] - Consistent span configuration
[TS-3071] - Emit JSON numbers in stats_over_http
[TS-3093] - Add additional functionality to IpAddr.
[TS-3103] - Improve privilege elevation
[TS-3114] - Refactor IpMap to make the RB tree a shared data structure
[TS-3116] - Add support for tracking the use of the ioBuffers
[TS-3131] - Revise the certificates loading procedure
[TS-3135] - Disable SSLv3 by default
[TS-3143] - Convert DFA class to Regex and add support for JIT
[TS-3147] - Improvements to ESI plugin first byte flush feature
[TS-3150] - atscppapi should support streaming HTTP fetch
[TS-3154] - Add proxy port to access log
[TS-3155] - Add a value test method to the MIMEField class
[TS-3156] - Mutex[Try]Lock bool() operator change and unused API removal
[TS-3157] - standardize --help and --version options
[TS-3171] - Tidy up Tokenizer interface
[TS-3178] - ProxyAllocator improvements
[TS-3185] - Increase the default spdy initial_window_size_in setting to 1 mb
[TS-3194] - Remove unused proxy.config.plugin.plugin_mgmt_dir
[TS-3233] - Add drain option to restart API
[TS-1432] - API is missing TSMutexDestroy
[TS-2314] - New config to allow unsatifiable Range: request to go straight to Origin
[TS-2417] - Add forward secrecy support with DHE (SSL related)
[TS-2503] - Dynamic TLS record size tuning
[TS-2682] - Add per remap configuration / activation to background_fetch
[TS-2683] - Add some control for which content to activate the background_fetch plugin
[TS-2955] - Support variable expansion in set-redirect operator for header_rewrite
[TS-2956] - Add ssl_pre_handshake hook for better plugin access to SSL handling and allow for combination of blind tunnel and tunnel proxying
[TS-3059] - Logging API is missing a TSTextLogObjectRollingSizeMbSet()
[TS-3080] - OpenSSL implementation of TLS session cache is very slow.
[TS-3101] - Add TSHttpHdrHostGet
[TS-3108] - Add port matching condition to header_rewrite
[TS-3115] - Add server response time field in custom logging fields
[TS-3119] - Add option to support SO_LINGER to origin server
[TS-3127] - Add config for OpenSSL session cache auto clear
[TS-3139] - Add script to "replicate" a response across a set of proxy caches (using PUSH)
[TS-3145] - traffic_line backtrace support
[TS-3149] - Move Via decoder out of traffic_line, and make a separate traffic_via tool
[TS-3192] - Implement proxy.config.config_dir
[TS-3195] - Improved crash logging