http://git-wip-us.apache.org/repos/asf/incubator-servicecomb-website/blob/08e1b43f/content/users/edging-service/zuul/index.html ---------------------------------------------------------------------- diff --git a/content/users/edging-service/zuul/index.html b/content/users/edging-service/zuul/index.html new file mode 100644 index 0000000..732cf1c --- /dev/null +++ b/content/users/edging-service/zuul/index.html @@ -0,0 +1,839 @@ +<!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>使ç¨Zuulåè¾¹ç¼æå¡ - Apache incubator ServiceComb</title> + + + + +<meta name="description" content="使ç¨Zuulåè¾¹ç¼æå¡"> + + + + +<meta name="author" content=""> + +<meta property="og:locale" content="en"> +<meta property="og:site_name" content="Apache incubator ServiceComb"> +<meta property="og:title" content="使ç¨Zuulåè¾¹ç¼æå¡"> + + + <link rel="canonical" href="http://github.com/pages/ServiceComb/servicesomb.github.io/users/edging-service/zuul/"> + <meta property="og:url" content="http://github.com/pages/ServiceComb/servicesomb.github.io/users/edging-service/zuul/"> + + + + <meta property="og:description" content="使ç¨Zuulåè¾¹ç¼æå¡"> + + + + <meta name="twitter:site" content="@ServiceComb"> + <meta name="twitter:title" content="使ç¨Zuulåè¾¹ç¼æå¡"> + <meta name="twitter:description" content="使ç¨Zuulåè¾¹ç¼æå¡"> + <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/edging-service/zuul/>ä¸æ</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="active">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="使ç¨Zuulåè¾¹ç¼æå¡"> + <meta itemprop="description" content="使ç¨Zuulåè¾¹ç¼æå¡"> + + <meta itemprop="dateModified" content="August 15, 2017"> + + <div class="page__inner-wrap"> + + + <header> + <h1 class="page__title" itemprop="headline">使ç¨Zuulåè¾¹ç¼æå¡ +</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="#api-gateway" id="markdown-toc-api-gateway">API Gatewayï¼</a></li> + <li><a href="#zuul" id="markdown-toc-zuul">Zuul</a></li> + </ul> + </li> + <li><a href="#åºæ¯æè¿°" id="markdown-toc-åºæ¯æè¿°">åºæ¯æè¿°</a></li> + <li><a href="#注æäºé¡¹" id="markdown-toc-注æäºé¡¹">注æäºé¡¹</a></li> + <li><a href="#å¯å¨zuul-proxy" id="markdown-toc-å¯å¨zuul-proxy">å¯å¨Zuul Proxy</a></li> + <li><a href="#使ç¨zuul-proxy" id="markdown-toc-使ç¨zuul-proxy">使ç¨Zuul Proxy</a></li> +</ul> + + </nav> +</aside> + +<h2 id="æ¦å¿µéè¿°">æ¦å¿µéè¿°</h2> + +<h3 id="api-gateway">API Gatewayï¼</h3> + +<p>API Gatewayæ¯ä¸ä¸ªæå¡å¨ï¼ä¹å¯ä»¥è¯´æ¯è¿å ¥ç³»ç»çå¯ä¸èç¹ãAPI Gatewayå°è£ å é¨ç³»ç»çæ¶æï¼å¹¶ä¸æä¾APIç»å个客æ·ç«¯ã</p> + +<h3 id="zuul">Zuul</h3> + +<p>Zuulæ¯NetflixçåºäºJVMçè·¯ç±å¨åæå¡å¨ç«¯è´è½½åè¡¡å¨ï¼å¯ä»¥ä½¿ç¨Zuulè¿è¡ä»¥ä¸æä½ï¼</p> + +<ul> + <li>认è¯</li> + <li>æ´å¯</li> + <li>ååæµè¯</li> + <li>éä¸éæµè¯</li> + <li>å¨æè·¯ç±</li> + <li>æå¡è¿ç§»</li> + <li>è´è½½è±è½</li> + <li>å®å ¨</li> + <li>éæç¸ååºå¤ç</li> + <li>主å¨/被å¨æµé管ç</li> +</ul> + +<p>æ¬å°è主è¦ä»ç»å¨SpringBootåºç¨ä¸ä½¿ç¨ZuulåAPI Gatewayãå ³äºZuulç详ç»åè½ä»ç»è¯·åèææ¡£<a href="https://springcloud.cc/spring-cloud-dalston.html#_router_and_filter_zuul">è·¯ç±å¨åè¿æ»¤å¨ï¼Zuul</a>ã</p> + +<h2 id="åºæ¯æè¿°">åºæ¯æè¿°</h2> + +<p>ZuulåAPI Gatewayï¼å³å»ºç«ä¸ä¸ªZuul Proxyåºç¨ï¼å¨è¯¥Proxyåºç¨ä¸ç»ä¸å®ä¹ææçå¾®æå¡è®¿é®å ¥å£ï¼éè¿ä½¿ç¨ä¸åçåç¼(stripped)æ¥åºåå个微æå¡ãæ¬å°èéè¿å»ºç«ä¸ä¸ªZuulProxy SpringBootåºç¨æ¥æ¼ç¤ºZuulçAPI Gatewayåè½ã</p> + +<h2 id="注æäºé¡¹">注æäºé¡¹</h2> + +<p>æ¬å°èä»ç»çZuulProxyåZuulServerçdemoé½æ¯åºäºSpringBootåServiceCombæ¡æ¶çåºç¨ï¼å ·ä½è¯·åè<a href="/users/use-servicecomb-in-spring-boot/">å¨ServiceCombæ¡æ¶ä¸éæSpringBootæ¡æ¶</a>ã</p> + +<h2 id="å¯å¨zuul-proxy">å¯å¨Zuul Proxy</h2> + +<p>æ¬èä»ç»å¦ä½å¯å¨ä¸ä¸ªzuul proxyåºç¨ä½ä¸ºAPI Gatewayãæ¥éª¤å¦ä¸ï¼</p> + +<ul> + <li> + <p><strong>æ¥éª¤ 1</strong>å¨pomæ件ä¸æ·»å ä¾èµï¼</p> + + <div class="language-xml highlighter-rouge"><pre class="highlight"><code> <span class="nt"><dependency></span> + <span class="nt"><groupId></span>org.springframework.cloud<span class="nt"></groupId></span> + <span class="nt"><artifactId></span>spring-cloud-starter-zuul<span class="nt"></artifactId></span> + <span class="nt"></dependency></span> + <span class="nt"><dependency></span> + <span class="nt"><groupId></span>org.springframework.cloud<span class="nt"></groupId></span> + <span class="nt"><artifactId></span>spring-cloud-starter-ribbon<span class="nt"></artifactId></span> + <span class="nt"></dependency><dependency></span> + <span class="nt"><groupId></span>org.springframework.cloud<span class="nt"></groupId></span> + <span class="nt"><artifactId></span>spring-cloud-starter-hystrix<span class="nt"></artifactId></span> + <span class="nt"></dependency></span> + <span class="nt"><dependency></span> + <span class="nt"><groupId></span>io.servicecomb<span class="nt"></groupId></span> + <span class="nt"><artifactId></span>spring-boot-starter-discovery<span class="nt"></artifactId></span> + <span class="nt"></dependency></span> +</code></pre> + </div> + </li> + <li> + <p><strong>æ¥éª¤ 2</strong>å¨SpringBoot主类添å 注解ï¼</p> + + <div class="language-java highlighter-rouge"><pre class="highlight"><code> <span class="nd">@SpringBootApplication</span> + <span class="nd">@EnableServiceComb</span> + <span class="nd">@EnableZuulProxy</span><span class="c1">//æ°å¢æ³¨è§£</span> + <span class="kd">public</span> <span class="kd">class</span> <span class="nc">ZuulMain</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="n">SpringApplication</span><span class="o">.</span><span class="na">run</span><span class="o">(</span><span class="n">ZuulMain</span><span class="o">.</span><span class="na">class</span><span class="o">,</span> <span class="n">args</span><span class="o">);</span> + <span class="o">}</span> + <span class="o">}</span> +</code></pre> + </div> + </li> + <li> + <p><strong>æ¥éª¤ 3</strong>å¨application.ymlæ件ä¸å®ä¹è·¯ç±çç¥ï¼</p> + + <div class="language-yaml highlighter-rouge"><pre class="highlight"><code> <span class="s">server</span><span class="pi">:</span> + <span class="s">port</span><span class="pi">:</span> <span class="s">8754</span> <span class="c1">#api gatewayæå¡ç«¯å£</span> + <span class="s">zuul</span><span class="pi">:</span> + <span class="s">routes</span><span class="pi">:</span> <span class="c1">#è·¯ç±çç¥</span> + <span class="s">discoveryServer</span><span class="pi">:</span> <span class="s">/myServer/**</span> <span class="c1">#è·¯ç±è§å</span> +</code></pre> + </div> + + <p>ä¸è¿°çé 置项å¯ä»¥æ ¹æ®å®é å¼åç¯å¢è¿è¡é ç½®ãå ³äºzuul.routersçè·¯ç±çç¥ç详ç»å®ä¹è§åï¼è¯·åèå®æ¹æç®ï¼<a href="https://springcloud.cc/spring-cloud-dalston.html#_router_and_filter_zuul">è·¯ç±å¨åè¿æ»¤å¨ï¼Zuul</a>ï¼å¯æ´ç»ç²åº¦å°å¯¹è·¯ç±è¿è¡æ§å¶ã</p> + </li> + <li> + <p><strong>æ¥éª¤ 4</strong>å¨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">discoverytest</span> <span class="c1">#æå¡ID</span> + <span class="s">service_description</span><span class="pi">:</span> + <span class="s">name</span><span class="pi">:</span> <span class="s">discoveryGateway</span> <span class="c1">#æå¡å称</span> + <span class="s">version</span><span class="pi">:</span> <span class="s">0.0.2</span> <span class="c1">#æå¡çæ¬å·</span> + <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> + <span class="s">rest</span><span class="pi">:</span> + <span class="s">address</span><span class="pi">:</span> <span class="s">0.0.0.0:8082</span> <span class="c1">#å¾®æå¡ç«¯å£ï¼å¯ä¸å</span> +</code></pre> + </div> + </li> +</ul> + +<p>æ¬å°èæææå¡ä½¿ç¨çé½æ¯æ¬å°çæå¡ä¸å¿ï¼å ·ä½çæå¡ä¸å¿å¯å¨æµç¨è¯·åè<a href="/users/setup-environment/#è¿è¡service-center">å¯å¨æ¬å°æå¡ä¸å¿</a>ã</p> + +<ul> + <li><strong>æ¥éª¤ 5ã</strong>è¿è¡ZuulMain åºç¨</li> +</ul> + +<h2 id="使ç¨zuul-proxy">使ç¨Zuul Proxy</h2> + +<p>å¨ä½¿ç¨zuulåçAPI Gatewayåï¼é¦å è¦å¯å¨å¨zuul.routersä¸å®ä¹çå¾®æå¡æä¾è ã</p> + +<p>å¼åæå¡æä¾è ï¼å¼åæµç¨è¯·åè<a href="/users/service-definition/">å¼åæå¡æä¾è </a>ãå¨å¾®æå¡microservice.yamlæ件ä¸é注æ以ä¸ä¸¤ç¹ï¼</p> + +<ul> + <li> + <p>APPLICATION_IDéè¦äºzuul proxyä¸å®ä¹çä¿æä¸è´ã</p> + </li> + <li> + <p>service_description.nameéè¦äºzuul.routersä¸ç¸å¯¹åºã</p> + </li> +</ul> + +<p>示ä¾å¦ä¸ï¼</p> + +<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">APPLICATION_ID</span><span class="pi">:</span> <span class="s">discoverytest</span> <span class="c1">#ä¸zuul proxyä¸è´</span> + <span class="s">service_description</span><span class="pi">:</span> + <span class="s">name</span><span class="pi">:</span> <span class="s">discoveryServer</span> <span class="c1">#æå¡å称ï¼ä¸zuul.routers对åº</span> + <span class="s">version</span><span class="pi">:</span> <span class="s">0.0.2</span> +<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> + <span class="s">rest</span><span class="pi">:</span> + <span class="s">address</span><span class="pi">:</span> <span class="s">0.0.0.0:8080</span> +</code></pre> +</div> + +<p>API Gatewayç访é®å ¥å£ä¸ºï¼<a href="http://127.0.0.1:8754">http://127.0.0.1:8754</a>ï¼ææå¨zuul.routersä¸å®ä¹çæå¡é½å¯éè¿è¿ä¸ªè®¿é®å ¥å£è¿è¡ä»£ç访é®ï¼è®¿é®è§åå¦ä¸ï¼</p> + +<p>http://127.0.0.1:8754/myServer/***](http://127.0.0.1:8754/myServer/***)</p> + +<p>è¿è¡¨ç¤ºï¼Httpè°ç¨<a href="http://127.0.0.1:8754/myServer/***">http://127.0.0.1:8754/myServer/***</a>ï¼ä¼è½¬å°discoveryServeræå¡ï¼ä¾å¦ï¼â/myServer/101â跳转å°discoveryServer æå¡ä¸çâ/101âï¼</p> + +<blockquote> + <p>å¦æå¨æå¡ä¸å¿åæ¶åå¨å¤ä¸ªdiscoveryServeræå¡(çæ¬ä¸å),zuulé»è®¤éç¨Ribbonçç¥å¯¹è¯·æ±è¿è¡è½¬åã</p> +</blockquote> + + + </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/zuul.md">Report a Doc Issue</a></li> + <li><a href="https://github.com/ServiceComb/ServiceComb.github.io/edit/master/_users/zuul.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/faq/index.html ---------------------------------------------------------------------- diff --git a/content/users/faq/index.html b/content/users/faq/index.html new file mode 100644 index 0000000..5c02588 --- /dev/null +++ b/content/users/faq/index.html @@ -0,0 +1,734 @@ +<!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>FAQ - Apache incubator ServiceComb</title> + + + + +<meta name="description" content="FAQ"> + + + + +<meta name="author" content=""> + +<meta property="og:locale" content="en"> +<meta property="og:site_name" content="Apache incubator ServiceComb"> +<meta property="og:title" content="FAQ"> + + + <link rel="canonical" href="http://github.com/pages/ServiceComb/servicesomb.github.io/users/faq/"> + <meta property="og:url" content="http://github.com/pages/ServiceComb/servicesomb.github.io/users/faq/"> + + + + <meta property="og:description" content="FAQ"> + + + + <meta name="twitter:site" content="@ServiceComb"> + <meta name="twitter:title" content="FAQ"> + <meta name="twitter:description" content="FAQ"> + <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/faq/>ä¸æ</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="FAQ"> + <meta itemprop="description" content="FAQ"> + + <meta itemprop="dateModified" content="June 06, 2017"> + + <div class="page__inner-wrap"> + + + <header> + <h1 class="page__title" itemprop="headline">FAQ +</h1> + + </header> + + + + <section class="page__content" itemprop="text"> + <ol> + <li> + <p><strong>Q: What need to be cautious when using Java-Chassis?</strong></p> + + <p>A: There are a few restrictions when using Java-Chassis:</p> + <ul> + <li>Before version 0.3.0-SNAPSHOT, it does not support annotations like <code class="highlighter-rouge">@GetMapping</code>.</li> + <li>When using the same HTTP request method, e.g. GET, the method name need to be unique as it will become operation ID when swagger generates contracts.</li> + <li>Class and method name need to be public.</li> + </ul> + </li> + <li> + <p><strong>Q: When using the <em>spring-boot-starter-provider</em> dependency, property like <code class="highlighter-rouge">spring.main.web-environment</code> not working in <em>application.yml</em> file.</strong></p> + + <p>A: When you need both the starter provider dependency and the servlet, you need to declare <code class="highlighter-rouge">spring.main.web-environment</code> in <em>application.properties</em> file or declare it in <em>application.yml</em> file and create an empty <em>application.properties</em> file.</p> + </li> + <li> + <p><strong>Q: Whatâs the dependency differences between gateway and other microservices?</strong></p> + + <div class="language-xml highlighter-rouge"><pre class="highlight"><code><span class="nt"><groupId></span>io.servicecomb<span class="nt"></groupId></span> +<span class="nt"><artifactId></span>spring-boot-starter-provider<span class="nt"></artifactId></span> +</code></pre> + </div> + + <p>A: Gateway depends on not only the <code class="highlighter-rouge">spring-boot-starter-provider</code>, but also the <code class="highlighter-rouge">spring-boot-starter-discovery</code>. This can refer to the <em>manger</em> implementation of <a href="https://github.com/ServiceComb/LinuxCon-Beijing-WorkShop">LinuxCon-Beijing-Workshop</a>.</p> + </li> + <li> + <p><strong>Q: Do gateway need to configure assembly like the other microservices? Is <em>/maven/gateway</em> the default path of the docker maven plugin?</strong></p> + + <p>A: Yes. Docker maven plugin relies on the assembly files to generate docker image. <em>/maven</em> is the default path of docker maven plugin and <em>/gateway</em> is the path defined in the assembly file.</p> + </li> + <li> + <p><strong>Q: Are there any restrictions of the return type of our API? Should it be the type of ResponseEntity?</strong></p> + + <p>A: No, examples can refer to <a href="https://github.com/ServiceComb/java-chassis/blob/master/integration-tests/springmvc-tests/src/test/java/io/servicecomb/demo/springmvc/tests/SpringMvcIntegrationTestBase.java#L145">the implementation of integration-test</a> in java-chassis.</p> + </li> + <li> + <p><strong>Q: Our API can not be accessed after microservices are up. It just returns <em>404 Not Found</em>. The codes we use is as follows:</strong></p> + + <div class="language-java highlighter-rouge"><pre class="highlight"><code><span class="nd">@RestController</span> +<span class="nd">@RestSchema</span><span class="o">(</span><span class="n">schemaId</span> <span class="o">=</span> <span class="s">"worker"</span><span class="o">)</span> +<span class="kd">public</span> <span class="kd">class</span> <span class="nc">WorkerController</span> <span class="o">{</span> + <span class="nd">@RequestMapping</span><span class="o">(</span><span class="n">value</span><span class="o">=</span><span class="s">"/count"</span><span class="o">,</span> <span class="n">method</span><span class="o">=</span><span class="n">RequestMethod</span><span class="o">.</span><span class="na">GET</span><span class="o">)</span> + <span class="kd">public</span> <span class="kt">int</span> <span class="nf">getWorkerNumbers</span><span class="o">()</span> <span class="o">{</span> + <span class="o">...</span> + <span class="o">}</span> +<span class="o">}</span> +</code></pre> + </div> + + <p>A: Without specifying the base path, ServiceComb will use the classname as the base path. Hence, the path should be <code class="highlighter-rouge">/WorkerController/count</code> in the previous code. If you want to access path like <code class="highlighter-rouge">/count</code>, you need to specify base path as <code class="highlighter-rouge">/</code> as follows:</p> + <div class="language-java highlighter-rouge"><pre class="highlight"><code><span class="nd">@RequestMapping</span><span class="o">(</span><span class="n">value</span> <span class="o">=</span> <span class="s">"/"</span><span class="o">)</span> +<span class="kd">public</span> <span class="kd">class</span> <span class="nc">WorkerController</span> <span class="o">{}</span> +</code></pre> + </div> + </li> + <li> + <p><strong>Q: What's the default base path if I have not declared the value of RequestMapping annotation?</strong></p> + + <p>A: Supposed the class name of your controller is <em>HelloController</em>, the base path is /HelloController.</p> + </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/faq.md">Report a Doc Issue</a></li> + <li><a href="https://github.com/ServiceComb/ServiceComb.github.io/edit/master/_users/faq.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/huawei-cloud-faq/index.html ---------------------------------------------------------------------- diff --git a/content/users/huawei-cloud-faq/index.html b/content/users/huawei-cloud-faq/index.html new file mode 100644 index 0000000..ebd1378 --- /dev/null +++ b/content/users/huawei-cloud-faq/index.html @@ -0,0 +1,707 @@ +<!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>Huawei Cloud FAQ - Apache incubator ServiceComb</title> + + + + +<meta name="description" content="Huawei Cloud FAQ"> + + + + +<meta name="author" content=""> + +<meta property="og:locale" content="en"> +<meta property="og:site_name" content="Apache incubator ServiceComb"> +<meta property="og:title" content="Huawei Cloud FAQ"> + + + <link rel="canonical" href="http://github.com/pages/ServiceComb/servicesomb.github.io/users/huawei-cloud-faq/"> + <meta property="og:url" content="http://github.com/pages/ServiceComb/servicesomb.github.io/users/huawei-cloud-faq/"> + + + + <meta property="og:description" content="Huawei Cloud FAQ"> + + + + <meta name="twitter:site" content="@ServiceComb"> + <meta name="twitter:title" content="Huawei Cloud FAQ"> + <meta name="twitter:description" content="Huawei Cloud FAQ"> + <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/huawei-cloud-faq/>ä¸æ</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="Huawei Cloud FAQ"> + <meta itemprop="description" content="Huawei Cloud FAQ"> + + <meta itemprop="dateModified" content="June 06, 2017"> + + <div class="page__inner-wrap"> + + + <header> + <h1 class="page__title" itemprop="headline">Huawei Cloud FAQ +</h1> + + </header> + + + + <section class="page__content" itemprop="text"> + <ol> + <li> + <p><strong>Q: When we push images to Huawei Public Cloud, what needs to be careful about the image tag?</strong></p> + + <p>A: It needs to be different with all uploaded images. As Docker does not pull image from remote every time it starts up a container. Hence, the Docker does not know whether the image updated or not. There are two solutions for this:</p> + + <p>(1) Use different image tag every time you upload a image.</p> + + <p>(2) Delete the image in the backend manually.</p> + + <p>P.S. If you use the Huawei Cloudâs orchestration, you can avoid this by setting <em>imagePullPolicy</em> to <em>Always</em>.</p> + </li> + <li> + <p><strong>Q: We encountered this error when using Huawei Public Cloud: <em>WARN com.huaewi.paas.monitor.DataFactory: Upload monitor data error.</em> The configuration we use is as follows:</strong></p> + + <div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">cse</span><span class="pi">:</span> + <span class="s">monitor</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> + + <p>A: There are mistakes in your configuration files. <code class="highlighter-rouge">handler</code> should be the child of <code class="highlighter-rouge">cse</code> instead of <code class="highlighter-rouge">monitor</code>. The right configuration should be as follows:</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">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> +</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/huawei-cloud-faq.md">Report a Doc Issue</a></li> + <li><a href="https://github.com/ServiceComb/ServiceComb.github.io/edit/master/_users/huawei-cloud-faq.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/index.html ---------------------------------------------------------------------- diff --git a/content/users/index.html b/content/users/index.html new file mode 100644 index 0000000..21f9ca6 --- /dev/null +++ b/content/users/index.html @@ -0,0 +1,765 @@ +<!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>Java Chassisç³»ç»æ¶æ - Apache incubator ServiceComb</title> + + + + +<meta name="description" content="Java Chassisç³»ç»æ¶æ"> + + + + +<meta name="author" content=""> + +<meta property="og:locale" content="en"> +<meta property="og:site_name" content="Apache incubator ServiceComb"> +<meta property="og:title" content="Java Chassisç³»ç»æ¶æ"> + + + <link rel="canonical" href="http://github.com/pages/ServiceComb/servicesomb.github.io/users/"> + <meta property="og:url" content="http://github.com/pages/ServiceComb/servicesomb.github.io/users/"> + + + + <meta property="og:description" content="Java Chassisç³»ç»æ¶æ"> + + + + <meta name="twitter:site" content="@ServiceComb"> + <meta name="twitter:title" content="Java Chassisç³»ç»æ¶æ"> + <meta name="twitter:description" content="Java Chassisç³»ç»æ¶æ"> + <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/>ä¸æ</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="active">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="Java Chassisç³»ç»æ¶æ"> + <meta itemprop="description" content="Java Chassisç³»ç»æ¶æ"> + + <meta itemprop="dateModified" content="June 14, 2017"> + + <div class="page__inner-wrap"> + + + <header> + <h1 class="page__title" itemprop="headline">Java Chassisç³»ç»æ¶æ +</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> + +<h2 id="æ¡æ¶æ¦è¿°">æ¡æ¶æ¦è¿°</h2> +<p><img src="/assets/images/servicecomb-models.png" alt="ServiceComb Model" class="align-center" /></p> + +<h2 id="主è¦è®¾è®¡æå¾">主è¦è®¾è®¡æå¾</h2> + +<p>1.ç¼ç¨æ¨¡ååé信模åå离ï¼ä¸åçç¼ç¨æ¨¡åå¯ä»¥çµæ´»ç»åä¸åçé信模åãåºç¨å¼åè å¨å¼åé¶æ®µåªå ³æ³¨æ¥å£å¼åï¼é¨ç½²é¶æ®µçµæ´»åæ¢éä¿¡æ¹å¼ï¼æ¯ælegacyç³»ç»çåæ¢ï¼legacyç³»ç»åªéè¦ä¿®æ¹æå¡åå¸çé ç½®æ件ï¼æè annotationï¼ï¼èä¸éè¦ä¿®æ¹ä»£ç ã</p> + +<p>ç°é¶æ®µæ¯æSpringMVCãJAX-RSåéæRPCä¸ç§å¼åæ¹å¼ã</p> + +<p>2.å 建API-firstæ¯æãéè¿å¥çº¦è§èåå¾®æå¡å¼åï¼å®ç°è·¨è¯è¨çéä¿¡ï¼å¹¶æ¯æé å¥çè½¯ä»¶å·¥å ·é¾ï¼å¥çº¦çæ代ç ã代ç çæå¥çº¦çï¼å¼åï¼æ建å®æ´çå¼åçæã</p> + +<p>3.å®ä¹äºå¸¸ç¨çå¾®æå¡è¿è¡æ¨¡åï¼å°å¾®æå¡ä»åç°å°äº¤äºè¿ç¨ä¸çåç§å®¹éæ段é½å°è£ èµ·æ¥ã该è¿è¡æ¨¡åæ¯æèªå®ä¹åæ©å±ã</p> + +<h2 id="模å说æ">模å说æ</h2> + +<table> + <thead> + <tr> + <th style="text-align: left">ç±»å</th> + <th style="text-align: left">artifact id</th> + <th style="text-align: left">æ¯å¦å¯é</th> + <th style="text-align: left">åè½è¯´æ</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left">ç¼ç¨æ¨¡å</td> + <td style="text-align: left">provider-pojo</td> + <td style="text-align: left">æ¯</td> + <td style="text-align: left">æä¾RPCå¼å模å¼</td> + </tr> + <tr> + <td style="text-align: left">ç¼ç¨æ¨¡å</td> + <td style="text-align: left">provider-jaxrs</td> + <td style="text-align: left">æ¯</td> + <td style="text-align: left">æä¾JAX RSå¼å模å¼</td> + </tr> + <tr> + <td style="text-align: left">ç¼ç¨æ¨¡å</td> + <td style="text-align: left">provider-springmvc</td> + <td style="text-align: left">æ¯</td> + <td style="text-align: left">æä¾Spring MVCå¼å模å¼</td> + </tr> + <tr> + <td style="text-align: left">é信模å</td> + <td style="text-align: left">transport-rest-vertx</td> + <td style="text-align: left">æ¯</td> + <td style="text-align: left">è¿è¡äºHTTPä¹ä¸çå¼åæ¡æ¶ï¼ä¸ä¾èµWEB容å¨ï¼åºç¨æå 为å¯æ§è¡jar</td> + </tr> + <tr> + <td style="text-align: left">é信模å</td> + <td style="text-align: left">transport-rest-servlet</td> + <td style="text-align: left">æ¯</td> + <td style="text-align: left">è¿è¡äºWEB容å¨çå¼åæ¡æ¶ï¼åºç¨æå 为warå </td> + </tr> + <tr> + <td style="text-align: left">é信模å</td> + <td style="text-align: left">transport-highway</td> + <td style="text-align: left">æ¯</td> + <td style="text-align: left">æä¾é«æ§è½çç§æéä¿¡åè®®ï¼ä» ç¨äºjavaä¹é´äºéã</td> + </tr> + <tr> + <td style="text-align: left">è¿è¡æ¨¡å</td> + <td style="text-align: left">handler-loadbalance</td> + <td style="text-align: left">æ¯</td> + <td style="text-align: left">è´è½½å衡模åãæä¾åç§è·¯ç±çç¥åé ç½®æ¹æ³ãä¸è¬å®¢æ·ç«¯ä½¿ç¨ã</td> + </tr> + <tr> + <td style="text-align: left">è¿è¡æ¨¡å</td> + <td style="text-align: left">handler-bizkeeper</td> + <td style="text-align: left">æ¯</td> + <td style="text-align: left">åæå¡æ²»çç¸å ³çåè½ï¼æ¯å¦é离ãçæã容éã</td> + </tr> + <tr> + <td style="text-align: left">è¿è¡æ¨¡å</td> + <td style="text-align: left">handler-tracing</td> + <td style="text-align: left">æ¯</td> + <td style="text-align: left">è°ç¨é¾è·è¸ªæ¨¡åï¼å¯¹æ¥çæ§ç³»ç»ï¼ååºæç¹æ°æ®ã</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/servicecomb-introduction.md">Report a Doc Issue</a></li> + <li><a href="https://github.com/ServiceComb/ServiceComb.github.io/edit/master/_users/servicecomb-introduction.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>