RabbitMQ v3.6.3 RC2 发布,AMQP消息服务器

jopen 8年前
   <p style="text-align: center;"><img alt="" src="https://simg.open-open.com/show/03379414b3572debc448e04f087c61aa.jpg" /></p>    <p>RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。</p>    <p>AMQP 里主要要说两个组件:Exchange 和 Queue (在 AMQP 1.0 里还会有变动),如下图所示,绿色的 X 就是 Exchange ,红色的是 Queue ,这两者都在 Server 端,又称作 Broker ,这部分是 RabbitMQ 实现的,而蓝色的则是客户端,通常有 Producer 和 Consumer 两种类型。</p>    <p style="text-align: center;"><img alt="" src="https://simg.open-open.com/show/19415a1a9b5dc387fd8324f77163bd3a.jpg" /></p>    <h2>更新日志</h2>    <h3>2个新插件</h3>    <ul>     <li> <p><a href="/misc/goto?guid=4958991593409488326">rabbitmq_trust_store</a> which manages<br /> trusted client x509/TLS certificates</p> </li>     <li> <p><a href="/misc/goto?guid=4958991593498847468">rabbitmq_jms_topic_exchange</a> which, together with <a href="/misc/goto?guid=4958991847845523880">RabbitMQ JMS Java client</a>, provides support for the JMS 1.1 API<br /> atop RabbitMQ.</p> </li>    </ul>    <h3>Server</h3>    <p>Bug修复</p>    <ul>     <li> <p>(Newly elected) queue master process could terminate immediately after promotion GitHub issue: <a href="/misc/goto?guid=4958991593673611683">rabbitmq-server#812</a></p> </li>     <li> <p>Priority queue mirror could fail to synchronize after restart GitHub issues: <a href="/misc/goto?guid=4958991593762780868">rabbitmq-server#687</a>, <a href="/misc/goto?guid=4958991848040564527">rabbitmq-server#802</a></p> </li>     <li> <p>Shutdown timeouts for worker processes are now much more reasonable. Earlier the timeouts were virtually infinite which could lead to a deadlock during node shutdown. GitHub issue: <a href="/misc/goto?guid=4958991593856842099">rabbitmq-server#541</a></p> </li>     <li> <p>Purging of a durable queue could result in undelivered publisher confirms. Contributed by Andreas Ländle. GitHub issue: <a href="/misc/goto?guid=4958991848183917947">rabbitmq-server#854</a></p> </li>     <li> <p>Old incarnations of queue mirrors are now ensured to be stopped before new ones are started GitHub issue: <a href="/misc/goto?guid=4958991848305210758">rabbitmq-server#863</a></p> </li>    </ul>    <h3>功能增强</h3>    <ul>     <li> <p><code>systemd</code> support in Debian and RPM packages Contributed by Alexey Lebedeff (Mirantis). GitHub issue: <a href="/misc/goto?guid=4958991593937345930">rabbitmq-server#570</a></p> </li>     <li> <p>Debian repository and release artifacts are now signed with a <a href="/misc/goto?guid=4958991594016503546">new 4096-bit OpenGPG key</a> GitHub issue: <a href="/misc/goto?guid=4958991594106710235">rabbitmq-server#718</a></p> </li>     <li> <p>More resilient <code>worker_pool</code>, particularly important for LDAP plugin users GitHub issue: <a href="/misc/goto?guid=4958991594200941214">rabbitmq-server#834</a></p> </li>     <li> <p>More efficient file handle management GitHub issue: <a href="/misc/goto?guid=4958991594278002482">rabbitmq-server#828</a></p> </li>     <li> <p>Test suite ported to Common Test Plugin developers will be encouraged to port their test suites to Common Test in the future. GitHub issue: <a href="/misc/goto?guid=4958991594365655765">rabbitmq-server#725</a></p> </li>     <li> <p>Compilation on <a href="/misc/goto?guid=4958991848639321355">Erlang/OTP 19.0</a>. GitHub issue: <a href="/misc/goto?guid=4958991848744982671">rabbitmq-server#860</a></p> </li>    </ul>    <h3>插件管理</h3>    <p><strong>功能增强</strong></p>    <ul>     <li> <p>New API endpoint for reporting ETS tables memory consumption (absolute and relative) GitHub issue: <a href="/misc/goto?guid=4958991594451203226">rabbitmq-management#219</a></p> </li>     <li> <p>Node information page now includes GC and context switching stats GitHub issue: <a href="/misc/goto?guid=4958991848884770682">rabbitmq-management#208</a></p> </li>     <li> <p>Connection, channel, and queue information pages now include several runtime metrics GitHub issues: <a href="/misc/goto?guid=4958991848992028263">rabbitmq-management#209</a>, <a href="/misc/goto?guid=4958991849097926687">rabbitmq-management#210</a>, <a href="/misc/goto?guid=4958991849202339217">rabbitmq-management#211</a></p> </li>     <li> <p>Node metrics now include information about how long it takes to obtain a file handle GitHub issue: <a href="/misc/goto?guid=4958991849300188317">rabbitmq-server#825</a></p> </li>     <li> <p>Partial HTTPS support in <code>rabbitmqadmin</code> on Python versions older than <code>2.7.9 </code>GitHub issue: <a href="/misc/goto?guid=4958991594530857272">rabbitmq-management#225</a></p> </li>    </ul>    <p>Bug修复</p>    <ul>     <li> <p>A channel statistics-related memory leak fixed. GitHub issue: <a href="/misc/goto?guid=4958991594612469563">rabbitmq-management#214</a></p> </li>     <li> <p>Stats collectors event queue is now bounded (again) GitHub issue: <a href="/misc/goto?guid=4958991594703504537">rabbitmq-management#221</a></p> </li>     <li> <p>Stats table name was logged as a tuple GitHub issue: <a href="/misc/goto?guid=4958991594789536120">rabbitmq-management#206</a></p> </li>    </ul>    <h3>.NET Client</h3>    <p>Bug修复</p>    <ul>     <li> <p>Setting user-provided connection name didn't have an effect. GitHub issue: <a href="/misc/goto?guid=4958991594878687112">rabbitmq-dotnet-client#187</a></p> </li>     <li> <p><code>IConnection#CreateModel</code> could throw a <code>NullPointerException</code> due to a race condition. GitHub issue: <a href="/misc/goto?guid=4958991594970686754">rabbitmq-dotnet-client#185</a></p> </li>     <li> <p>Connections with automatic recovery enabled ignored ports from the hostname list. GitHub issues: <a href="/misc/goto?guid=4958991595052589044">rabbitmq-dotnet-client#157</a>, <a href="/misc/goto?guid=4958991595137366967">rabbitmq-dotnet-client#190</a></p> </li>     <li> <p>Fixes an underflow in delivery tag handling after connection recovery Contributed by <a href="/misc/goto?guid=4958991595231572284">@harishvadali</a> and <a href="/misc/goto?guid=4958991595324195574">@Entroper</a>. GitHub issue: <a href="/misc/goto?guid=4958991595408094516">rabbitmq-dotnet-client#200</a></p> </li>    </ul>    <p><strong>功能增强</strong></p>    <ul>     <li> <p>New <a href="/misc/goto?guid=4958991595485741956">FAKE</a> and <a href="/misc/goto?guid=4958991595576569712">Paket</a>-based build tooling: development on OS X and Linux with Mono is now possible again. GitHub issue: <a href="/misc/goto?guid=4958991595653315185">rabbitmq-dotnet-client#169</a></p> </li>    </ul>    <h3>LDAP Plugin</h3>    <p><strong>功能增强</strong></p>    <ul>     <li> <p>Nested groups are now supported with a separate query type GitHub issue: <a href="/misc/goto?guid=4958991595751575094">rabbitmq-auth-backend-ldap#3</a></p> </li>    </ul>    <p>Bug 修复</p>    <ul>     <li> <p>Query failures (e.g. <code>noSuchObject</code> responses) from LDAP servers are now correctly treated as<code>false</code> in <code>or</code> and <code>and</code> queries instead of erroring. GitHub issue: <a href="/misc/goto?guid=4958991849905280137">rabbitmq-auth-backend-ldap#48</a></p> </li>    </ul>    <p>更多日志见:<a href="/misc/goto?guid=4958991849997252743">rabbitmq_v3_6_3_rc2</a></p>    <h2>下载</h2>    <ul>     <li><a href="/misc/goto?guid=4958991850087974422" rel="nofollow">274 KB<strong>amqp_client-3.6.2.904.ez</strong></a></li>     <li><a href="/misc/goto?guid=4958991850192893712" rel="nofollow">836 Bytes<strong>amqp_client-3.6.2.904.ez.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991850284553598" rel="nofollow">164 KB<strong>rabbitmq-dotnet-client-3.6.2.904-dotnet-4.5.zip</strong></a></li>     <li><a href="/misc/goto?guid=4958991850377840190" rel="nofollow">836 Bytes<strong>rabbitmq-dotnet-client-3.6.2.904-dotnet-4.5.zip.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991850475528296" rel="nofollow">1.17 MB<strong>rabbitmq-java-client-bin-3.6.2.904.tar.gz</strong></a></li>     <li><a href="/misc/goto?guid=4958991850570478990" rel="nofollow">836 Bytes<strong>rabbitmq-java-client-bin-3.6.2.904.tar.gz.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991850662490466" rel="nofollow">1.17 MB<strong>rabbitmq-java-client-bin-3.6.2.904.zip</strong></a></li>     <li><a href="/misc/goto?guid=4958991850763658922" rel="nofollow">836 Bytes<strong>rabbitmq-java-client-bin-3.6.2.904.zip.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991850850490450" rel="nofollow">5.25 MB<strong>rabbitmq-server-3.6.2.904-1.noarch.rpm</strong></a></li>     <li><a href="/misc/goto?guid=4958991850947217104" rel="nofollow">836 Bytes<strong>rabbitmq-server-3.6.2.904-1.noarch.rpm.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991851049157493" rel="nofollow">2.9 MB<strong>rabbitmq-server-3.6.2.904-1.src.rpm</strong></a></li>     <li><a href="/misc/goto?guid=4958991851140435217" rel="nofollow">836 Bytes<strong>rabbitmq-server-3.6.2.904-1.src.rpm.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991851235053427" rel="nofollow">5.25 MB<strong>rabbitmq-server-3.6.2.904-1.suse.noarch.rpm</strong></a></li>     <li><a href="/misc/goto?guid=4958991851331972241" rel="nofollow">836 Bytes<strong>rabbitmq-server-3.6.2.904-1.suse.noarch.rpm.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991851430475020" rel="nofollow">2.9 MB<strong>rabbitmq-server-3.6.2.904-1.suse.src.rpm</strong></a></li>     <li><a href="/misc/goto?guid=4958991851521665194" rel="nofollow">836 Bytes<strong>rabbitmq-server-3.6.2.904-1.suse.src.rpm.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991851616148301" rel="nofollow">5.17 MB<strong>rabbitmq-server-3.6.2.904.exe</strong></a></li>     <li><a href="/misc/goto?guid=4958991851709807617" rel="nofollow">836 Bytes<strong>rabbitmq-server-3.6.2.904.exe.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991851804461393" rel="nofollow">2.89 MB<strong>rabbitmq-server-3.6.2.904.tar.xz</strong></a></li>     <li><a href="/misc/goto?guid=4958991851897864879" rel="nofollow">836 Bytes<strong>rabbitmq-server-3.6.2.904.tar.xz.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991851991341925" rel="nofollow">6.28 MB<strong>rabbitmq-server-3.6.2.904.zip</strong></a></li>     <li><a href="/misc/goto?guid=4958991852084081023" rel="nofollow">836 Bytes<strong>rabbitmq-server-3.6.2.904.zip.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991852185164276" rel="nofollow">5.06 MB<strong>rabbitmq-server-generic-unix-3.6.2.904.tar.xz</strong></a></li>     <li><a href="/misc/goto?guid=4958991852281700711" rel="nofollow">836 Bytes<strong>rabbitmq-server-generic-unix-3.6.2.904.tar.xz.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991852382229258" rel="nofollow">18.1 MB<strong>rabbitmq-server-mac-standalone-3.6.2.904.tar.xz</strong></a></li>     <li><a href="/misc/goto?guid=4958991852470273858" rel="nofollow">836 Bytes<strong>rabbitmq-server-mac-standalone-3.6.2.904.tar.xz.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991852576343698" rel="nofollow">5.3 MB<strong>rabbitmq-server-windows-3.6.2.904.zip</strong></a></li>     <li><a href="/misc/goto?guid=4958991852674112928" rel="nofollow">836 Bytes<strong>rabbitmq-server-windows-3.6.2.904.zip.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991852766727701" rel="nofollow">6.91 KB<strong>rabbitmq-server_3.6.2.904-1.debian.tar.gz</strong></a></li>     <li><a href="/misc/goto?guid=4958991852856181936" rel="nofollow">836 Bytes<strong>rabbitmq-server_3.6.2.904-1.debian.tar.gz.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991852962860730" rel="nofollow">2 KB<strong>rabbitmq-server_3.6.2.904-1.dsc</strong></a></li>     <li><a href="/misc/goto?guid=4958991853053488401" rel="nofollow">836 Bytes<strong>rabbitmq-server_3.6.2.904-1.dsc.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991853152732434" rel="nofollow">5.21 MB<strong>rabbitmq-server_3.6.2.904-1_all.deb</strong></a></li>     <li><a href="/misc/goto?guid=4958991853252590402" rel="nofollow">836 Bytes<strong>rabbitmq-server_3.6.2.904-1_all.deb.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991853344690915" rel="nofollow">2.43 KB<strong>rabbitmq-server_3.6.2.904-1_i386.changes</strong></a></li>     <li><a href="/misc/goto?guid=4958991853434716330" rel="nofollow">836 Bytes<strong>rabbitmq-server_3.6.2.904-1_i386.changes.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991853526765695" rel="nofollow">2.89 MB<strong>rabbitmq-server_3.6.2.904.orig.tar.xz</strong></a></li>     <li><a href="/misc/goto?guid=4958991853630957267" rel="nofollow">836 Bytes<strong>rabbitmq-server_3.6.2.904.orig.tar.xz.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991853727044935" rel="nofollow">726 KB<strong>rabbit_common-3.6.2.904.ez</strong></a></li>     <li><a href="/misc/goto?guid=4958991853818762221" rel="nofollow">836 Bytes<strong>rabbit_common-3.6.2.904.ez.asc</strong></a></li>     <li><a href="/misc/goto?guid=4958991853915360678" rel="nofollow"><strong>Source code</strong> (zip)</a></li>     <li><a href="/misc/goto?guid=4958991854008757930" rel="nofollow"><strong>Source code</strong> (tar.gz)</a></li>    </ul>