Kong v0.9.0 RC1 发布
jopen 8年前
<p style="text-align: center;"><img alt="" src="https://simg.open-open.com/show/22cdaab266499458882a505cb199be22.png" /></p> <p>Kong是在客户端和(微)服务间转发API通信的API网关,通过插件扩展功能。Kong有两个主要组件:</p> <ul> <li>Kong Server :基于nginx的服务器,用来接收API请求。</li> <li>Apache Cassandra :用来存储操作数据。</li> </ul> <p>你可以通过增加更多Kong Server机器对Kong服务进行水平扩展,通过前置的负载均衡器向这些机器分发请求。根据文档描述,两个Cassandra节点就足以支撑绝大多数情况,但如果网络非常拥挤,可以考虑适当增加更多节点。</p> <p>对于开源社区来说,Kong 中最诱人的一个特性是可以通过插件扩展已有功能,这些插件在 API 请求响应循环的生命周期中被执行。插件使用 Lua 编写,而且 Kong 还有如下几个基础功能:</p> <ul> <li> HTTP 基本认证</li> <li> 密钥认证</li> <li> CORS( Cross-origin Resource Sharing,跨域资源共享)</li> <li> TCP/UDP</li> <li> 文件日志</li> <li> API 请求限流</li> <li> 请求转发</li> <li> nginx 监控</li> </ul> <p style="text-align: center;"><img alt="" src="https://simg.open-open.com/show/8cc1737a2b0ff1e31dcec627751ec625.png" /></p> <h2>更新日志</h2> <ul> <li>New CLI, with new commands and refined arguments. This new CLI uses the <code>resty-cli</code>interpreter (see <a href="/misc/goto?guid=4958992678298818615">lua-resty-cli</a>) instead of LuaJIT. As a result, the <code>resty</code> executable must be available in your <code>$PATH</code> (resty-cli is shipped in the OpenResty bundle) as well as the <code>bin/kong</code> executable. Kong does not rely on Luarocks installing the <code>bin/kong</code> executable anymore. This change of behavior is taken care of if you are using one of the official Kong packages.</li> <li>Kong uses a new configuration file, with an easier syntax than the previous YAML file.</li> <li>New arguments for the CLI, such as verbose, debug and tracing flags. We also avoid requiring the configuration file as an argument to each command as per the previous CLI.</li> <li>Customization of the Nginx configuration can now be taken care of using two different approaches: with a custom Nginx configuration template and using <code>kong start --template <file></code>, or by using<code>kong compile</code> to generate the Kong Nginx sub-configuration, and <code>include</code> it in a custom Nginx instance.</li> </ul> <h3>新增</h3> <ul> <li>Support for overriding configuration settings with environment variables.</li> <li>Support for SSL connections between Kong and PostgreSQL. <a href="/misc/goto?guid=4958992678394107564">#1425</a></li> <li>Ability to apply plugins with more granularity: per-consumer, and global plugins are now possible. <a href="/misc/goto?guid=4958992678468230941">#1403</a></li> <li>New <code>kong check</code> command: validates a Kong configuration file.</li> <li>Better version check for third-party dependencies (OpenResty, Serf, dnsmasq). <a href="/misc/goto?guid=4958992678545480741">#1307</a></li> <li>Ability to configure the validation depth of database SSL certificates from the configuration file.<a href="/misc/goto?guid=4958992678626749591">#1420</a></li> <li><code>request_host</code>: internationalized url support; utf-8 domain names through punycode support and paths through %-encoding. <a href="/misc/goto?guid=4958992678704326775">#1300</a></li> <li>Implements caching locks when fetching database configuration (APIs, Plugins...) to avoid dog pile effect on cold nodes. <a href="/misc/goto?guid=4958992678786888164">#1402</a></li> <li>Plugins: <ul> <li>Bot Detection: Added a new plugin that protects APIs by detecting common bots and crawlers.<a href="/misc/goto?guid=4958992678859821612">#1413</a></li> <li>correlation-id: new "tracker" generator, identifying requests per worker and connection. <a href="/misc/goto?guid=4958992678933589912">#1288</a></li> <li>request/response-transformer: ability to add strings including colon characters. <a href="/misc/goto?guid=4958992679016927064">#1353</a></li> </ul> </li> </ul> <h3>问题修复</h3> <ul> <li>Sensitive configuration settings are not printed to stdout anymore. <a href="/misc/goto?guid=4958992679093158331">#1256</a></li> <li>Fixed bug that caused nodes to remove themselves from the database when they attempted to join the cluster. <a href="/misc/goto?guid=4958992679177273312">#1437</a></li> <li>Plugins: <ul> <li>request-size-limiting: use proper constant for MB units while setting the size limit. <a href="/misc/goto?guid=4958992679257803239">#1416</a></li> <li>OAuth2: security and config validation fixes. <a href="/misc/goto?guid=4958992679328427250">#1409</a> <a href="/misc/goto?guid=4958990866855162045">#1112</a></li> <li>request/response-transformer: better validation of fields provided without a value. <a href="/misc/goto?guid=4958992679437864583">#1399</a></li> <li>JWT: handle some edge-cases that could result in HTTP 500 errors. <a href="/misc/goto?guid=4958992679514401887">#1362</a></li> </ul> </li> </ul> <blockquote> <p><strong>internal</strong></p> <ul> <li>new test suite using resty-cli and removing the need to monkey-patch the <code>ngx</code> global.</li> <li>custom assertions and new helper methods (<code>wait_until()</code>) to gracefully fail in case of timeout.</li> <li>increase atomicity of the testing environment.</li> <li>lighter testing instance, only running 1 worker and not using dnsmasq by default.</li> </ul> </blockquote> <h2>下载</h2> <ul> <li><a href="/misc/goto?guid=4958992679595183369" rel="nofollow"><strong>kong-0.9.0rc1.el5.noarch.rpm</strong></a></li> <li><a href="/misc/goto?guid=4958992679682328254" rel="nofollow"><strong>kong-0.9.0rc1.el6.noarch.rpm</strong></a></li> <li><a href="/misc/goto?guid=4958992679761358574" rel="nofollow"><strong>kong-0.9.0rc1.el7.noarch.rpm</strong></a></li> <li><a href="/misc/goto?guid=4958992679836716159" rel="nofollow"><strong>kong-0.9.0rc1.jessie_all.deb</strong></a></li> <li><a href="/misc/goto?guid=4958992679908519587" rel="nofollow"><strong>kong-0.9.0rc1.precise_all.deb</strong></a></li> <li><a href="/misc/goto?guid=4958992679995726278" rel="nofollow"><strong>kong-0.9.0rc1.trusty_all.deb</strong></a></li> <li><a href="/misc/goto?guid=4958992680066434427" rel="nofollow"><strong>kong-0.9.0rc1.vivid_all.deb</strong></a></li> <li><a href="/misc/goto?guid=4958992680155323299" rel="nofollow"><strong>kong-0.9.0rc1.wheezy_all.deb</strong></a></li> <li><a href="/misc/goto?guid=4958992680224777367" rel="nofollow"><strong>kong-0.9.0rc1.xenial_all.deb</strong></a></li> <li><a href="/misc/goto?guid=4958992680313075874" rel="nofollow"><strong>Source code</strong> (zip)</a></li> <li><a href="/misc/goto?guid=4958992680384942904" rel="nofollow"><strong>Source code</strong> (tar.gz)</a></li> </ul> <p><img src="file:///C:/Users/wqm/AppData/Local/Temp/enhtmlclip/Image(5).png" /> </p> <p> </p>