<!DOCTYPE html>
<html lang="zh-CN">

<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <meta name="description" content="ShardingSphere官网" />
  <meta name="Keywords"
    content="ShardingSphere,Sharding-JDBC,Sharding-Proxy,Sharding-Sidecar,ShardingSphere-JDBC,ShardingSphere-Proxy,数据库中间件,分布式" />
  <title>ShardingSphere</title>
  <script>
    if (
      /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(
        navigator.userAgent
      )
    ) {
      window.location = 'index_m_zh.html'
    }
  </script>
  <link rel="icon" href="https://shardingsphere.apache.org/images/favicon.png" type="image/x-icon" />
  <link rel="stylesheet" type="text/css" href="https://shardingsphere.apache.org/css/index.css" />
  <!-- <link rel="stylesheet" type="text/css" href="/css/index.css" /> -->
  <!-- Effect of carousel -->
  <link rel="stylesheet" href="/css/swiper.min.css">
  <script src="/js/swiper.min.js"> </script>

  <!--[if IE 8]>
      <style>
        .sub-tile-ie {
          text-align: center;
          font-size: 46px;
          color: #ee9a32;
        }
      </style>
    <![endif]-->
</head>

<body>
  <div class="header">
    <div class="sub-header">
      <div class="nav clearfix">
        <div class="float-left">
          <div class="nav-logo">
            <a href="http://www.apache.org" target="_self">
              <img class="nav-img first" src="https://shardingsphere.apache.org/images/apache_logo1.png" alt="" />
              <img class="nav-img" src="https://shardingsphere.apache.org/images/apache_logo2.png" alt="" />
            </a>
          </div>
        </div>
        <div class="float-right clearfix nav-menu">
          <div class="nav-item-zh">
            <a href="https://shardingsphere.apache.org/document/current/cn/downloads/" target="_blank">下载</a>
          </div>
          <div class="nav-item-zh">
            <div id="btn-document" class="i-drop-btn">
              文档<em class="i-d-caret"></em>
              <div class="i-drop-pop">
                <a class="i-drop-list" href="https://shardingsphere.apache.org/document/current/cn/overview"
                  target="_blank">5.x(当前)</a>
                <a class="i-drop-list" href="https://shardingsphere.apache.org/document/legacy/4.x/document/cn/overview"
                  target="_blank">4.x(遗留)</a>
                <a class="i-drop-list" href="https://shardingsphere.apache.org/document/legacy/3.x/document/cn/overview"
                  target="_blank">3.x(遗留)</a>
                <em class="i-drop-line"></em>
                <a class="i-drop-list" href="https://shardingsphere.apache.org/document/legacy/2.x/cn/"
                  target="_blank">2.x(遗留)</a>
                <em class="i-drop-line"></em>
                <a class="i-drop-list" href="http://shardingsphere.apache.org/document/legacy/1.x/cn/"
                  target="_blank">1.x(遗留)</a>
              </div>
            </div>
          </div>
          <div class="nav-item-zh">
            <div id="btn-community" class="i-drop-btn">
              社区<em class="i-d-caret"></em>
              <div class="i-drop-pop">
                <a class="i-drop-list" href="https://shardingsphere.apache.org/community/cn/contribute/"
                  target="_blank">参与贡献</a>
                <a class="i-drop-list" href="https://shardingsphere.apache.org/community/cn/team/"
                  target="_blank">团队成员</a>
                <a class="i-drop-list" href="https://cwiki.apache.org/confluence/display/SHARDINGSPHERE"
                  target="_blank">Wiki</a>
                <em class="i-drop-line"></em>
                <a class="i-drop-list" href="https://github.com/apache/shardingsphere" target="_blank">GitHub</a>
                <a class="i-drop-list" href="https://github.com/apache/shardingsphere/issues" target="_blank">缺陷跟踪</a>
                <a class="i-drop-list" href="https://shardingsphere.apache.org/community/cn/powered-by/"
                  target="_blank">采用公司</a>
              </div>
            </div>
          </div>
          <div class="nav-item-zh">
            <div id="btn-subproject" class="i-drop-btn">
              子项目<em class="i-d-caret"></em>
              <div class="i-drop-pop">
                <a class="i-drop-list" href="http://shardingsphere.apache.org/elasticjob/"
                  target="_blank">ElasticJob</a>
              </div>
            </div>
          </div>
          <div class="nav-item-zh">
            <div id="btn-blog" class="i-drop-btn">
              博文<em class="i-d-caret"></em>
              <div class="i-drop-pop">
                <a class="i-drop-list" href="https://shardingsphere.apache.org/blog/cn/material" target="_blank">精选集</a>
                <em class="i-drop-line"></em>
                <a class="i-drop-list" href="https://github.com/apache/shardingsphere/issues/650"
                  target="_blank">汇总集</a>
              </div>
            </div>
          </div>
          <div class="nav-item-zh">
            <div id="btn-asf" class="i-drop-btn">
              ASF<em class="i-drop-caret"></em>
              <div class="i-drop-pop">
                <a class="i-drop-list" href="https://www.apache.org" target="_self">基金会</a>
                <a class="i-drop-list" href="https://www.apache.org/licenses/" target="_self">证书</a>
                <a class="i-drop-list" href="https://www.apache.org/events/current-event" target="_self">事件</a>
                <a class="i-drop-list" href="https://www.apache.org/security/" target="_self">安全</a>
                <a class="i-drop-list" href="https://www.apache.org/foundation/sponsorship.html" target="_self">赞助</a>
                <a class="i-drop-list" href="https://www.apache.org/foundation/thanks.html" target="_self">致谢</a>
                <em class="i-drop-line"></em>
              </div>
            </div>
          </div>
          <div class="nav-item space">
            <a href="index_zh.html" target="_blank">中文</a>
          </div>
          <div class="nav-item" style="margin-right:120px">
            <a href="index.html" target="_blank">EN</a>
          </div>
        </div>
      </div>
      <div id="content" class="content">
        <div class="sub-title">
          <div class="sub-title-box">
            <div class="sub-title-ie">
              Apache ShardingSphere
            </div>
          </div>
          <div class="sub-title-extra">高灵活度 & 可插拔 & 可扩展</div>
        </div>
        <hr class="sub-hr" />
        <p class="sub-text">
          Apache ShardingSphere 是一套开源的分布式数据库解决方案组成的生态圈，它由 JDBC、Proxy 和 Sidecar（规划中）这 3 款既能够独立部署，又支持混合部署配合使用的产品组成。
          它们均提供标准化的数据水平扩展、分布式事务和分布式治理等功能，可适用于如 Java 同构、异构语言、云原生等各种多样化的应用场景。
        </p>
        <p class="sub-text">
          Apache ShardingSphere 旨在充分合理地在分布式的场景下利用关系型数据库的计算和存储能力，而并非实现一个全新的关系型数据库。
          关系型数据库当今依然占有巨大市场份额，是企业核心系统的基石，未来也难于撼动，我们更加注重在原有基础上提供增量，而非颠覆。
        </p>
        <p class="sub-text">
          Apache ShardingSphere 5.x 版本开始致力于可插拔架构，项目的功能组件能够灵活的以可插拔的方式进行扩展。
          目前，数据分片、读写分离、数据加密、影子库压测等功能，以及 MySQL、PostgreSQL、SQLServer、Oracle 等 SQL 与协议的支持，均通过插件的方式织入项目。
          开发者能够像使用积木一样定制属于自己的独特系统。Apache ShardingSphere 目前已提供数十个 SPI 作为系统的扩展点，仍在不断增加中。
        </p>
        <p class="sub-text">
          ShardingSphere 已于2020年4月16日成为 Apache 软件基金会的顶级项目。
        </p>
        <div class="sub-btn_box">
          <a class="sub-button download" href="https://shardingsphere.apache.org/document/current/cn/downloads/"
            target="_blank">下载</a>
          <a class="sub-button" href="https://shardingsphere.apache.org/document/current/cn/overview"
            target="_blank">了解更多</a>
        </div>
        <!-- <hr class="sub-btn-hr" />
          <div class="sub-point">
            <div class="sub-point-list">
              <div>
                <img src="https://shardingsphere.apache.org/images/sharding_jdbc.png" class="nl-img" alt="" />
              </div>
              <p>Sharding-JDBC</p>
            </div>
            <div class="sub-point-list">
              <div>
                <img src="https://shardingsphere.apache.org/images/sharding_proxy.png" class="nl-img" alt="" />
              </div>
              <p>Sharding-Proxy</p>
            </div>
            <div class="sub-point-list">
              <div>
                <img src="https://shardingsphere.apache.org/images/sharding_sidecar.png" class="nl-img" alt="" />
              </div>
              <p>Sharding-Sidecar</p>
            </div>
          </div> -->
      </div>
    </div>
  </div>
  <div>
    <div class="swiper-container">
      <div class="swiper-wrapper">
        <div class="swiper-slide">
          <div class="con-shard">
            <div class="con-item">
              <div class="l-msg">
                <div class="l-m-tit">水平扩展</div>
                <hr class="l-m-tit-hr" />
                <div class="l-m-info">
                  <p>数据存储不受单机磁盘容量限制，可通过增加数据服务器的数量提升存储能力，并可以随时随地动态的对数据节点进行扩容和缩容。</p>
                </div>
              </div>
              <img src="https://shardingsphere.apache.org/images/db_sharding.png" class="point-img" alt="" />
            </div>
          </div>
        </div>
        <div class="swiper-slide">
          <div class="con-orch">
            <div class="con-item">
              <div class="l-msg">
                <div class="l-m-tit">计算存储分离</div>
                <hr class="l-m-tit-hr" />
                <div class="l-m-info">
                  <p>计算节点无状态，可通过水平扩展增加算力；存储节点可以和计算节点分层优化。可以通过计算下推充分利用存储节点的计算能力。</p>
                </div>
              </div>
              <img src="https://shardingsphere.apache.org/images/db_orchestration.png" class="point-img" alt="" />
            </div>
          </div>
        </div>
        <div class="swiper-slide">
          <div class="con-tran">
            <div class="con-item">
              <div class="l-msg">
                <div class="l-m-tit">分布式事务</div>
                <hr class="l-m-tit-hr" />
                <div class="l-m-info">
                  <p>基于 XA 两阶段协议和柔性事务的可切换分布式事务引擎。</p>
                </div>
              </div>
              <img src="https://shardingsphere.apache.org/images/db_transaction.png" class="point-img" alt="" />
            </div>
          </div>
        </div>
        <div class="swiper-slide">
          <div class="con-shard">
            <div class="con-item">
              <div class="l-msg">
                <div class="l-m-tit">高可用 & 强一致</div>
                <hr class="l-m-tit-hr" />
                <div class="l-m-info">
                  <p>无缝整合数据库原生的高可用和强一致解决方案。</p>
                </div>
              </div>
              <img src="https://shardingsphere.apache.org/images/db_sharding.png" class="point-img" alt="" />
            </div>
          </div>
        </div>
        <div class="swiper-slide">
          <div class="con-tran">
            <div class="con-item">
              <div class="l-msg">
                <div class="l-m-tit">DistSQL</div>
                <hr class="l-m-tit-hr" />
                <div class="l-m-info">
                  <p>提供分布式 SQL，通过标准数据库的方式操作分布式资源和规则定义。</p>
                </div>
              </div>
              <img src="https://shardingsphere.apache.org/images/db_transaction.png" class="point-img" alt="" />
            </div>
          </div>
        </div>
        <div class="swiper-slide">
          <div class="con-tran">
            <div class="con-item">
              <div class="l-msg">
                <div class="l-m-tit">可插拔</div>
                <hr class="l-m-tit-hr" />
                <div class="l-m-info">
                  <p>项目的功能组件能够灵活的以可插拔的方式进行扩展，开发者能够像使用积木一样定制属于自己的独特系统。</p>
                </div>
              </div>
              <img src="https://shardingsphere.apache.org/images/db_transaction.png" class="point-img" alt="" />
            </div>
          </div>
        </div>
      </div>
      <!-- if pagination is needed. -->
      <div class="swiper-pagination"></div>
      <!-- if the previous and next button are needed. -->
      <div class="swiper-button-prev"></div>
      <div class="swiper-button-next"></div>
      <!-- if the scrollbar is needed. -->
      <div class="swiper-scrollbar"></div>
    </div>
    <div class="con-bottom">
      <hr class="con-footer-hr" />
      <div class="con-item con-footer clearfix">
        <div class="float-left">
          <div class="footer-logo">
            <img src="https://shardingsphere.apache.org/images/logo_bottom.png" alt="logo" />
          </div>
        </div>
        <div class="float-right">
          <a href="http://www.apache.org" target="_self">
            <img src="https://shardingsphere.apache.org/images/asf_logo_wide.svg" alt="apache-logo"
              style="width: 260px;padding-top: 30px;" />
          </a>
        </div>
      </div>
    </div>
  </div>
  <div class="footer">
    <p>
      Copyright © 2018-2020, Apache ShardingSphere, ShardingSphere, Apache,
      the Apache feather logo, and the Apache ShardingSphere project logo are
      either registered trademarks or trademarks of The Apache Software
      Foundation in the United States and other countries.
    </p>
  </div>
  <script>
    !(function () {
      var $btnDoc = document.getElementById('btn-document');
      var $btnSour = document.getElementById('btn-source');
      var $content = document.getElementById('content');
      $btnDoc.addEventListener('touchstart', function () {}, false);
      // $btnSour.addEventListener('touchstart', function () {}, false); // No error will be reported if this line is commented.
      $content.addEventListener('touchstart', function () {}, false);
    })()
  </script>

  <!-- Effect of carousel -->
  <script>
    var mySwiper = new Swiper('.swiper-container', {
      // direction: 'vertical', // vertical switch option
      speed: 1000,
      grabCursor: true, //prompt with palm
      autoHeight: true, //set auto height
      autoplay: {
        delay: 3000,
        disableOnInteraction: false,
      },
      loop: true, // allow loop mode
      touchRatio: 2, // touch ratio, the larger the faster
      effect: 'coverflow', // choose the switch effect
      slidesPerView: 1, // number of page show at the same time
      pagination: { //pagination
        el: '.swiper-pagination',
        bulletActiveClass: 'my-bullet-active',
        clickable: true,
      },
      mousewheel: { //allow mousewheel
        // releaseOnEdges: true, // control the page while mouse at the edge
        forceToAxis: true, // only activate on horizontal axis
      },
      // set arguements of scrollbar
      scrollbar: {
        el: '.swiper-scrollbar',
        draggable: true,
      },
      // set the previous and next button
      navigation: {
        nextEl: '.swiper-button-next',
        prevEl: '.swiper-button-prev',
      },
    });
  </script>
  <!-- chosen color of the pagination -->
  <style type="text/css">
    .my-bullet-active {
      background: #ff9f0e;
      opacity: 1;
    }
  </style>
</body>

</html>