You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by ni...@apache.org on 2017/12/12 09:18:01 UTC
[04/57] [partial] incubator-servicecomb-website git commit: Generated
the static pages for asf-site
http://git-wip-us.apache.org/repos/asf/incubator-servicecomb-website/blob/08e1b43f/content/users/invoke-control/index.html
----------------------------------------------------------------------
diff --git a/content/users/invoke-control/index.html b/content/users/invoke-control/index.html
new file mode 100644
index 0000000..bbef822
--- /dev/null
+++ b/content/users/invoke-control/index.html
@@ -0,0 +1,816 @@
+<!doctype html>
+<!--
+ Minimal Mistakes Jekyll Theme 4.4.1 by Michael Rose
+ Copyright 2017 Michael Rose - mademistakes.com | @mmistakes
+ Free for personal and commercial use under the MIT license
+ https://github.com/mmistakes/minimal-mistakes/blob/master/LICENSE.txt
+-->
+<html lang="en" class="no-js">
+ <head>
+ <meta charset="utf-8">
+
+<!-- begin SEO -->
+
+
+
+
+
+
+
+
+
+<title>调用控制 - Apache incubator ServiceComb</title>
+
+
+
+
+<meta name="description" content="调用控制">
+
+
+
+
+<meta name="author" content="">
+
+<meta property="og:locale" content="en">
+<meta property="og:site_name" content="Apache incubator ServiceComb">
+<meta property="og:title" content="调用控制">
+
+
+ <link rel="canonical" href="http://github.com/pages/ServiceComb/servicesomb.github.io/users/invoke-control/">
+ <meta property="og:url" content="http://github.com/pages/ServiceComb/servicesomb.github.io/users/invoke-control/">
+
+
+
+ <meta property="og:description" content="调用控制">
+
+
+
+ <meta name="twitter:site" content="@ServiceComb">
+ <meta name="twitter:title" content="调用控制">
+ <meta name="twitter:description" content="调用控制">
+ <meta name="twitter:url" content="">
+
+
+ <meta name="twitter:card" content="summary">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <script type="application/ld+json">
+ {
+ "@context" : "http://schema.org",
+ "@type" : "Person",
+ "name" : "Apache incubator ServiceComb",
+ "url" : "http://github.com/pages/ServiceComb/servicesomb.github.io",
+ "sameAs" : null
+ }
+ </script>
+
+
+
+ <meta name="google-site-verification" content="HvJjNd7vvJ-yjSTHlBiIWEYxp_Hrz-PYEY5Idz9LRcA" />
+
+
+
+
+<!-- end SEO -->
+
+
+<link href="/feed.xml" type="application/atom+xml" rel="alternate" title="Apache incubator ServiceComb Feed">
+
+<!-- http://t.co/dKP3o1e -->
+<meta name="HandheldFriendly" content="True">
+<meta name="MobileOptimized" content="320">
+<meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+<script>
+ document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js ';
+</script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.7.1/clipboard.min.js"></script>
+<script src="/assets/js/prism.js"></script>
+
+<script type="text/javascript" async
+ src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-MML-AM_CHTML">
+</script>
+
+<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">
+
+<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
+<!-- For all browsers -->
+<link rel="stylesheet" href="/assets/css/main.css">
+<link rel="stylesheet" href="/assets/css/prism.css">
+
+<!--[if lte IE 9]>
+ <style>
+ /* old IE unsupported flexbox fixes */
+ .greedy-nav .site-title {
+ padding-right: 3em;
+ }
+ .greedy-nav button {
+ position: absolute;
+ top: 0;
+ right: 0;
+ height: 100%;
+ }
+ </style>
+<![endif]-->
+
+<meta http-equiv="cleartype" content="on">
+
+ <!-- start custom head snippets -->
+
+<!-- insert favicons. use http://realfavicongenerator.net/ -->
+<link href="https://fonts.cat.net/css?family=Roboto:400,500,700|Source+Code+Pro" rel="stylesheet">
+<script src="/assets/js/custom.js"></script>
+<!-- end custom head snippets -->
+
+ </head>
+
+ <body class="layout--single">
+
+ <!--[if lt IE 9]>
+<div class="notice--danger align-center" style="margin: 0;">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</div>
+<![endif]-->
+ <div class="masthead">
+ <div class="masthead__inner-wrap">
+ <div class="masthead__menu">
+ <nav id="site-nav" class="greedy-nav">
+
+ <a class="site-title active" href="/"><img src="//assets/images/ServiceComb-logo-1.png"></a>
+
+ <ul class="visible-links">
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/docs/quick-start/">Quick Start</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a class="active" href="/users/">Users</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/developers/">Developers</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/year-archive/">Blogs</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/faqs/">FAQ</a>
+
+ </li>
+
+ </ul>
+ <button><div class="navicon"></div></button>
+ <ul class="hidden-links hidden"></ul>
+ <div class="nav-lang">
+
+
+ <a href=/cn/users/invoke-control/>中文</a>
+
+ </div>
+ </nav>
+ </div>
+ </div>
+</div>
+
+
+
+
+
+
+<div id="main" role="main">
+
+ <div class="sidebar sticky">
+
+ <div class="back-to-home">Home > <a href="/">ServiceComb</a></div>
+
+
+
+
+
+
+
+
+
+
+
+<nav class="nav__list">
+
+ <input id="ac-toc" name="accordion-toc" type="checkbox" />
+ <label for="ac-toc">Toggle Menu</label>
+ <ul class="nav__items">
+
+ <li>
+
+ <span class="nav__sub-title">User Guide</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/" class="">Java Chassis Architecture</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/setup-environment/" class="">Setup Environment</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Develop Service Provider</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/service-definition/" class="">Service Definition</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-contract/" class="">Service Contract</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-springmvc/" class="">Develop Microservice with SpringMVC</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-jax-rs/" class="">Develop Microservice with JAX-RS</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-transparent-rpc/" class="">Develop Microservice with Transparent RPC</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-interface-constraints/" class="">Service Interface Constraints</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-configurations/" class="">Service Configurations</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/communicate-protocol/" class="">Communicate Protocol</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/application-boot-process/" class="">Application Boot Up Process</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-heartbeat/" class="">Service Heartbeat</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Develop Service Consumer</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-rest-template/" class="">Develop with Rest Template</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-rpc/" class="">Develop with Transparent RPC</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/use-service-contract/" class="">Use Service Contract</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/invoke-control/" class="active">Invoke Control</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">General Development</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/local-develop-test/" class="">Develop and Test in Local Environment</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/use-servicecomb-in-spring-boot/" class="">Use ServiceComb in Spring Boot</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/distributed-tracing/" class="">Distributed Tracing</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/customized-tracing/" class="">Customized Tracing</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Edging Service</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/edging-service/nginx/" class="">confd and Nginx</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/edging-service/zuul/" class="">Zuul</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+
+
+
+ <a href="/users/metrics/"><span class="nav__sub-title nav__sub-title-with-url">Metrics</span></a>
+
+
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Deployment</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/run-mode/" class="">Run Mode</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Security</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/use-tls/" class="">Use TLS</a></li>
+
+ </ul>
+
+ </li>
+
+ </ul>
+</nav>
+
+
+
+ </div>
+
+
+
+ <article class="page" itemscope itemtype="http://schema.org/CreativeWork">
+ <meta itemprop="headline" content="调用控制">
+ <meta itemprop="description" content="调用控制">
+
+ <meta itemprop="dateModified" content="August 15, 2017">
+
+ <div class="page__inner-wrap">
+
+
+ <header>
+ <h1 class="page__title" itemprop="headline">调用控制
+</h1>
+
+ </header>
+
+
+
+ <section class="page__content" itemprop="text">
+ <aside class="sidebar__right">
+<nav class="toc">
+ <!-- <header><h4 class="nav__title"><i class="fa fa-file-text"></i> On This Page</h4></header> -->
+<ul class="toc__menu" id="markdown-toc">
+ <li><a href="#实例级故障隔离" id="markdown-toc-实例级故障隔离">实例级故障隔离</a> <ul>
+ <li><a href="#场景描述" id="markdown-toc-场景描述">场景描述</a></li>
+ <li><a href="#配置说明" id="markdown-toc-配置说明">配置说明</a></li>
+ </ul>
+ </li>
+ <li><a href="#熔断策略" id="markdown-toc-熔断策略">熔断策略</a> <ul>
+ <li><a href="#场景描述-1" id="markdown-toc-场景描述-1">场景描述</a></li>
+ <li><a href="#配置说明-1" id="markdown-toc-配置说明-1">配置说明</a></li>
+ </ul>
+ </li>
+ <li><a href="#限流策略" id="markdown-toc-限流策略">限流策略</a> <ul>
+ <li><a href="#场景描述-2" id="markdown-toc-场景描述-2">场景描述</a></li>
+ <li><a href="#注意事项" id="markdown-toc-注意事项">注意事项</a></li>
+ <li><a href="#配置说明-2" id="markdown-toc-配置说明-2">配置说明</a></li>
+ </ul>
+ </li>
+</ul>
+
+ </nav>
+</aside>
+
+<h2 id="实例级故障隔离">实例级故障隔离</h2>
+
+<h3 id="场景描述">场景描述</h3>
+
+<p>实例级故障隔离功能允许在微服务的部分实例调用失败时,停止向故障实例发送请求,从而达到隔离故障实例的功能。</p>
+
+<h3 id="配置说明">配置说明</h3>
+
+<p>实例级故障隔离功能集成在负载均衡功能中,负载均衡策略的配置见<a href="/users/service-configurations/#负载均衡策略">负载均衡策略</a>。负载均衡策略中,与实例级故障隔离相关的配置项见下表。</p>
+
+<table>
+ <thead>
+ <tr>
+ <th style="text-align: left">配置项</th>
+ <th style="text-align: left">默认值</th>
+ <th style="text-align: left">取值范围</th>
+ <th style="text-align: left">是否必选</th>
+ <th style="text-align: left">含义</th>
+ <th style="text-align: left">注意</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td style="text-align: left">cse.loadbalance.isolation.enabled</td>
+ <td style="text-align: left">false</td>
+ <td style="text-align: left">Boolean</td>
+ <td style="text-align: left">否</td>
+ <td style="text-align: left">是否开启故障实例隔离功能</td>
+ <td style="text-align: left">-</td>
+ </tr>
+ <tr>
+ <td style="text-align: left">cse.loadbalance.isolation.enableRequestThreshold</td>
+ <td style="text-align: left">20</td>
+ <td style="text-align: left">Integer</td>
+ <td style="text-align: left">否</td>
+ <td style="text-align: left">当实例的调用总次数达到该值时开始进入隔离逻辑门槛</td>
+ <td style="text-align: left">-</td>
+ </tr>
+ <tr>
+ <td style="text-align: left">cse.loadbalance.isolation.errorThresholdPercentage</td>
+ <td style="text-align: left">20</td>
+ <td style="text-align: left">Integer,区间为(0,100]</td>
+ <td style="text-align: left">否</td>
+ <td style="text-align: left">实例故障隔离错误百分比</td>
+ <td style="text-align: left">-</td>
+ </tr>
+ <tr>
+ <td style="text-align: left">cse.loadbalance.isolation.singleTestTime</td>
+ <td style="text-align: left">10000</td>
+ <td style="text-align: left">Integer</td>
+ <td style="text-align: left">否</td>
+ <td style="text-align: left">故障实例单点测试时间</td>
+ <td style="text-align: left"> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="熔断策略">熔断策略</h2>
+<h3 id="场景描述-1">场景描述</h3>
+
+<p>熔断策略是对ServiceComb熔断功能的设置,用户通过配置熔断策略可以指定在何种条件下ServiceComb框架将终止发送请求。</p>
+
+<h3 id="配置说明-1">配置说明</h3>
+
+<p>熔断作为异常反应机制是降级策略的一部分,相关概念还有隔离和容错。三者的关系以及配置方式参见<a href="/users/service-configurations/#降级策略">降级策略</a>。</p>
+
+<h2 id="限流策略">限流策略</h2>
+<h3 id="场景描述-2">场景描述</h3>
+
+<p>用户在consumer端使用限流策略,可以限制发往指定微服务的请求的频率。</p>
+
+<h3 id="注意事项">注意事项</h3>
+
+<p>参考服务提供者处<a href="/users/service-configurations/#限流策略">限流策略注意事项</a>。</p>
+
+<h3 id="配置说明-2">配置说明</h3>
+
+<p>限流策略配置在microservice.yaml文件中,相关配置项见下表。要开启服务消费者端的限流策略,还需要在处理链中配置消费端限流handler,配置示例如下:</p>
+
+<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">cse</span><span class="pi">:</span>
+ <span class="s">handler</span><span class="pi">:</span>
+ <span class="s">chain</span><span class="pi">:</span>
+ <span class="s">Consumer</span><span class="pi">:</span>
+ <span class="s">default</span><span class="pi">:</span> <span class="s">qps-flowcontrol-consumer</span>
+</code></pre>
+</div>
+
+<p>QPS流控配置项说明</p>
+
+<table>
+ <thead>
+ <tr>
+ <th style="text-align: left">配置项</th>
+ <th style="text-align: left">默认值</th>
+ <th style="text-align: left">取值范围</th>
+ <th style="text-align: left">是否必选</th>
+ <th style="text-align: left">含义</th>
+ <th style="text-align: left">注意</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td style="text-align: left">cse.flowcontrol.Consumer.qps.enabled</td>
+ <td style="text-align: left">true</td>
+ <td style="text-align: left">Boolean</td>
+ <td style="text-align: left">否</td>
+ <td style="text-align: left">是否启用Consumer流控</td>
+ <td style="text-align: left">-</td>
+ </tr>
+ <tr>
+ <td style="text-align: left">cse.flowcontrol.Consumer.qps.limit.[ServiceName].[Schema].[operation]</td>
+ <td style="text-align: left">2147483647 (max int)</td>
+ <td style="text-align: left">(0,2147483647],整形</td>
+ <td style="text-align: left">否</td>
+ <td style="text-align: left">每秒钟允许的请求数</td>
+ <td style="text-align: left">支持microservice、schema、operation三个级别的配置</td>
+ </tr>
+ </tbody>
+</table>
+
+
+ </section>
+
+ <footer class="page__meta">
+
+
+
+
+
+ </footer>
+
+
+
+
+
+ </div>
+
+
+ </article>
+
+
+
+</div>
+
+
+ <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
+ <div align="center" style="margin: 0 0;">
+ <ins class="adsbygoogle"
+ style="display:block; border-bottom: initial;"
+ data-ad-client="ca-pub-7328585512091257"
+ data-ad-slot="3049671934"
+ data-ad-format="auto"></ins>
+ </div>
+
+ <div class="page__footer">
+ <footer>
+ <!-- start custom footer snippets -->
+
+<!-- end custom footer snippets -->
+ <div class="container">
+ <div class="row justify-content-md-center">
+
+ <div class="col">
+ <ul>
+ <p class="header">Resources</p>
+ <li><a href="/docs/quick-start/">Quick Start</a></li>
+ <li><a href="/users/user-guide/">User Guide</a></li>
+ <li><a href="/slides/">Slides</a></li>
+ <li><a href="/users/faq/">Common Questions</a></li>
+ </ul>
+ </div>
+ <div class="col">
+ <ul>
+ <p class="header">Contribute</p>
+ <li><a href="https://github.com/ServiceComb/ServiceComb.github.io/issues/new?title=Issue with _users/invoke-control.md">Report a Doc Issue</a></li>
+ <li><a href="https://github.com/ServiceComb/ServiceComb.github.io/edit/master/_users/invoke-control.md">Edit This Page on Github</a></li>
+ <li><a href="/developers/submit-codes/">Code Submit Guide</a></li>
+ </ul>
+ </div>
+ <div class="col">
+ <ul class="social-icons">
+ <p class="header">Community</p>
+ <li>
+ <a href="https://groups.google.com/forum/#!forum/servicecomb-developers" target="_blank"><span class="group">Dev</span></a> |
+ <a href="https://groups.google.com/forum/#!forum/servicecomb-users" target="_blank">User</span></a>
+ </li>
+ <li>
+ <a href="http://github.com/ServiceComb" target="_blank"><span class="github">Github</span></a>
+ </li>
+ <li>
+ <a href="https://twitter.com/ServiceComb" target="_blank"><span class="twitter">Twitter</span></a>
+ </li>
+ <li>
+ <a href="/feed.xml" target="_blank"><span class="rss">Feed</span></a>
+ </li>
+ </ul>
+ </div>
+ </div>
+</div>
+<div class="page__footer-bottom">
+ <div>© 2017 Apache incubator ServiceComb. Powered by <a href="http://jekyllrb.com" rel="nofollow">Jekyll</a> & <a href="https://mademistakes.com/work/minimal-mistakes-jekyll-theme/" rel="nofollow">Minimal Mistakes</a>.</div>
+</div>
+
+ </footer>
+ </div>
+
+ <script src="/assets/js/main.min.js"></script>
+
+
+
+
+ <script>
+ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+ m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+ })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+ ga('create', 'UA-101622733-1', 'auto');
+ ga('send', 'pageview');
+</script>
+
+
+
+
+
+
+
+ </body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-servicecomb-website/blob/08e1b43f/content/users/local-develop-test/index.html
----------------------------------------------------------------------
diff --git a/content/users/local-develop-test/index.html b/content/users/local-develop-test/index.html
new file mode 100644
index 0000000..2ca4301
--- /dev/null
+++ b/content/users/local-develop-test/index.html
@@ -0,0 +1,759 @@
+<!doctype html>
+<!--
+ Minimal Mistakes Jekyll Theme 4.4.1 by Michael Rose
+ Copyright 2017 Michael Rose - mademistakes.com | @mmistakes
+ Free for personal and commercial use under the MIT license
+ https://github.com/mmistakes/minimal-mistakes/blob/master/LICENSE.txt
+-->
+<html lang="en" class="no-js">
+ <head>
+ <meta charset="utf-8">
+
+<!-- begin SEO -->
+
+
+
+
+
+
+
+
+
+<title>本地开发与测试 - Apache incubator ServiceComb</title>
+
+
+
+
+<meta name="description" content="本地开发与测试">
+
+
+
+
+<meta name="author" content="">
+
+<meta property="og:locale" content="en">
+<meta property="og:site_name" content="Apache incubator ServiceComb">
+<meta property="og:title" content="本地开发与测试">
+
+
+ <link rel="canonical" href="http://github.com/pages/ServiceComb/servicesomb.github.io/users/local-develop-test/">
+ <meta property="og:url" content="http://github.com/pages/ServiceComb/servicesomb.github.io/users/local-develop-test/">
+
+
+
+ <meta property="og:description" content="本地开发与测试">
+
+
+
+ <meta name="twitter:site" content="@ServiceComb">
+ <meta name="twitter:title" content="本地开发与测试">
+ <meta name="twitter:description" content="本地开发与测试">
+ <meta name="twitter:url" content="">
+
+
+ <meta name="twitter:card" content="summary">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <script type="application/ld+json">
+ {
+ "@context" : "http://schema.org",
+ "@type" : "Person",
+ "name" : "Apache incubator ServiceComb",
+ "url" : "http://github.com/pages/ServiceComb/servicesomb.github.io",
+ "sameAs" : null
+ }
+ </script>
+
+
+
+ <meta name="google-site-verification" content="HvJjNd7vvJ-yjSTHlBiIWEYxp_Hrz-PYEY5Idz9LRcA" />
+
+
+
+
+<!-- end SEO -->
+
+
+<link href="/feed.xml" type="application/atom+xml" rel="alternate" title="Apache incubator ServiceComb Feed">
+
+<!-- http://t.co/dKP3o1e -->
+<meta name="HandheldFriendly" content="True">
+<meta name="MobileOptimized" content="320">
+<meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+<script>
+ document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js ';
+</script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.7.1/clipboard.min.js"></script>
+<script src="/assets/js/prism.js"></script>
+
+<script type="text/javascript" async
+ src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-MML-AM_CHTML">
+</script>
+
+<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">
+
+<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
+<!-- For all browsers -->
+<link rel="stylesheet" href="/assets/css/main.css">
+<link rel="stylesheet" href="/assets/css/prism.css">
+
+<!--[if lte IE 9]>
+ <style>
+ /* old IE unsupported flexbox fixes */
+ .greedy-nav .site-title {
+ padding-right: 3em;
+ }
+ .greedy-nav button {
+ position: absolute;
+ top: 0;
+ right: 0;
+ height: 100%;
+ }
+ </style>
+<![endif]-->
+
+<meta http-equiv="cleartype" content="on">
+
+ <!-- start custom head snippets -->
+
+<!-- insert favicons. use http://realfavicongenerator.net/ -->
+<link href="https://fonts.cat.net/css?family=Roboto:400,500,700|Source+Code+Pro" rel="stylesheet">
+<script src="/assets/js/custom.js"></script>
+<!-- end custom head snippets -->
+
+ </head>
+
+ <body class="layout--single">
+
+ <!--[if lt IE 9]>
+<div class="notice--danger align-center" style="margin: 0;">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</div>
+<![endif]-->
+ <div class="masthead">
+ <div class="masthead__inner-wrap">
+ <div class="masthead__menu">
+ <nav id="site-nav" class="greedy-nav">
+
+ <a class="site-title active" href="/"><img src="//assets/images/ServiceComb-logo-1.png"></a>
+
+ <ul class="visible-links">
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/docs/quick-start/">Quick Start</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a class="active" href="/users/">Users</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/developers/">Developers</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/year-archive/">Blogs</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/faqs/">FAQ</a>
+
+ </li>
+
+ </ul>
+ <button><div class="navicon"></div></button>
+ <ul class="hidden-links hidden"></ul>
+ <div class="nav-lang">
+
+
+ <a href=/cn/users/local-develop-test/>中文</a>
+
+ </div>
+ </nav>
+ </div>
+ </div>
+</div>
+
+
+
+
+
+
+<div id="main" role="main">
+
+ <div class="sidebar sticky">
+
+ <div class="back-to-home">Home > <a href="/">ServiceComb</a></div>
+
+
+
+
+
+
+
+
+
+
+
+<nav class="nav__list">
+
+ <input id="ac-toc" name="accordion-toc" type="checkbox" />
+ <label for="ac-toc">Toggle Menu</label>
+ <ul class="nav__items">
+
+ <li>
+
+ <span class="nav__sub-title">User Guide</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/" class="">Java Chassis Architecture</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/setup-environment/" class="">Setup Environment</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Develop Service Provider</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/service-definition/" class="">Service Definition</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-contract/" class="">Service Contract</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-springmvc/" class="">Develop Microservice with SpringMVC</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-jax-rs/" class="">Develop Microservice with JAX-RS</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-transparent-rpc/" class="">Develop Microservice with Transparent RPC</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-interface-constraints/" class="">Service Interface Constraints</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-configurations/" class="">Service Configurations</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/communicate-protocol/" class="">Communicate Protocol</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/application-boot-process/" class="">Application Boot Up Process</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-heartbeat/" class="">Service Heartbeat</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Develop Service Consumer</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-rest-template/" class="">Develop with Rest Template</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-rpc/" class="">Develop with Transparent RPC</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/use-service-contract/" class="">Use Service Contract</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/invoke-control/" class="">Invoke Control</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">General Development</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/local-develop-test/" class="active">Develop and Test in Local Environment</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/use-servicecomb-in-spring-boot/" class="">Use ServiceComb in Spring Boot</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/distributed-tracing/" class="">Distributed Tracing</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/customized-tracing/" class="">Customized Tracing</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Edging Service</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/edging-service/nginx/" class="">confd and Nginx</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/edging-service/zuul/" class="">Zuul</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+
+
+
+ <a href="/users/metrics/"><span class="nav__sub-title nav__sub-title-with-url">Metrics</span></a>
+
+
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Deployment</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/run-mode/" class="">Run Mode</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Security</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/use-tls/" class="">Use TLS</a></li>
+
+ </ul>
+
+ </li>
+
+ </ul>
+</nav>
+
+
+
+ </div>
+
+
+
+ <article class="page" itemscope itemtype="http://schema.org/CreativeWork">
+ <meta itemprop="headline" content="本地开发与测试">
+ <meta itemprop="description" content="本地开发与测试">
+
+ <meta itemprop="dateModified" content="August 15, 2017">
+
+ <div class="page__inner-wrap">
+
+
+ <header>
+ <h1 class="page__title" itemprop="headline">本地开发与测试
+</h1>
+
+ </header>
+
+
+
+ <section class="page__content" itemprop="text">
+ <aside class="sidebar__right">
+<nav class="toc">
+ <!-- <header><h4 class="nav__title"><i class="fa fa-file-text"></i> On This Page</h4></header> -->
+<ul class="toc__menu" id="markdown-toc">
+ <li><a href="#概念阐述" id="markdown-toc-概念阐述">概念阐述</a></li>
+ <li><a href="#启动本地服务中心" id="markdown-toc-启动本地服务中心">启动本地服务中心</a></li>
+ <li><a href="#mock机制启动服务中心" id="markdown-toc-mock机制启动服务中心">Mock机制启动服务中心</a></li>
+</ul>
+
+ </nav>
+</aside>
+
+<h2 id="概念阐述">概念阐述</h2>
+
+<p>本小节介绍如何在开发者本地进行消费者/提供者应用的开发调试。开发服务提供者请参考<a href="/users/service-definition/">开发服务提供者章节</a>,开发服务消费者请参考<a href="/users/develop-with-rest-template/">开发服务消费者章节</a>。服务提供者和消费提供者均需要连接到在远程的服务中心,为了本地微服务的开发和调试,本小节介绍了两种搭建本地服务中心的方法进行本地微服务调试:</p>
+
+<ul>
+ <li>
+ <p><a href="#启动本地服务中心">启动本地服务中心</a>。</p>
+ </li>
+ <li>
+ <p><a href="#mock机制启动服务中心">通过local file模拟启动服务中心Mock机制</a>。</p>
+ </li>
+</ul>
+
+<p>服务中心是微服务框架中的重要组件,用于服务元数据以及服务实例元数据的管理和处理注册、发现。服务中心与微服务提供/消费者的逻辑关系下图所示:</p>
+
+<p><img src="/assets/images/local_develop_test.png" alt="" /></p>
+
+<h2 id="启动本地服务中心">启动本地服务中心</h2>
+
+<ul>
+ <li>
+ <p><strong>步骤1</strong> 启动本地服务中心,可参考<a href="/users/setup-environment/#运行service-center">运行Service Center指南</a>。</p>
+ </li>
+ <li>
+ <p><strong>步骤 2</strong> 启动本地轻量服务中心后,在服务提供/消费者的microservice.yaml文件中配置ServerCenter的地址和端口,示例代码:</p>
+
+ <div class="language-yaml highlighter-rouge"><pre class="highlight"><code> <span class="s">cse</span><span class="pi">:</span>
+ <span class="s">service</span><span class="pi">:</span>
+ <span class="s">registry</span><span class="pi">:</span>
+ <span class="s">address</span><span class="pi">:</span> <span class="s">http://127.0.0.1:30100</span> <span class="c1">#服务中心地址及端口</span>
+</code></pre>
+ </div>
+ </li>
+ <li>
+ <p><strong>步骤 3</strong> 开发服务提供/消费者,启动微服务进行本地测试。</p>
+ </li>
+</ul>
+
+<h2 id="mock机制启动服务中心">Mock机制启动服务中心</h2>
+
+<ul>
+ <li>
+ <p><strong>步骤 1</strong>新建本地服务中心定义文件registry.yaml,内容如下:</p>
+
+ <div class="language-yaml highlighter-rouge"><pre class="highlight"><code> <span class="s">springmvctest</span><span class="pi">:</span>
+ <span class="pi">-</span> <span class="s">id</span><span class="pi">:</span> <span class="s2">"</span><span class="s">001"</span>
+ <span class="s">version</span><span class="pi">:</span> <span class="s2">"</span><span class="s">1.0"</span>
+ <span class="s">appid</span><span class="pi">:</span> <span class="s">myapp</span> <span class="c1">#调试的服务id</span>
+ <span class="s">instances</span><span class="pi">:</span>
+ <span class="s">endpoints</span><span class="pi">:</span>
+ <span class="s">rest://127.0.0.1:8080</span>
+</code></pre>
+ </div>
+
+ <p>注意:mock机制需要自己准备契约,并且当前只支持在本地进行服务消费端(consumer)侧的调试,不支持服务提供者(provider)</p>
+ </li>
+ <li>
+ <p><strong>步骤 2</strong>在服务消费者Main函数首末添加如下代码:</p>
+
+ <div class="language-java highlighter-rouge"><pre class="highlight"><code> <span class="kd">public</span> <span class="kd">class</span> <span class="nc">xxxClient</span> <span class="o">{</span>
+ <span class="kd">public</span> <span class="kd">static</span> <span class="kt">void</span> <span class="nf">main</span><span class="o">(</span><span class="n">String</span><span class="o">[]</span> <span class="n">args</span><span class="o">)</span> <span class="o">{</span>
+ <span class="n">System</span><span class="o">.</span><span class="na">setProperty</span><span class="o">(</span><span class="s">"local.registry.file"</span><span class="o">,</span> <span class="s">"/path/registry.yaml"</span><span class="o">);</span>
+ <span class="c1">//your code</span>
+ <span class="n">System</span><span class="o">.</span><span class="na">clearProperty</span><span class="o">(</span><span class="s">"local.registry.file"</span><span class="o">);</span>
+ <span class="o">}</span>
+</code></pre>
+ </div>
+ </li>
+</ul>
+
+<p>setProperty第二个参数填写registry.yaml的系统绝对路径,注意区分在不同系统下使用对应的路径分隔符。</p>
+
+<ul>
+ <li><strong>步骤 3</strong>开发服务消费者,启动微服务进行本地测试。</li>
+</ul>
+
+
+ </section>
+
+ <footer class="page__meta">
+
+
+
+
+
+ </footer>
+
+
+
+
+
+ </div>
+
+
+ </article>
+
+
+
+</div>
+
+
+ <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
+ <div align="center" style="margin: 0 0;">
+ <ins class="adsbygoogle"
+ style="display:block; border-bottom: initial;"
+ data-ad-client="ca-pub-7328585512091257"
+ data-ad-slot="3049671934"
+ data-ad-format="auto"></ins>
+ </div>
+
+ <div class="page__footer">
+ <footer>
+ <!-- start custom footer snippets -->
+
+<!-- end custom footer snippets -->
+ <div class="container">
+ <div class="row justify-content-md-center">
+
+ <div class="col">
+ <ul>
+ <p class="header">Resources</p>
+ <li><a href="/docs/quick-start/">Quick Start</a></li>
+ <li><a href="/users/user-guide/">User Guide</a></li>
+ <li><a href="/slides/">Slides</a></li>
+ <li><a href="/users/faq/">Common Questions</a></li>
+ </ul>
+ </div>
+ <div class="col">
+ <ul>
+ <p class="header">Contribute</p>
+ <li><a href="https://github.com/ServiceComb/ServiceComb.github.io/issues/new?title=Issue with _users/local-develop-test.md">Report a Doc Issue</a></li>
+ <li><a href="https://github.com/ServiceComb/ServiceComb.github.io/edit/master/_users/local-develop-test.md">Edit This Page on Github</a></li>
+ <li><a href="/developers/submit-codes/">Code Submit Guide</a></li>
+ </ul>
+ </div>
+ <div class="col">
+ <ul class="social-icons">
+ <p class="header">Community</p>
+ <li>
+ <a href="https://groups.google.com/forum/#!forum/servicecomb-developers" target="_blank"><span class="group">Dev</span></a> |
+ <a href="https://groups.google.com/forum/#!forum/servicecomb-users" target="_blank">User</span></a>
+ </li>
+ <li>
+ <a href="http://github.com/ServiceComb" target="_blank"><span class="github">Github</span></a>
+ </li>
+ <li>
+ <a href="https://twitter.com/ServiceComb" target="_blank"><span class="twitter">Twitter</span></a>
+ </li>
+ <li>
+ <a href="/feed.xml" target="_blank"><span class="rss">Feed</span></a>
+ </li>
+ </ul>
+ </div>
+ </div>
+</div>
+<div class="page__footer-bottom">
+ <div>© 2017 Apache incubator ServiceComb. Powered by <a href="http://jekyllrb.com" rel="nofollow">Jekyll</a> & <a href="https://mademistakes.com/work/minimal-mistakes-jekyll-theme/" rel="nofollow">Minimal Mistakes</a>.</div>
+</div>
+
+ </footer>
+ </div>
+
+ <script src="/assets/js/main.min.js"></script>
+
+
+
+
+ <script>
+ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+ m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+ })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+ ga('create', 'UA-101622733-1', 'auto');
+ ga('send', 'pageview');
+</script>
+
+
+
+
+
+
+
+ </body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-servicecomb-website/blob/08e1b43f/content/users/metrics/index.html
----------------------------------------------------------------------
diff --git a/content/users/metrics/index.html b/content/users/metrics/index.html
new file mode 100644
index 0000000..0fc8250
--- /dev/null
+++ b/content/users/metrics/index.html
@@ -0,0 +1,748 @@
+<!doctype html>
+<!--
+ Minimal Mistakes Jekyll Theme 4.4.1 by Michael Rose
+ Copyright 2017 Michael Rose - mademistakes.com | @mmistakes
+ Free for personal and commercial use under the MIT license
+ https://github.com/mmistakes/minimal-mistakes/blob/master/LICENSE.txt
+-->
+<html lang="en" class="no-js">
+ <head>
+ <meta charset="utf-8">
+
+<!-- begin SEO -->
+
+
+
+
+
+
+
+
+
+<title>Metrics Monitor - Apache incubator ServiceComb</title>
+
+
+
+
+<meta name="description" content="Metrics Monitor">
+
+
+
+
+<meta name="author" content="">
+
+<meta property="og:locale" content="en">
+<meta property="og:site_name" content="Apache incubator ServiceComb">
+<meta property="og:title" content="Metrics Monitor">
+
+
+ <link rel="canonical" href="http://github.com/pages/ServiceComb/servicesomb.github.io/users/metrics/">
+ <meta property="og:url" content="http://github.com/pages/ServiceComb/servicesomb.github.io/users/metrics/">
+
+
+
+ <meta property="og:description" content="Metrics Monitor">
+
+
+
+ <meta name="twitter:site" content="@ServiceComb">
+ <meta name="twitter:title" content="Metrics Monitor">
+ <meta name="twitter:description" content="Metrics Monitor">
+ <meta name="twitter:url" content="">
+
+
+ <meta name="twitter:card" content="summary">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <script type="application/ld+json">
+ {
+ "@context" : "http://schema.org",
+ "@type" : "Person",
+ "name" : "Apache incubator ServiceComb",
+ "url" : "http://github.com/pages/ServiceComb/servicesomb.github.io",
+ "sameAs" : null
+ }
+ </script>
+
+
+
+ <meta name="google-site-verification" content="HvJjNd7vvJ-yjSTHlBiIWEYxp_Hrz-PYEY5Idz9LRcA" />
+
+
+
+
+<!-- end SEO -->
+
+
+<link href="/feed.xml" type="application/atom+xml" rel="alternate" title="Apache incubator ServiceComb Feed">
+
+<!-- http://t.co/dKP3o1e -->
+<meta name="HandheldFriendly" content="True">
+<meta name="MobileOptimized" content="320">
+<meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+<script>
+ document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js ';
+</script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.7.1/clipboard.min.js"></script>
+<script src="/assets/js/prism.js"></script>
+
+<script type="text/javascript" async
+ src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-MML-AM_CHTML">
+</script>
+
+<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">
+
+<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
+<!-- For all browsers -->
+<link rel="stylesheet" href="/assets/css/main.css">
+<link rel="stylesheet" href="/assets/css/prism.css">
+
+<!--[if lte IE 9]>
+ <style>
+ /* old IE unsupported flexbox fixes */
+ .greedy-nav .site-title {
+ padding-right: 3em;
+ }
+ .greedy-nav button {
+ position: absolute;
+ top: 0;
+ right: 0;
+ height: 100%;
+ }
+ </style>
+<![endif]-->
+
+<meta http-equiv="cleartype" content="on">
+
+ <!-- start custom head snippets -->
+
+<!-- insert favicons. use http://realfavicongenerator.net/ -->
+<link href="https://fonts.cat.net/css?family=Roboto:400,500,700|Source+Code+Pro" rel="stylesheet">
+<script src="/assets/js/custom.js"></script>
+<!-- end custom head snippets -->
+
+ </head>
+
+ <body class="layout--single">
+
+ <!--[if lt IE 9]>
+<div class="notice--danger align-center" style="margin: 0;">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</div>
+<![endif]-->
+ <div class="masthead">
+ <div class="masthead__inner-wrap">
+ <div class="masthead__menu">
+ <nav id="site-nav" class="greedy-nav">
+
+ <a class="site-title active" href="/"><img src="//assets/images/ServiceComb-logo-1.png"></a>
+
+ <ul class="visible-links">
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/docs/quick-start/">Quick Start</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a class="active" href="/users/">Users</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/developers/">Developers</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/year-archive/">Blogs</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/faqs/">FAQ</a>
+
+ </li>
+
+ </ul>
+ <button><div class="navicon"></div></button>
+ <ul class="hidden-links hidden"></ul>
+ <div class="nav-lang">
+
+
+ <a href=/cn/users/metrics/>中文</a>
+
+ </div>
+ </nav>
+ </div>
+ </div>
+</div>
+
+
+
+
+
+
+<div id="main" role="main">
+
+ <div class="sidebar sticky">
+
+ <div class="back-to-home">Home > <a href="/">ServiceComb</a></div>
+
+
+
+
+
+
+
+
+
+
+
+<nav class="nav__list">
+
+ <input id="ac-toc" name="accordion-toc" type="checkbox" />
+ <label for="ac-toc">Toggle Menu</label>
+ <ul class="nav__items">
+
+ <li>
+
+ <span class="nav__sub-title">User Guide</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/" class="">Java Chassis Architecture</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/setup-environment/" class="">Setup Environment</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Develop Service Provider</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/service-definition/" class="">Service Definition</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-contract/" class="">Service Contract</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-springmvc/" class="">Develop Microservice with SpringMVC</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-jax-rs/" class="">Develop Microservice with JAX-RS</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-transparent-rpc/" class="">Develop Microservice with Transparent RPC</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-interface-constraints/" class="">Service Interface Constraints</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-configurations/" class="">Service Configurations</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/communicate-protocol/" class="">Communicate Protocol</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/application-boot-process/" class="">Application Boot Up Process</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-heartbeat/" class="">Service Heartbeat</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Develop Service Consumer</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-rest-template/" class="">Develop with Rest Template</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-rpc/" class="">Develop with Transparent RPC</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/use-service-contract/" class="">Use Service Contract</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/invoke-control/" class="">Invoke Control</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">General Development</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/local-develop-test/" class="">Develop and Test in Local Environment</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/use-servicecomb-in-spring-boot/" class="">Use ServiceComb in Spring Boot</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/distributed-tracing/" class="">Distributed Tracing</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/customized-tracing/" class="">Customized Tracing</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Edging Service</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/edging-service/nginx/" class="">confd and Nginx</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/edging-service/zuul/" class="">Zuul</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+
+
+
+ <a href="/users/metrics/"><span class="nav__sub-title nav__sub-title-with-url">Metrics</span></a>
+
+
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Deployment</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/run-mode/" class="">Run Mode</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Security</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/use-tls/" class="">Use TLS</a></li>
+
+ </ul>
+
+ </li>
+
+ </ul>
+</nav>
+
+
+
+ </div>
+
+
+
+ <article class="page" itemscope itemtype="http://schema.org/CreativeWork">
+ <meta itemprop="headline" content="Metrics Monitor">
+ <meta itemprop="description" content="Metrics Monitor">
+
+ <meta itemprop="dateModified" content="November 29, 2017">
+
+ <div class="page__inner-wrap">
+
+
+ <header>
+ <h1 class="page__title" itemprop="headline">Metrics Monitor
+</h1>
+
+ </header>
+
+
+
+ <section class="page__content" itemprop="text">
+ <aside class="sidebar__right">
+<nav class="toc">
+ <!-- <header><h4 class="nav__title"><i class="fa fa-file-text"></i> On This Page</h4></header> -->
+<ul class="toc__menu" id="markdown-toc">
+ <li><a href="#如何配置" id="markdown-toc-如何配置">如何配置</a></li>
+ <li><a href="#注意事项" id="markdown-toc-注意事项">注意事项</a></li>
+ <li><a href="#文件输出" id="markdown-toc-文件输出">文件输出</a></li>
+</ul>
+
+ </nav>
+</aside>
+
+<p>微服务框架从0.4.1版本开始支持监控功能Metrics,请注意这个功能还处于开发(Preview)阶段,请不要部署到生产环境,并且我们未来会做较大的调整,更多讨论会持续发布在<a href="https://groups.google.com/forum/#!forum/servicecomb-developers">Google Group</a>中。</p>
+<h2 id="如何配置">如何配置</h2>
+<p>请在microservice.yaml中添加如下配置项:</p>
+<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">APPLICATION_ID</span><span class="pi">:</span> <span class="s">demo</span>
+<span class="s">service_description</span><span class="pi">:</span>
+ <span class="s">name</span><span class="pi">:</span> <span class="s">demoService</span>
+ <span class="s">version</span><span class="pi">:</span> <span class="s">0.0.1</span>
+
+<span class="s">servicecomb</span><span class="pi">:</span>
+ <span class="s">metrics</span><span class="pi">:</span>
+ <span class="c1">#metrics数据采集时间(同样是写文件间隔),单位秒</span>
+ <span class="s">polltime</span><span class="pi">:</span> <span class="s">5</span>
+ <span class="c1">#如果metric是浮点数,输出结果保留几位小数,默认为1</span>
+ <span class="s">round_places</span><span class="pi">:</span> <span class="s">1</span>
+ <span class="s">file</span><span class="pi">:</span>
+ <span class="c1">#是否启用文件输出</span>
+ <span class="s">enabled</span><span class="pi">:</span> <span class="s">true</span>
+ <span class="c1">#输出文件的根目录</span>
+ <span class="s">root_path</span><span class="pi">:</span> <span class="s">D:/Temp</span>
+ <span class="c1">#metrics文件的前缀</span>
+ <span class="s">name_prefix</span><span class="pi">:</span> <span class="s">demo.demoService</span>
+ <span class="c1">#metrics文件Rolling最大大小,默认10MB,例如10KB,10MB,10GB</span>
+ <span class="s">max_rolling_size</span><span class="pi">:</span> <span class="s">10MB</span>
+ <span class="c1">#metrics文件Rolling文件保存数量,默认10个</span>
+ <span class="s">max_rolling_count</span><span class="pi">:</span> <span class="s">10</span>
+</code></pre>
+</div>
+
+<h2 id="注意事项">注意事项</h2>
+<ul>
+ <li>如果使用ServiceComb Spring Boot Start快速构建项目,需要排除log4j-over-slf4j依赖
+ <div class="language-xml highlighter-rouge"><pre class="highlight"><code> <span class="nt"><dependency></span>
+ <span class="nt"><groupId></span>org.springframework.boot<span class="nt"></groupId></span>
+ <span class="nt"><artifactId></span>spring-boot-starter<span class="nt"></artifactId></span>
+ <span class="c"><!--Metric使用log4j输出,屏蔽掉spring-boot-starter中的log4j-over-slf4j--></span>
+ <span class="nt"><exclusions></span>
+ <span class="nt"><exclusion></span>
+ <span class="nt"><groupId></span>org.slf4j<span class="nt"></groupId></span>
+ <span class="nt"><artifactId></span>log4j-over-slf4j<span class="nt"></artifactId></span>
+ <span class="nt"></exclusion></span>
+ <span class="nt"></exclusions></span>
+ <span class="nt"></dependency></span>
+</code></pre>
+ </div>
+ </li>
+ <li>需要在provider治理链中添加bizkeeper-provider,否则TPS和Latency无数据
+ <div class="language-yaml highlighter-rouge"><pre class="highlight"><code> <span class="s">APPLICATION_ID</span><span class="pi">:</span> <span class="s">demo</span>
+ <span class="s">service_description</span><span class="pi">:</span>
+ <span class="s">name</span><span class="pi">:</span> <span class="s">demoService</span>
+ <span class="s">version</span><span class="pi">:</span> <span class="s">0.0.1</span>
+ <span class="s">cse</span><span class="pi">:</span>
+ <span class="s">handler</span><span class="pi">:</span>
+ <span class="s">chain</span><span class="pi">:</span>
+ <span class="s">Provider</span><span class="pi">:</span>
+ <span class="s">default</span><span class="pi">:</span> <span class="s">bizkeeper-provider</span>
+</code></pre>
+ </div>
+ </li>
+</ul>
+
+<h2 id="文件输出">文件输出</h2>
+<p>每一个文件就是一个微服务示例级别的metrics数据输出:</p>
+
+<p><img src="/assets/images/metrics-output.png" alt="Metrics图片" /></p>
+
+
+ </section>
+
+ <footer class="page__meta">
+
+
+
+
+
+ </footer>
+
+
+
+
+
+ </div>
+
+
+ </article>
+
+
+
+</div>
+
+
+ <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
+ <div align="center" style="margin: 0 0;">
+ <ins class="adsbygoogle"
+ style="display:block; border-bottom: initial;"
+ data-ad-client="ca-pub-7328585512091257"
+ data-ad-slot="3049671934"
+ data-ad-format="auto"></ins>
+ </div>
+
+ <div class="page__footer">
+ <footer>
+ <!-- start custom footer snippets -->
+
+<!-- end custom footer snippets -->
+ <div class="container">
+ <div class="row justify-content-md-center">
+
+ <div class="col">
+ <ul>
+ <p class="header">Resources</p>
+ <li><a href="/docs/quick-start/">Quick Start</a></li>
+ <li><a href="/users/user-guide/">User Guide</a></li>
+ <li><a href="/slides/">Slides</a></li>
+ <li><a href="/users/faq/">Common Questions</a></li>
+ </ul>
+ </div>
+ <div class="col">
+ <ul>
+ <p class="header">Contribute</p>
+ <li><a href="https://github.com/ServiceComb/ServiceComb.github.io/issues/new?title=Issue with _users/Metrics.md">Report a Doc Issue</a></li>
+ <li><a href="https://github.com/ServiceComb/ServiceComb.github.io/edit/master/_users/Metrics.md">Edit This Page on Github</a></li>
+ <li><a href="/developers/submit-codes/">Code Submit Guide</a></li>
+ </ul>
+ </div>
+ <div class="col">
+ <ul class="social-icons">
+ <p class="header">Community</p>
+ <li>
+ <a href="https://groups.google.com/forum/#!forum/servicecomb-developers" target="_blank"><span class="group">Dev</span></a> |
+ <a href="https://groups.google.com/forum/#!forum/servicecomb-users" target="_blank">User</span></a>
+ </li>
+ <li>
+ <a href="http://github.com/ServiceComb" target="_blank"><span class="github">Github</span></a>
+ </li>
+ <li>
+ <a href="https://twitter.com/ServiceComb" target="_blank"><span class="twitter">Twitter</span></a>
+ </li>
+ <li>
+ <a href="/feed.xml" target="_blank"><span class="rss">Feed</span></a>
+ </li>
+ </ul>
+ </div>
+ </div>
+</div>
+<div class="page__footer-bottom">
+ <div>© 2017 Apache incubator ServiceComb. Powered by <a href="http://jekyllrb.com" rel="nofollow">Jekyll</a> & <a href="https://mademistakes.com/work/minimal-mistakes-jekyll-theme/" rel="nofollow">Minimal Mistakes</a>.</div>
+</div>
+
+ </footer>
+ </div>
+
+ <script src="/assets/js/main.min.js"></script>
+
+
+
+
+ <script>
+ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+ m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+ })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+ ga('create', 'UA-101622733-1', 'auto');
+ ga('send', 'pageview');
+</script>
+
+
+
+
+
+
+
+ </body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-servicecomb-website/blob/08e1b43f/content/users/run-mode/index.html
----------------------------------------------------------------------
diff --git a/content/users/run-mode/index.html b/content/users/run-mode/index.html
new file mode 100644
index 0000000..e5c3578
--- /dev/null
+++ b/content/users/run-mode/index.html
@@ -0,0 +1,771 @@
+<!doctype html>
+<!--
+ Minimal Mistakes Jekyll Theme 4.4.1 by Michael Rose
+ Copyright 2017 Michael Rose - mademistakes.com | @mmistakes
+ Free for personal and commercial use under the MIT license
+ https://github.com/mmistakes/minimal-mistakes/blob/master/LICENSE.txt
+-->
+<html lang="en" class="no-js">
+ <head>
+ <meta charset="utf-8">
+
+<!-- begin SEO -->
+
+
+
+
+
+
+
+
+
+<title>运行模式 - Apache incubator ServiceComb</title>
+
+
+
+
+<meta name="description" content="运行模式">
+
+
+
+
+<meta name="author" content="">
+
+<meta property="og:locale" content="en">
+<meta property="og:site_name" content="Apache incubator ServiceComb">
+<meta property="og:title" content="运行模式">
+
+
+ <link rel="canonical" href="http://github.com/pages/ServiceComb/servicesomb.github.io/users/run-mode/">
+ <meta property="og:url" content="http://github.com/pages/ServiceComb/servicesomb.github.io/users/run-mode/">
+
+
+
+ <meta property="og:description" content="运行模式">
+
+
+
+ <meta name="twitter:site" content="@ServiceComb">
+ <meta name="twitter:title" content="运行模式">
+ <meta name="twitter:description" content="运行模式">
+ <meta name="twitter:url" content="">
+
+
+ <meta name="twitter:card" content="summary">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <script type="application/ld+json">
+ {
+ "@context" : "http://schema.org",
+ "@type" : "Person",
+ "name" : "Apache incubator ServiceComb",
+ "url" : "http://github.com/pages/ServiceComb/servicesomb.github.io",
+ "sameAs" : null
+ }
+ </script>
+
+
+
+ <meta name="google-site-verification" content="HvJjNd7vvJ-yjSTHlBiIWEYxp_Hrz-PYEY5Idz9LRcA" />
+
+
+
+
+<!-- end SEO -->
+
+
+<link href="/feed.xml" type="application/atom+xml" rel="alternate" title="Apache incubator ServiceComb Feed">
+
+<!-- http://t.co/dKP3o1e -->
+<meta name="HandheldFriendly" content="True">
+<meta name="MobileOptimized" content="320">
+<meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+<script>
+ document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js ';
+</script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.7.1/clipboard.min.js"></script>
+<script src="/assets/js/prism.js"></script>
+
+<script type="text/javascript" async
+ src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-MML-AM_CHTML">
+</script>
+
+<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">
+
+<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
+<!-- For all browsers -->
+<link rel="stylesheet" href="/assets/css/main.css">
+<link rel="stylesheet" href="/assets/css/prism.css">
+
+<!--[if lte IE 9]>
+ <style>
+ /* old IE unsupported flexbox fixes */
+ .greedy-nav .site-title {
+ padding-right: 3em;
+ }
+ .greedy-nav button {
+ position: absolute;
+ top: 0;
+ right: 0;
+ height: 100%;
+ }
+ </style>
+<![endif]-->
+
+<meta http-equiv="cleartype" content="on">
+
+ <!-- start custom head snippets -->
+
+<!-- insert favicons. use http://realfavicongenerator.net/ -->
+<link href="https://fonts.cat.net/css?family=Roboto:400,500,700|Source+Code+Pro" rel="stylesheet">
+<script src="/assets/js/custom.js"></script>
+<!-- end custom head snippets -->
+
+ </head>
+
+ <body class="layout--single">
+
+ <!--[if lt IE 9]>
+<div class="notice--danger align-center" style="margin: 0;">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</div>
+<![endif]-->
+ <div class="masthead">
+ <div class="masthead__inner-wrap">
+ <div class="masthead__menu">
+ <nav id="site-nav" class="greedy-nav">
+
+ <a class="site-title active" href="/"><img src="//assets/images/ServiceComb-logo-1.png"></a>
+
+ <ul class="visible-links">
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/docs/quick-start/">Quick Start</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a class="active" href="/users/">Users</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/developers/">Developers</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/year-archive/">Blogs</a>
+
+ </li>
+
+
+ <li class="masthead__menu-item">
+
+
+
+ <a href="/faqs/">FAQ</a>
+
+ </li>
+
+ </ul>
+ <button><div class="navicon"></div></button>
+ <ul class="hidden-links hidden"></ul>
+ <div class="nav-lang">
+
+
+ <a href=/cn/users/run-mode/>中文</a>
+
+ </div>
+ </nav>
+ </div>
+ </div>
+</div>
+
+
+
+
+
+
+<div id="main" role="main">
+
+ <div class="sidebar sticky">
+
+ <div class="back-to-home">Home > <a href="/">ServiceComb</a></div>
+
+
+
+
+
+
+
+
+
+
+
+<nav class="nav__list">
+
+ <input id="ac-toc" name="accordion-toc" type="checkbox" />
+ <label for="ac-toc">Toggle Menu</label>
+ <ul class="nav__items">
+
+ <li>
+
+ <span class="nav__sub-title">User Guide</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/" class="">Java Chassis Architecture</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/setup-environment/" class="">Setup Environment</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Develop Service Provider</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/service-definition/" class="">Service Definition</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-contract/" class="">Service Contract</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-springmvc/" class="">Develop Microservice with SpringMVC</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-jax-rs/" class="">Develop Microservice with JAX-RS</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-transparent-rpc/" class="">Develop Microservice with Transparent RPC</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-interface-constraints/" class="">Service Interface Constraints</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-configurations/" class="">Service Configurations</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/communicate-protocol/" class="">Communicate Protocol</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/application-boot-process/" class="">Application Boot Up Process</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/service-heartbeat/" class="">Service Heartbeat</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Develop Service Consumer</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-rest-template/" class="">Develop with Rest Template</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/develop-with-rpc/" class="">Develop with Transparent RPC</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/use-service-contract/" class="">Use Service Contract</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/invoke-control/" class="">Invoke Control</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">General Development</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/local-develop-test/" class="">Develop and Test in Local Environment</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/use-servicecomb-in-spring-boot/" class="">Use ServiceComb in Spring Boot</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/distributed-tracing/" class="">Distributed Tracing</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/customized-tracing/" class="">Customized Tracing</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Edging Service</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/edging-service/nginx/" class="">confd and Nginx</a></li>
+
+
+
+
+
+
+
+ <li><a href="/users/edging-service/zuul/" class="">Zuul</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+
+
+
+ <a href="/users/metrics/"><span class="nav__sub-title nav__sub-title-with-url">Metrics</span></a>
+
+
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Deployment</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/run-mode/" class="active">Run Mode</a></li>
+
+ </ul>
+
+ </li>
+
+ <li>
+
+ <span class="nav__sub-title">Security</span>
+
+
+
+ <ul>
+
+
+
+
+
+
+
+ <li><a href="/users/use-tls/" class="">Use TLS</a></li>
+
+ </ul>
+
+ </li>
+
+ </ul>
+</nav>
+
+
+
+ </div>
+
+
+
+ <article class="page" itemscope itemtype="http://schema.org/CreativeWork">
+ <meta itemprop="headline" content="运行模式">
+ <meta itemprop="description" content="运行模式">
+
+ <meta itemprop="dateModified" content="June 06, 2017">
+
+ <div class="page__inner-wrap">
+
+
+ <header>
+ <h1 class="page__title" itemprop="headline">运行模式
+</h1>
+
+ </header>
+
+
+
+ <section class="page__content" itemprop="text">
+ <aside class="sidebar__right">
+<nav class="toc">
+ <!-- <header><h4 class="nav__title"><i class="fa fa-file-text"></i> On This Page</h4></header> -->
+<ul class="toc__menu" id="markdown-toc">
+ <li><a href="#standalone模式" id="markdown-toc-standalone模式">standalone模式</a> <ul>
+ <li><a href="#操作步骤" id="markdown-toc-操作步骤">操作步骤</a></li>
+ </ul>
+ </li>
+ <li><a href="#web容器模式" id="markdown-toc-web容器模式">WEB容器模式</a> <ul>
+ <li><a href="#开发示例" id="markdown-toc-开发示例">开发示例</a></li>
+ </ul>
+ </li>
+</ul>
+
+ </nav>
+</aside>
+
+<p>微服务框架当前提供了两种部署运行模式:standalone模式和web容器模式。推荐使用<strong>standalone模式</strong>拉起服务进程。</p>
+<h2 id="standalone模式">standalone模式</h2>
+<p>一个Standalone的容器,以简单的Main加载Spring启动,因为服务通常不需要Tomcat/JBoss等Web容器的特性,没必要用Web容器去加载服务。微框架提供了standalone部署运行模式,服务容器只是一个简单的Main方法,并加载一个简单的Spring容器,用于暴露服务。</p>
+
+<h3 id="操作步骤">操作步骤</h3>
+
+<ul>
+ <li>
+ <p><strong>步骤1</strong> 编写Main函数,初始化日志和加载服务配置,内容如下:</p>
+
+ <div class="language-java highlighter-rouge"><pre class="highlight"><code> <span class="kn">import</span> <span class="nn">io.servicecomb.foundation.common.utils.BeanUtils</span><span class="o">;</span>
+ <span class="kn">import</span> <span class="nn">io.servicecomb.foundation.common.utils.Log4jUtils</span><span class="o">;</span>
+ <span class="kd">public</span> <span class="kd">class</span> <span class="nc">MainServer</span> <span class="o">{</span>
+ <span class="kd">public</span> <span class="kd">static</span> <span class="kt">void</span> <span class="nf">main</span><span class="o">(</span><span class="n">String</span><span class="o">[]</span> <span class="n">args</span><span class="o">)</span> <span class="kd">throws</span> <span class="n">Exception</span> <span class="o">{</span>
+ <span class="err"> </span><span class="n">Log4jUtils</span><span class="o">.</span><span class="na">init</span><span class="o">();</span> <span class="err">#日志初始化</span>
+ <span class="err"> </span><span class="n">BeanUtils</span><span class="o">.</span><span class="na">init</span><span class="o">();</span> <span class="err">#</span> <span class="n">Spring</span> <span class="n">bean</span><span class="err">初始化</span>
+ <span class="c1">// other codes omitted</span>
+ <span class="o">}</span>
+ <span class="o">}</span>
+</code></pre>
+ </div>
+ </li>
+ <li>
+ <p><strong>步骤2</strong> 运行MainServer即可启动该微服务进程,向外暴露服务。</p>
+
+ <p>注意:如果使用的是rest网络通道,需要将pom中的transport改为使用cse-transport-rest-vertx包。</p>
+ </li>
+</ul>
+
+<h2 id="web容器模式">WEB容器模式</h2>
+<p>如果需要将该微服务加载到web容器中启动运行时,需要新建一个servlet工程包装一下,该servlet工程,根据需要,可以不写或写少量的引导代码即可。</p>
+
+<h3 id="开发示例">开发示例</h3>
+
+<div class="language-xml highlighter-rouge"><pre class="highlight"><code><span class="nt"><web-app></span>
+ <span class="nt"><context-param></span>
+ <span class="nt"><param-name></span>contextConfigLocation<span class="nt"></param-name></span>
+ <span class="nt"><param-value></span>
+ classpath*:META-INF/spring/*.bean.xml
+ classpath*:app-config.xml
+ <span class="nt"></param-value></span>
+ <span class="nt"></context-param></span>
+ <span class="nt"><listener></span>
+ <span class="nt"><listener-class></span>io.servicecomb.transport.rest.servlet.RestServletContextListener<span class="nt"></listener-class></span>
+ <span class="nt"></listener></span>
+
+ <span class="nt"><servlet></span>
+ <span class="nt"><servlet-name></span>RestServlet<span class="nt"></servlet-name></span>
+ <span class="nt"><servlet-class></span>io.servicecomb.transport.rest.servlet.RestServlet<span class="nt"></servlet-class></span>
+ <span class="nt"><load-on-startup></span>1<span class="nt"></load-on-startup></span>
+ <span class="nt"><async-supported></span>true<span class="nt"></async-supported></span>
+ <span class="nt"></servlet></span>
+ <span class="nt"><servlet-mapping></span>
+ <span class="nt"><servlet-name></span>RestServlet<span class="nt"></servlet-name></span>
+ <span class="nt"><url-pattern></span>/rest/*<span class="nt"></url-pattern></span>
+ <span class="nt"></servlet-mapping></span>
+<span class="nt"></web-app></span>
+</code></pre>
+</div>
+
+<ul>
+ <li><strong>步骤2 修改pom文件</strong></li>
+</ul>
+
+<div class="language-xml highlighter-rouge"><pre class="highlight"><code><span class="nt"><dependencies></span>
+ <span class="nt"><dependency></span>
+ <span class="nt"><groupId></span>io.servicecomb<span class="nt"></groupId></span>
+ <span class="nt"><artifactId></span>transport-rest-servlet<span class="nt"></artifactId></span>
+ <span class="nt"></dependency></span>
+<span class="nt"></dependencies></span>
+<span class="nt"><build></span>
+ <span class="nt"><finalName></span>test<span class="nt"></finalName></span>
+<span class="nt"></build></span>
+</code></pre>
+</div>
+
+<p><strong>注意事项:</strong></p>
+<ol>
+ <li>RESTful调用应该与web容器中其他静态资源调用(比如html、js等等)隔离开来,所以webroot后一段应该还有一层关键字,比如上面web.xml中举的例子(/test/rest)中的rest。</li>
+ <li>以tomcat为例,默认每个war包都有不同的webroot,这个webroot需要是basePath的前缀,比如webroot为test,则该微服务所有的契约都必须以/test打头。</li>
+ <li>当微服务加载在web容器中,并直接使用web容器开的http、https端口时,因为是使用的web容器的通信通道,所以需要满足web容器的规则。</li>
+</ol>
+
+
+ </section>
+
+ <footer class="page__meta">
+
+
+
+
+
+ </footer>
+
+
+
+
+
+ </div>
+
+
+ </article>
+
+
+
+</div>
+
+
+ <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
+ <div align="center" style="margin: 0 0;">
+ <ins class="adsbygoogle"
+ style="display:block; border-bottom: initial;"
+ data-ad-client="ca-pub-7328585512091257"
+ data-ad-slot="3049671934"
+ data-ad-format="auto"></ins>
+ </div>
+
+ <div class="page__footer">
+ <footer>
+ <!-- start custom footer snippets -->
+
+<!-- end custom footer snippets -->
+ <div class="container">
+ <div class="row justify-content-md-center">
+
+ <div class="col">
+ <ul>
+ <p class="header">Resources</p>
+ <li><a href="/docs/quick-start/">Quick Start</a></li>
+ <li><a href="/users/user-guide/">User Guide</a></li>
+ <li><a href="/slides/">Slides</a></li>
+ <li><a href="/users/faq/">Common Questions</a></li>
+ </ul>
+ </div>
+ <div class="col">
+ <ul>
+ <p class="header">Contribute</p>
+ <li><a href="https://github.com/ServiceComb/ServiceComb.github.io/issues/new?title=Issue with _users/deployment.md">Report a Doc Issue</a></li>
+ <li><a href="https://github.com/ServiceComb/ServiceComb.github.io/edit/master/_users/deployment.md">Edit This Page on Github</a></li>
+ <li><a href="/developers/submit-codes/">Code Submit Guide</a></li>
+ </ul>
+ </div>
+ <div class="col">
+ <ul class="social-icons">
+ <p class="header">Community</p>
+ <li>
+ <a href="https://groups.google.com/forum/#!forum/servicecomb-developers" target="_blank"><span class="group">Dev</span></a> |
+ <a href="https://groups.google.com/forum/#!forum/servicecomb-users" target="_blank">User</span></a>
+ </li>
+ <li>
+ <a href="http://github.com/ServiceComb" target="_blank"><span class="github">Github</span></a>
+ </li>
+ <li>
+ <a href="https://twitter.com/ServiceComb" target="_blank"><span class="twitter">Twitter</span></a>
+ </li>
+ <li>
+ <a href="/feed.xml" target="_blank"><span class="rss">Feed</span></a>
+ </li>
+ </ul>
+ </div>
+ </div>
+</div>
+<div class="page__footer-bottom">
+ <div>© 2017 Apache incubator ServiceComb. Powered by <a href="http://jekyllrb.com" rel="nofollow">Jekyll</a> & <a href="https://mademistakes.com/work/minimal-mistakes-jekyll-theme/" rel="nofollow">Minimal Mistakes</a>.</div>
+</div>
+
+ </footer>
+ </div>
+
+ <script src="/assets/js/main.min.js"></script>
+
+
+
+
+ <script>
+ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+ m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+ })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+ ga('create', 'UA-101622733-1', 'auto');
+ ga('send', 'pageview');
+</script>
+
+
+
+
+
+
+
+ </body>
+</html>