<!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 ServiceComb</title>




<meta name="description" content="The homepage of ServiceComb">




<meta name="author" content="">

<meta property="og:locale" content="en">
<meta property="og:site_name" content="Apache ServiceComb">
<meta property="og:title" content="Apache ServiceComb">


  <link rel="canonical" href="https://github.com/pages/apache/incubator-servicecomb-website/year-archive/">
  <meta property="og:url" content="https://github.com/pages/apache/incubator-servicecomb-website/year-archive/">





  <meta name="twitter:site" content="@ServiceComb">
  <meta name="twitter:title" content="Apache ServiceComb">
  <meta name="twitter:description" content="The homepage of ServiceComb">
  <meta name="twitter:url" content="">

  
    <meta name="twitter:card" content="summary">
    
  

  



  

  












  <script type="application/ld+json">
    {
      "@context" : "http://schema.org",
      "@type" : "Person",
      "name" : "Apache ServiceComb",
      "url" : "https://github.com/pages/apache/incubator-servicecomb-website",
      "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 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/vendor/prism/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?v=1">
<link rel="stylesheet" href="/assets/vendor/prism/prism.css?v=1">

<!--[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.loli.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--archive">

    <!--[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" onmouseleave="$('#childrenShow').css('display', 'none')">
  <div class="masthead__inner-wrap">
    <div class="masthead__menu">
      <nav id="site-nav" class="greedy-nav">
	      
          <a class="site-title active" href="/"><img src="https://www.apache.org/img/servicecomb.png"></a>
	      
        <ul class="visible-links">
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/">Home</a>
                
              </li>
            
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/developers/">Projects</a>
                
              </li>
            
          
            
          
          
            
            <li class="def-nav-li" onmouseenter="$('#childrenShow').css('display', 'block')">
              
              
              

              
                <a href="/docs/users/">Documentation</a>
              

              <ul id="childrenShow" class="def-children-show-en" onmouseleave="$('#childrenShow').css('display', 'none')">
                
                <li><a href="/docs/getting-started/" class="">Getting started</a></li>
                
                <li><a href="/docs/users/" class="">Docs</a></li>
                
                <li><a href="/slides/" class="">Video</a></li>
                
                <li><a href="/faqs/" class="">FAQ</a></li>
                
              </ul>
            </li>
          
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/developers/contributing">Community</a>
                
              </li>
            
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a class="active" href="/year-archive/">Blogs</a>
                
              </li>
            
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/release/">Downloads</a>
                
              </li>
            
          
        </ul>
        <button><div class="navicon"></div></button>
        <ul class="hidden-links hidden"></ul>
        <div class="nav-lang">
          
            
            <a href=/cn/year-archive/>中文</a>
          
        </div>
      </nav>
    </div>
  </div>
</div>


    



<div id="main" role="main">
  
  <div class="sidebar sticky">
      
      <div class="back-to-home"><a href="/">Home</a> > </div>
      
  

<div itemscope itemtype="http://schema.org/Person">

  
    <div class="author__avatar">
      
        <img src="/assets/images/ServiceComb-logo-3.jpg" class="author__avatar" alt="" itemprop="image">
      
    </div>
  

  <div class="author__content">
    <h3 class="author__name" itemprop="name"></h3>
    
      <p class="author__bio" itemprop="description">
	    
        ServiceComb is a microservice framework that provides service registration, discovery, configuration and management utilities.
	    
      </p>
    
  </div>

  <div class="author__urls-wrapper">
    <button class="btn btn--inverse">Follow</button>
    <ul class="author__urls social-icons">
      
        <li itemprop="homeLocation" itemscope itemtype="http://schema.org/Place">
        
          <i class="fa fa-fw fa-map-marker" aria-hidden="true"></i> <span itemprop="name">China</span>
        
        </li>
      

      

      
        <li>
          <a href="mailto:dev@servicecomb.apache.org">
            <meta itemprop="email" content="dev@servicecomb.apache.org" />
            <i class="fa fa-fw fa-envelope-square" aria-hidden="true"></i> Email
          </a>
        </li>
      

      

      

      

      

      

      

      

      

      

      
        <li>
          <a href="https://github.com/search?q=org:apache+ServiceComb&unscoped_q=ServiceComb" itemprop="sameAs">
            <i class="fa fa-fw fa-github" aria-hidden="true"></i> GitHub<br>
          </a>
        </li>
      

      

      

      

      

      

      

      

      

      

      

      

      

      <!--
  <li>
    <a href="http://link-to-whatever-social-network.com/user/" itemprop="sameAs">
      <i class="fa fa-fw" aria-hidden="true"></i> Custom Social Profile Link
    </a>
  </li>
-->
    </ul>
  </div>
</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">
    
  </ul>
</nav>

    
  
  </div>



  <div class="archive">
    
      <h1 class="page__title" itemprop="headline"></h1>
    
    <ul class="nav nav-tabs">
    <li data-toggle="tab" class="active title"><a data-toggle="tab" href="#postByYear">Posts by Year</a></li>
    <li data-toggle="tab" class="title"><a data-toggle="tab" href="#postByTag">Posts by Tag</a></li>
</ul>

<div class="tab-content">
    <div id="postByYear" class="tab-pane active">
        
        
        
          
          
            <h2 id="2019" class="archive__subtitle">2019</h2>
            
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-accept-newcapec-institute-code-donation/" rel="permalink">Apache ServiceComb Accept Code Donation From NewCapec Institute
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb Accept Code Donation From NewCapec Institute
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/Apache-ServiceComb-Meetup-2019-Shanghai-Report/" rel="permalink">Apache ServiceComb Meetup -Shanghai 2019.09.20 Report (PPT Download)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb Meetup -Shanghai 2019.09.20 Report (PPT)
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/Apache-ServiceComb-Meetup-2019-Shanghai-KubeCon+CloudNative+OSS-Report/" rel="permalink">Apache ServiceComb Meetup - Shanghai 2019.06.24 Report (PDF Download)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb Meetup
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-pack-eureka/" rel="permalink">ServiceComb Pack 0.4.0 Integrated Discovery Service : Eureka
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">ServiceComb Pack Integrated Discovery Service Eurek
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-pack-consul/" rel="permalink">ServiceComb Pack 0.4.0 Integrated Discovery Service : Consul
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">ServiceComb Pack Integrated Discovery Service Consul
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-pack-cluster/" rel="permalink">ServiceComb Pack 0.4.0 Cluster : Implementation
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">This article describes how to use the ServiceComb Pack 0.4.0 cluster and how it works
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  5 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/chuanzhiboke-servicecomb-tutoria-release/" rel="permalink">Apache ServiceComb community joint chuanzhiboke sub-brand Itheima, Boxuegu and Wisdom Gathering release micro-service tutorial
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Chuanzhiboke and Apache ServiceComb course and technical resources co-construction ceremony ended successfully
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

        
          
          
            <h2 id="2018" class="archive__subtitle">2018</h2>
            
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/Apache-ServiceComb-Meetup-2018-Shanghai-Report/" rel="permalink">Apache ServiceComb Meetup -Shanghai 2018.10.12 Report (PPT Download)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb Meetup Report (PPT)
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/osi-microservices/" rel="permalink">OpenSource India Summit: Hands-on Apache ServiceComb(Incubating) MicroServices Workshop
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">OpenSource India Summit: Hands-on Apache ServiceComb(Incubating) MicroServices Workshop
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/Apache-ServiceComb-Meetup-2018-Shanghai/" rel="permalink">Apache ServiceComb (incubating) Meetup -Shanghai 2018.10.12
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb (incubating) Meetup
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  4 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/release-note-1-0-0/" rel="permalink">[Milestone] Apache ServiceComb (incubating) Release Version 1.0.0
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb (incubating) enters new stage
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  4 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/apache-servicecomb-incubating-day-report/" rel="permalink">Apache ServiceComb (incubating) Day Report
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb (incubating) Day Report
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/apache-servicecomb-incubating-day/" rel="permalink">Microservice Meetup: Detailed Agenda of Apache ServiceComb (incubating) Day
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Real time updated information of Apache ServiceComb (incubating) Day
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  4 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/howto-upgrade-topzipkin2/" rel="permalink">Howto Upgrade to Zipkin2
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Changes between v1 and v2 of zipkin and how Java Chassis upgraded to zipkin2
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  3 minute read

</p>
    
  </article>
</div>

        
          
          
            <h2 id="2017" class="archive__subtitle">2017</h2>
            
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/service-registry-refactor-proposal/" rel="permalink">Proposal for refactoring service registry module in Java Chassis
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Analysis of service registry and propose a new architecture for it
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/service-center-ui/" rel="permalink">Service-Center Management UI Console
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">An introduction Service-Center Management Console
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/how-to-reform-a-legacy-system/" rel="permalink">最头疼的遗留系统该如何改造？
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">微服务是否是业界期待已久的企业架构解决方案？在对遗留系统进行微服务的改造过程中存在怎样的困难和挑战，应该注意些什么？
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/distributed_saga_3/" rel="permalink">Eventual Data Consistency Solution in ServiceComb - part 3
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">How is distributed saga in ServiceComb comparing with other consistency solutions?
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  5 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/distributed_saga_2/" rel="permalink">Eventual Data Consistency Solution in ServiceComb - part 2
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">The design of distributed saga in ServiceComb
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  4 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/distributed_saga_1/" rel="permalink">Eventual Data Consistency Solution in ServiceComb - part 1
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">The background of data consistency problem in the scenario of microservice architecture
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  5 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/seckill-development-journey-part-III/" rel="permalink">SecKill Develop Journey (III)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">an introduction how build seckill demo project step by step
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/seckill-development-journey-part-II/" rel="permalink">SecKill Develop Journey  (II)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">an introduction how to build seckill demo project step by step
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/seckill-development-journey-part-I/" rel="permalink">SecKill Development Journey (I)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">an introduction of how to build seckill demo project step by step
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/stress-test-on-company-with-jmeter-in-k8s/" rel="permalink">Stress test on Company Demo with Jmeter in Kubernetes Cluster
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">An introduction of how to do stress test on company demo with jmeter in kubernetes cluster
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  6 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/autoscale-on-company/" rel="permalink">On-demand Resource Control for Micro-serviced Company by Autoscale
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">This article introduces practice of using kubernetes autoscale in the micro-serviced Company demo to achieve on-demand resource control
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  3 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/company-on-kubernetes/" rel="permalink">One-click Deployment at Kubernetes
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">This blog will introduce how to deploy company based on ServiceComb in the kubernetes cluster, and intercom communication of company
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  3 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/communication-btw-sc-ms/" rel="permalink">Communication Between Service-Center and MicroServices
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">An introduction of how service-center and microservices work together
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/tracing-with-servicecomb/" rel="permalink">Distributed Tracing with ServiceComb and Zipkin
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">A introduction of how to set up distributed tracing with ServiceComb and Zipkin
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  3 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/go-to-cloud/" rel="permalink">单体应用利用ServiceComb实现微服务化和云化之路
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">该文档演示：从已有基于spring boot的单体应用利用ServiceComb实现微服务化和云化之路
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

        
          
          
          



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/linuxcon-workshop-demo/" rel="permalink">Linux Con Workshop Demo
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">A step by step guide on how to use ServiceComb to develop a complete project
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  6 minute read

</p>
    
  </article>
</div>

        
    </div>
    <div id="postByTag" class="tab-pane fade">
        
        
        <!--
# Jekyll Group-By-Array 0.1.0
# https://github.com/mushishi78/jekyll-group-by-array
# © 2015 Max White <mushishi78@gmail.com>
# MIT License
-->

<!-- Initialize -->




<!-- Map -->


<!-- Flatten -->


<!-- Uniq -->



<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->





<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->


<!-- Push to group_names -->






<!-- If not equal to previous then it must be unique as sorted -->






<!-- group_items -->


<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



<!-- Collect if contains -->



<!-- Push to group_items -->



        
          
          <h2 id="cluster" class="archive__subtitle">Cluster</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-pack-cluster/" rel="permalink">ServiceComb Pack 0.4.0 Cluster : Implementation
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">This article describes how to use the ServiceComb Pack 0.4.0 cluster and how it works
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  5 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="consul" class="archive__subtitle">Consul</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-pack-consul/" rel="permalink">ServiceComb Pack 0.4.0 Integrated Discovery Service : Consul
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">ServiceComb Pack Integrated Discovery Service Consul
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="discovery" class="archive__subtitle">Discovery</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-pack-eureka/" rel="permalink">ServiceComb Pack 0.4.0 Integrated Discovery Service : Eureka
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">ServiceComb Pack Integrated Discovery Service Eurek
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-pack-consul/" rel="permalink">ServiceComb Pack 0.4.0 Integrated Discovery Service : Consul
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">ServiceComb Pack Integrated Discovery Service Consul
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="eureka" class="archive__subtitle">Eureka</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-pack-eureka/" rel="permalink">ServiceComb Pack 0.4.0 Integrated Discovery Service : Eureka
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">ServiceComb Pack Integrated Discovery Service Eurek
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="huawei-cloud" class="archive__subtitle">Huawei Cloud</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/go-to-cloud/" rel="permalink">单体应用利用ServiceComb实现微服务化和云化之路
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">该文档演示：从已有基于spring boot的单体应用利用ServiceComb实现微服务化和云化之路
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="meetup" class="archive__subtitle">Meetup</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/Apache-ServiceComb-Meetup-2019-Shanghai-Report/" rel="permalink">Apache ServiceComb Meetup -Shanghai 2019.09.20 Report (PPT Download)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb Meetup -Shanghai 2019.09.20 Report (PPT)
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/Apache-ServiceComb-Meetup-2019-Shanghai-KubeCon+CloudNative+OSS-Report/" rel="permalink">Apache ServiceComb Meetup - Shanghai 2019.06.24 Report (PDF Download)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb Meetup
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/Apache-ServiceComb-Meetup-2018-Shanghai-Report/" rel="permalink">Apache ServiceComb Meetup -Shanghai 2018.10.12 Report (PPT Download)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb Meetup Report (PPT)
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/osi-microservices/" rel="permalink">OpenSource India Summit: Hands-on Apache ServiceComb(Incubating) MicroServices Workshop
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">OpenSource India Summit: Hands-on Apache ServiceComb(Incubating) MicroServices Workshop
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/Apache-ServiceComb-Meetup-2018-Shanghai/" rel="permalink">Apache ServiceComb (incubating) Meetup -Shanghai 2018.10.12
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb (incubating) Meetup
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  4 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/apache-servicecomb-incubating-day-report/" rel="permalink">Apache ServiceComb (incubating) Day Report
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb (incubating) Day Report
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/apache-servicecomb-incubating-day/" rel="permalink">Microservice Meetup: Detailed Agenda of Apache ServiceComb (incubating) Day
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Real time updated information of Apache ServiceComb (incubating) Day
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  4 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="microservice" class="archive__subtitle">Microservice</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/Apache-ServiceComb-Meetup-2019-Shanghai-KubeCon+CloudNative+OSS-Report/" rel="permalink">Apache ServiceComb Meetup - Shanghai 2019.06.24 Report (PDF Download)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb Meetup
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="reform-legacy-system" class="archive__subtitle">Reform legacy system</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/how-to-reform-a-legacy-system/" rel="permalink">最头疼的遗留系统该如何改造？
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">微服务是否是业界期待已久的企业架构解决方案？在对遗留系统进行微服务的改造过程中存在怎样的困难和挑战，应该注意些什么？
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="servicecomb-pack" class="archive__subtitle">ServiceComb Pack</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-pack-eureka/" rel="permalink">ServiceComb Pack 0.4.0 Integrated Discovery Service : Eureka
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">ServiceComb Pack Integrated Discovery Service Eurek
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-pack-consul/" rel="permalink">ServiceComb Pack 0.4.0 Integrated Discovery Service : Consul
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">ServiceComb Pack Integrated Discovery Service Consul
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-pack-cluster/" rel="permalink">ServiceComb Pack 0.4.0 Cluster : Implementation
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">This article describes how to use the ServiceComb Pack 0.4.0 cluster and how it works
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  5 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="autoscale" class="archive__subtitle">autoscale</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/autoscale-on-company/" rel="permalink">On-demand Resource Control for Micro-serviced Company by Autoscale
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">This article introduces practice of using kubernetes autoscale in the micro-serviced Company demo to achieve on-demand resource control
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  3 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="course" class="archive__subtitle">course</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/chuanzhiboke-servicecomb-tutoria-release/" rel="permalink">Apache ServiceComb community joint chuanzhiboke sub-brand Itheima, Boxuegu and Wisdom Gathering release micro-service tutorial
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Chuanzhiboke and Apache ServiceComb course and technical resources co-construction ceremony ended successfully
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="demo" class="archive__subtitle">demo</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/linuxcon-workshop-demo/" rel="permalink">Linux Con Workshop Demo
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">A step by step guide on how to use ServiceComb to develop a complete project
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  6 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="deployment" class="archive__subtitle">deployment</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/company-on-kubernetes/" rel="permalink">One-click Deployment at Kubernetes
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">This blog will introduce how to deploy company based on ServiceComb in the kubernetes cluster, and intercom communication of company
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  3 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="distributed-tracing" class="archive__subtitle">distributed tracing</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/tracing-with-servicecomb/" rel="permalink">Distributed Tracing with ServiceComb and Zipkin
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">A introduction of how to set up distributed tracing with ServiceComb and Zipkin
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  3 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="jmeter" class="archive__subtitle">jmeter</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/stress-test-on-company-with-jmeter-in-k8s/" rel="permalink">Stress test on Company Demo with Jmeter in Kubernetes Cluster
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">An introduction of how to do stress test on company demo with jmeter in kubernetes cluster
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  6 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="kubernetes" class="archive__subtitle">kubernetes</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/autoscale-on-company/" rel="permalink">On-demand Resource Control for Micro-serviced Company by Autoscale
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">This article introduces practice of using kubernetes autoscale in the micro-serviced Company demo to achieve on-demand resource control
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  3 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/company-on-kubernetes/" rel="permalink">One-click Deployment at Kubernetes
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">This blog will introduce how to deploy company based on ServiceComb in the kubernetes cluster, and intercom communication of company
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  3 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="microservice" class="archive__subtitle">microservice</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/servicecomb-accept-newcapec-institute-code-donation/" rel="permalink">Apache ServiceComb Accept Code Donation From NewCapec Institute
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb Accept Code Donation From NewCapec Institute
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/Apache-ServiceComb-Meetup-2019-Shanghai-Report/" rel="permalink">Apache ServiceComb Meetup -Shanghai 2019.09.20 Report (PPT Download)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb Meetup -Shanghai 2019.09.20 Report (PPT)
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/chuanzhiboke-servicecomb-tutoria-release/" rel="permalink">Apache ServiceComb community joint chuanzhiboke sub-brand Itheima, Boxuegu and Wisdom Gathering release micro-service tutorial
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Chuanzhiboke and Apache ServiceComb course and technical resources co-construction ceremony ended successfully
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/Apache-ServiceComb-Meetup-2018-Shanghai-Report/" rel="permalink">Apache ServiceComb Meetup -Shanghai 2018.10.12 Report (PPT Download)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb Meetup Report (PPT)
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/osi-microservices/" rel="permalink">OpenSource India Summit: Hands-on Apache ServiceComb(Incubating) MicroServices Workshop
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">OpenSource India Summit: Hands-on Apache ServiceComb(Incubating) MicroServices Workshop
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/Apache-ServiceComb-Meetup-2018-Shanghai/" rel="permalink">Apache ServiceComb (incubating) Meetup -Shanghai 2018.10.12
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb (incubating) Meetup
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  4 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/release-note-1-0-0/" rel="permalink">[Milestone] Apache ServiceComb (incubating) Release Version 1.0.0
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb (incubating) enters new stage
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  4 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/apache-servicecomb-incubating-day-report/" rel="permalink">Apache ServiceComb (incubating) Day Report
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb (incubating) Day Report
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/apache-servicecomb-incubating-day/" rel="permalink">Microservice Meetup: Detailed Agenda of Apache ServiceComb (incubating) Day
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Real time updated information of Apache ServiceComb (incubating) Day
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  4 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="performance-test" class="archive__subtitle">performance test</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/stress-test-on-company-with-jmeter-in-k8s/" rel="permalink">Stress test on Company Demo with Jmeter in Kubernetes Cluster
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">An introduction of how to do stress test on company demo with jmeter in kubernetes cluster
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  6 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="refactor" class="archive__subtitle">refactor</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/service-registry-refactor-proposal/" rel="permalink">Proposal for refactoring service registry module in Java Chassis
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Analysis of service registry and propose a new architecture for it
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="release" class="archive__subtitle">release</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/release-note-1-0-0/" rel="permalink">[Milestone] Apache ServiceComb (incubating) Release Version 1.0.0
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb (incubating) enters new stage
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  4 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="report" class="archive__subtitle">report</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/apache-servicecomb-incubating-day-report/" rel="permalink">Apache ServiceComb (incubating) Day Report
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb (incubating) Day Report
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  less than 1 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="saga" class="archive__subtitle">saga</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/distributed_saga_3/" rel="permalink">Eventual Data Consistency Solution in ServiceComb - part 3
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">How is distributed saga in ServiceComb comparing with other consistency solutions?
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  5 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/distributed_saga_2/" rel="permalink">Eventual Data Consistency Solution in ServiceComb - part 2
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">The design of distributed saga in ServiceComb
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  4 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/distributed_saga_1/" rel="permalink">Eventual Data Consistency Solution in ServiceComb - part 1
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">The background of data consistency problem in the scenario of microservice architecture
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  5 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="seckill" class="archive__subtitle">seckill</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/seckill-development-journey-part-III/" rel="permalink">SecKill Develop Journey (III)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">an introduction how build seckill demo project step by step
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/seckill-development-journey-part-II/" rel="permalink">SecKill Develop Journey  (II)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">an introduction how to build seckill demo project step by step
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/seckill-development-journey-part-I/" rel="permalink">SecKill Development Journey (I)
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">an introduction of how to build seckill demo project step by step
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="service-center" class="archive__subtitle">service center</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/service-center-ui/" rel="permalink">Service-Center Management UI Console
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">An introduction Service-Center Management Console
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  2 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/communication-btw-sc-ms/" rel="permalink">Communication Between Service-Center and MicroServices
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">An introduction of how service-center and microservices work together
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  1 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="version" class="archive__subtitle">version</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/release-note-1-0-0/" rel="permalink">[Milestone] Apache ServiceComb (incubating) Release Version 1.0.0
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Apache ServiceComb (incubating) enters new stage
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  4 minute read

</p>
    
  </article>
</div>

          
        
          
          <h2 id="zipkin" class="archive__subtitle">zipkin</h2>
          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/howto-upgrade-topzipkin2/" rel="permalink">Howto Upgrade to Zipkin2
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">Changes between v1 and v2 of zipkin and how Java Chassis upgraded to zipkin2
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  3 minute read

</p>
    
  </article>
</div>

          
            



<div class="list__item">
  <article class="archive__item" itemscope itemtype="http://schema.org/CreativeWork">
    
    <h2 class="archive__item-title" itemprop="headline">
      
        <a href="/docs/tracing-with-servicecomb/" rel="permalink">Distributed Tracing with ServiceComb and Zipkin
</a>
      
    </h2>
    <p class="archive__item-excerpt" itemprop="description">A introduction of how to set up distributed tracing with ServiceComb and Zipkin
</p>
    
      <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> 




  3 minute read

</p>
    
  </article>
</div>

          
        
    </div>
</div>

  </div>
</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/getting-started/">Getting started</a></li>
        <li><a href="/docs/users/">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">ASF</p>
        <li><a href="http://www.apache.org">Foundation</a></li>
        <li><a href="http://www.apache.org/licenses/">License</a></li>
        <li><a href="http://www.apache.org/events/current-event">Events</a></li>
        <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
        <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
      </ul>
    </div>
    <div class="col">
      <ul>
        <p class="header">Contribute</p>
        <li><a href="http://issues.apache.org/jira/browse/SCB">Report a Doc Issue</a></li>
        <li><a href="https://github.com/apache/servicecomb-website/edit/master/_pages/year-archive.html">Edit This Page on Github</a></li>
        <li><a href="/developers/submit-codes/">Code Submit Guide</a></li>
        <li><a href="/security">Security</a></li>
      </ul>
    </div>
    <div class="col">
      <ul class="social-icons">
        <p class="header">Community</p>
        <li>
            <a href="mailto:dev-subscribe@servicecomb.incubator.apache.org" rel="nofollow"><span class="mail">Mailing List</span></a>
        </li>
        <li>
            <a href="https://github.com/apache?q=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>&copy; 2020 Apache ServiceComb. Powered by <a href="http://jekyllrb.com" rel="nofollow">Jekyll</a> &amp; <a href="https://mademistakes.com/work/minimal-mistakes-jekyll-theme/" rel="nofollow">Minimal Mistakes</a>.</div>
  <div>All other marks mentioned may be trademarks or registered trademarks of their respective owners.</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>
