diff --git a/2.x/.readthedocs.yaml b/2.x/.readthedocs.yaml new file mode 100644 index 000000000..7871ef8c3 --- /dev/null +++ b/2.x/.readthedocs.yaml @@ -0,0 +1,29 @@ +# Read the Docs configuration file for Sphinx projects +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Set the OS, Python version and other tools you might need +build: + os: ubuntu-22.04 + tools: + python: "3.7" + # nodejs: "20" + # rust: "1.70" + # golang: "1.20" + +sphinx: + configuration: 2.x/conf.py + +# Optionally build your docs in additional formats such as PDF and ePub +formats: + - pdf + - epub + +# Optional but recommended, declare the Python requirements required +# to build your documentation +# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html +python: + install: + - requirements: ./requirements.txt \ No newline at end of file diff --git a/2.x/conf.py b/2.x/conf.py index 9aac22c40..02bac0fb0 100644 --- a/2.x/conf.py +++ b/2.x/conf.py @@ -67,7 +67,7 @@ master_doc = 'index' # General information about the project. -project = u'FISCO BCOS' +project = u'FISCO BCOS 2.0' copyright = u'© 2020. All rights reserved.' author = u'fisco-bcos-dev' @@ -139,7 +139,7 @@ "github_repo": "FISCO-BCOS-DOC", # Repo name "github_user": "FISCO-BCOS", "github_version": "release-2", # Version - "conf_py_path": "/", # Path in the checkout to the docs root + "conf_py_path": "/2.x/", # Path in the checkout to the docs root } # Theme options are theme-specific and customize the look and feel of a theme @@ -349,3 +349,22 @@ def setup(app): app.add_transform(AutoStructify) app.add_stylesheet('css/custom.css') app.add_javascript('js/readthedocs-analytics.js') + app.connect('build-finished', replace_source) + +def replace_source(app, exception): + if exception is None: + build_dir = os.environ.get('READTHEDOCS_OUTPUT', '_build') + + for root, dirs, files in os.walk(build_dir): + for file in files: + if file.endswith('.html'): + html_path = os.path.join(root, file) + + with open(html_path, 'r') as file: + lines = file.readlines() + + new_lines = [line.replace('https://unpkg.com', 'https://npm.onmicrosoft.cn') for line in lines] + new_lines = [line.replace('https://cdnjs.cloudflare.com', 'https://cdn.bootcdn.net') for line in new_lines] + + with open(html_path, 'w') as file: + file.writelines(new_lines) \ No newline at end of file diff --git a/2.x/docs/articles/1_conception/safe_and_controllable.md b/2.x/docs/articles/1_conception/safe_and_controllable.md index 4d97ee9b6..4b45bce5f 100644 --- a/2.x/docs/articles/1_conception/safe_and_controllable.md +++ b/2.x/docs/articles/1_conception/safe_and_controllable.md @@ -136,8 +136,6 @@ [《中华人民共和国密码法》](https://baike.baidu.com/item/%E4%B8%AD%E5%8D%8E%E4%BA%BA%E6%B0%91%E5%85%B1%E5%92%8C%E5%9B%BD%E5%AF%86%E7%A0%81%E6%B3%95/22860972?fromtitle=%E5%AF%86%E7%A0%81%E6%B3%95&fromid=24078179) -[《工信部对十三届全国人大二次会议第1394号建议的答复》](http://www.miit.gov.cn/n1146295/n1146592/n3917132/n4545264/c7503420/content.html) - [《工信部隐私保护规范》](http://www.cbdforum.cn/bcweb/index/bz/1-6.html) [《WeDPR隐私保护白皮书》](https://mp.weixin.qq.com/s/fYCHWb2SwWu-9ySLibrI0w) \ No newline at end of file diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/H{{L4[OWBMMNR}5FCIVD8UA.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/H{{L4[OWBMMNR}5FCIVD8UA.png" new file mode 100644 index 000000000..c895e5ba9 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/H{{L4[OWBMMNR}5FCIVD8UA.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/QQ\345\233\276\347\211\20720231016112850.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/QQ\345\233\276\347\211\20720231016112850.png" new file mode 100644 index 000000000..c895e5ba9 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/QQ\345\233\276\347\211\20720231016112850.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104130933.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104130933.png" new file mode 100644 index 000000000..ad869ddc9 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104130933.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104348280.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104348280.png" new file mode 100644 index 000000000..4d67ebc8f Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104348280.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104429480.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104429480.png" new file mode 100644 index 000000000..d64ce9f24 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104429480.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104509554.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104509554.png" new file mode 100644 index 000000000..e77b804d9 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104509554.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104547562.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104547562.png" new file mode 100644 index 000000000..696745c76 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104547562.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104646869.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104646869.png" new file mode 100644 index 000000000..0f5f13533 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104646869.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104842394.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104842394.png" new file mode 100644 index 000000000..096e218a5 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016104842394.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016105346886.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016105346886.png" new file mode 100644 index 000000000..1ecc92b42 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016105346886.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016105409664.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016105409664.png" new file mode 100644 index 000000000..1ecc92b42 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016105409664.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016105437956.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016105437956.png" new file mode 100644 index 000000000..eb7786cbf Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016105437956.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016111144312.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016111144312.png" new file mode 100644 index 000000000..708a0fde8 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016111144312.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016111704475.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016111704475.png" new file mode 100644 index 000000000..888c567e2 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016111704475.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016111815321.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016111815321.png" new file mode 100644 index 000000000..4cf252017 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016111815321.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016112215664.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016112215664.png" new file mode 100644 index 000000000..add888db3 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016112215664.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016112256810.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016112256810.png" new file mode 100644 index 000000000..43c99b6cd Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016112256810.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016112420989.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016112420989.png" new file mode 100644 index 000000000..e32b11040 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016112420989.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016112613639.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016112613639.png" new file mode 100644 index 000000000..934c8529c Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231016112613639.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019105956621.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019105956621.png" new file mode 100644 index 000000000..190c219d6 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019105956621.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019110653446.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019110653446.png" new file mode 100644 index 000000000..2ca149f0c Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019110653446.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019112540817.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019112540817.png" new file mode 100644 index 000000000..91a3b3f60 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019112540817.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019112616789.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019112616789.png" new file mode 100644 index 000000000..b9e4c4f84 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019112616789.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113026956.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113026956.png" new file mode 100644 index 000000000..a5fd88caa Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113026956.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113312346.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113312346.png" new file mode 100644 index 000000000..a8460b680 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113312346.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113347876.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113347876.png" new file mode 100644 index 000000000..1c70c86d6 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113347876.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113437394.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113437394.png" new file mode 100644 index 000000000..6cd73d97b Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113437394.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113444696.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113444696.png" new file mode 100644 index 000000000..6cd73d97b Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019113444696.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019115803764.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019115803764.png" new file mode 100644 index 000000000..2dbad6902 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019115803764.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019120132592.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019120132592.png" new file mode 100644 index 000000000..a98e4cdf0 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019120132592.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019120519771.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019120519771.png" new file mode 100644 index 000000000..dcfc2b6f1 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019120519771.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019120608331.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019120608331.png" new file mode 100644 index 000000000..517d59e1b Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019120608331.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019134453143.png" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019134453143.png" new file mode 100644 index 000000000..e08658579 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/image-20231019134453143.png" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/zdb.jpg" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/zdb.jpg" new file mode 100644 index 000000000..b733957d5 Binary files /dev/null and "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.assets/zdb.jpg" differ diff --git "a/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.md" "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 000000000..898a8808a --- /dev/null +++ "b/2.x/docs/articles/7_community/fisco\351\200\202\351\205\215\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223/fisco\350\276\276\346\242\246\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,266 @@ +## fisco-bcos适配达梦数据库 + +作者:dyy8888(董耀宇)|北京邮电大学 + +### 为什么需要达梦数据库? + +达梦数据库作为一款国产数据库软件,拥有自主产权,满足国内要求自主产权、安全和国产化等要求。 + +目前`fisco-bcos`支持的数据库有:`mysql`、`rocksdb`,并不支持国产数据库达梦数据库,本次改造在`fisco-bcos2.9.1`版本的源代码基础上,对其中`mysql`的源码`zdbStorage`部分进行修改以适配达梦数据库。目前改造版本将暂不支持`mysql`数据库。 + +我们成功在搭载鲲鹏`CPU`,麒麟`os`的系统上运行了达梦区块链节点,实现了`CPU`、操作系统和数据库的国产化适配。 + +### 达梦FISCO改造思路 + +首先明确一点,我们的改造基于源码是`FISCO-BCOS 2.9.1`版本。 + +达梦数据库与`mysql`数据库都属于关系型数据库,就此次改造而言,两者主要区别包含两点: + +1. `SQL`语句和数据类型不同 +2. 数据库结构不同:`mysql`数据库有库和表的概念,可以建立多个数据库,每个数据库中包含多个表,数据库之间彼此独立。所以在使用`mysql`存储引擎时,需要为每一个节点配置一个数据库;然而达梦数据库中并不是这样的架构,其架构更类似于`oracle`数据库,不存在可以配置多个数据库的情况。所以对于一个达梦节点而言,就需要配置一个达梦数据的实例。 + +由于达梦和`mysql`具有一定的相似性,所以我们的改造也是基于`mysql`源码部分。那么首先我们需要了解一下`fisco`是如何实现`mysql`存储的。 + +#### fisco如何使用mysql数据库 + +有关于`mysql`部分的源码位于源码文件的`libStorage`文件夹中的`ZdbStorage`文件中。通过阅读源码我们发现在`fisco`与`mysql`的连接上使用了一款叫做`libzdb`的插件。这款插件提供了一系列数据库操作的接口,比如连接池、URL连接、`SQL`语句执行封装等接口,并且是线程安全的。目前这款插件支持的数据库包括支持`Mysql` `Oracle` `SQLite` `PostgreSQL`。 + +所以这给适配达梦提供了思路,如果想使用这些接口的话,那么就需要让达梦和`libzdb`进行适配,然后就可以直接使用这些接口了。 + +#### fisco如何使用达梦数据库 + +由于`libzdb`官方给出的说明中并不支持达梦数据库,所以我们有必要让两者进行适配,才可以进行与`fisco`的结合。 + +在达梦数据库给出的驱动方面,其提供的`OCI`驱动包是按照`oracle`进行书写的,所以与`oracle`天然适配,这无疑给我们的改造提供了极大的便利。所以此次改造我们使用了`libzdb oracle`部分的代码,进行修改后使其适配达梦数据库。 + +在完成`libzdb`适配后,我们修改了`fisco zdb`部分的代码,主要是针对`sql`语句的改造,成功实现`fisco`与达梦数据库的结合。 + + + +#### 对于源码编译的改造 + +说完了适配的整体思路,继续说一下关于编译环节的改造。 + +首先说一下`fisco`在源码编译部分的处理。`fisco`是用`cmake`进行组织编译的,在源码的`cmake`文件夹中存放着需要拉取依赖的地址和操作方式,文件目录如下图所示 + + + +其中我们可以发现一个叫`ProjectLibzdb.cmake`的文件,我们进去看一下 + +![zdb](fisco达梦数据库.assets/zdb.jpg) + +这是修改后文件,其主要作用就是根据URL地址拉取第三方依赖包。由于我们对`libzdb`进行了自己的适配改造,所以我们将改造后的`libzdb`代码上传到了自己的仓库中,以便进行下载。 + +所以我们对`cmake`文件也进行了修改 + +### fisco-dm源码编译 + +本章节将针对如何从源码编译出适配达梦的`fisco-bcos`程序。当然,我们在文末也提供了直接编译好的`fisco-bcos`程序,您可以跳过这一章节,直接使用编译好的程序也可以。 + +#### 相关依赖 + +`fisco-bcos`:2.9.1版本 + +`达梦数据库`:DM8 + +`达梦驱动包`:dmoci + +操作系统:centos7+,ubuntu20.04,麒麟osV10;支持ARM,不支持windows系统 + +#### libzdb适配教程 + +由于开发周期较短,所以`libzdb`适配达梦数据库的一键配置的脚本并没有完成,所以需要进行人工手动适配,过程略有繁琐。 + +1. 首先请准备一台装有`mysql`的电脑/服务器,将l`ibzdb-dm`代码拉取到本地,代码仓库地址:https://github.com/dyy8888/LibzdbForDM.git 此仓库提供的就是改造好的`libzdb-dm`代码 + +2. 在`libzdbForDM`文件夹中,执行自动检测脚本,这一步会自动检测所拥有的数据库 + + ![image-20231019112540817](fisco达梦数据库.assets/image-20231019112540817.png) + + ```shell + ./configure + ``` + + + + 可以发现检测到了`Mysql`的环境,同时会生成`MakeFile`文件 + + ![image-20231019112616789](fisco达梦数据库.assets/image-20231019112616789.png) + +3. 编辑`MakeFile`文件,修改其中的配置信息。 + + 修改前: + + + + 修改后: + + + + 修改前: + + + + 修改后: + + + + 因为自动检测到的是`mysql`环境,所以需要注释掉`mysql`相关的信息,打开`oracle`相关的 + + 修改前: + + + + 修改后: + + + + 这两步的作用是将达梦给的`dmoci`的驱动和`DCI.h`的头文件导入`libzdb`项目中。驱动和头文件会在文末的百度网盘链接中给出。下图给出`dmoci`驱动包的文件结构。可以发现其中包含驱动`dmoci.a dmoci.so`和依赖的头文件`DCI.h DCI1.h oci.h` + + + + 其中:`/root/dmoci/include`其中包含`DCI.h`头文件,此路径需根据实际情况进行修改 + + `dmoci`为驱动,需要将达梦提供的`oci`驱动包中的`libdmoci`文件复制到系统目录下,这个目录可以参考359行前面给出路径。比如此图片中,需要将`dmoci`复制到`/usr/lib64`中 + + 保存退出`MakeFile`文件 + +4. 进入src文件夹,修改其中的xconfig.h文件 + + ![image-20231019113312346](fisco达梦数据库.assets/image-20231019113312346.png) + + ![image-20231019113347876](fisco达梦数据库.assets/image-20231019113347876.png) + + 修改前: + + ![image-20231016105409664](fisco达梦数据库.assets/image-20231016105409664.png) + + 修改后: + + ![image-20231016105437956](fisco达梦数据库.assets/image-20231016105437956.png) + + 这一步的目的是关闭`mysql`,打开`oracle` + +5. 返回与Makefile同级目录中,如下图所示,执行编译安装步骤 + + ![image-20231019113444696](fisco达梦数据库.assets/image-20231019113444696.png) + + ```shell + make -j4 + sudo make install + ``` + +6. 安装成功后说明适配成功,执行清除指令 + + ```shell + sudo make clean + ``` + +7. 将上述适配好的代码上传到个人的仓库中,这一步的目的是`fisco`在源码编译的时候需要根据依赖的地址去下载,所以请将此代码上传一个可以进行拉取下载的仓库中。同时可能会有疑问,为什么不直接拉取作者改造好的代码呢?这是因为我自己改造的代码相关配置路径是在执行`./configure`后根据我自己服务器的相关信息产生的。所以对于用户来说,肯定和我的服务器路径不相同,所以需要您手动拉取代码后进行配置。 + +#### fisco适配 + +##### **源码编译** + +修改后的fisco代码仓库位于:https://github.com/dyy8888/FISCO-BCOS-2.9.1.git + +请先拉取代码到本地。 + +```shell +#进入cmake目录下,修改ProjectLibzdb.cmake +将下载地址设置为上一步中适配好的libzdb代码地址,也就是您自己上传的github仓库,其他仓库也可以,只要确保可以通过URL下载下来就行 +``` + + + +```shell +#返回上一级目录,新建文件夹build +mkdir build +#执行cmake指令 +cmake .. +#如果是arm64架构,执行。x86不需要 +cmake -DARCH_NATIVE=on .. +#进行编译 +make -j4 +``` + +在编译过程中,会自动将依赖拉取到deps目录下 + +![image-20231016111704475](fisco达梦数据库.assets/image-20231016111704475.png) + +```shell +#需要手动复制rt和oci驱动至deps/libs文件夹中,如下图所示,其余的依赖会在编译中自动放入。这两个依赖,#libdmoci.a在网盘提供的包里有。librt.a请在您的系统目录下寻找。也可以使用命令查找 +whereis librt.a +``` + +![image-20231016111815321](fisco达梦数据库.assets/image-20231016111815321.png) + +最后,可在build/bin目录下得到`fisco-bcos`可执行程序 + +### 具体使用教程 + +文末的百度网盘包中提供了编译好的`fisco-bcos`可执行程序,如果您跳过了源码编译环节,您可以直接看本章节进行部署使用 + +由于测试环境仅包含一台达梦实例,所以本教程将搭建三个`mysql`节点和一个达梦节点 + +首先根据官网文档教程搭建本地四节点的`fisco-bcos`链 + +```shell +## 创建操作目录 +cd ~ && mkdir -p fisco && cd fisco + +## 下载脚本 +curl -#LO https://github.com/FISCO-BCOS/FISCO-BCOS/releases/download/v2.9.1/build_chain.sh && chmod u+x build_chain.sh +## 执行建链脚本 +bash build_chain.sh -l 127.0.0.1:4 -p 30300,20200,8545 +``` + +可以得到以下的目录结构,其中包含着四个节点 + +![image-20231019115803764](fisco达梦数据库.assets/image-20231019115803764.png) + +```shell +## 返回主目录,新建文件夹fisco-DM +cd ~ && mkdir -p fisco-DM +## 复制刚才的fisco文件夹到fisco-DM中 +cp -r fisco fisco-DM/ +``` + +![image-20231019120132592](fisco达梦数据库.assets/image-20231019120132592.png) + +```shell +## 我们将node0设置为达梦节点,其他节点为mysql节点。 +## 所以删除fisco文件夹中的node0文件夹,删除fisco-DM中的node1,node2,node3文件夹 +## 处理完毕后的目录结构为 +``` + +![image-20231019120519771](fisco达梦数据库.assets/image-20231019120519771.png) + +![image-20231019120608331](fisco达梦数据库.assets/image-20231019120608331.png) + +将`fisco-DM`文件夹中的`fisco-bcos`程序,换成达梦版本的程序(源码编译而来,或者直接使用链接包中的程序) + +修改达梦节点(node0)下,conf/group.1.ini + + + + + +目前仅支持SYSDBA的写入,请确保您的用户具备`DBA`的权限 + +启动节点后,查询节点的运行日志,检查是否共识正常。同时可以登录达梦数据库的命令行,查询相关的表格信息。如下图所示: + +![image-20231019134453143](fisco达梦数据库.assets/image-20231019134453143.png) + +### 软件包链接 + +链接:https://pan.baidu.com/s/13VLvYNdrdloMZFMjzWQsrQ?pwd=dm10 +提取码:dm10 + +fisco-dm的PR链接为:https://github.com/FISCO-BCOS/FISCO-BCOS/pull/3969 + +这里可以看到关于fisco-dm对于底层文件的改动情况 + +如有更多问题,可联系我们:2497213126@qq.com + +可以进行指导部署安装达梦区块链节点 \ No newline at end of file diff --git a/2.x/docs/articles/index.md b/2.x/docs/articles/index.md index 94ba43a62..78aa1358c 100644 --- a/2.x/docs/articles/index.md +++ b/2.x/docs/articles/index.md @@ -2,7 +2,7 @@ ## 介绍 -FISCO BCOS开源社区已沉淀120+篇技术文章,这些文章涉猎理论、开发以及应用案例等方面,有助于开发者快速上手、全面掌握FISCO BCOS,依据平台关键特性,社区对这些文章进行整理编排成《深入浅出FISCO BCOS》,供各位浏览阅读。 +新的一年已经开启,为了感谢大家的长久陪伴和倾力支持,我们将FISCO BCOS开源社区成立至今超400篇技术干货和经典篇章整理成文,作为区块链干货合辑,分享给大家! 请点击这里查阅[完整版](https://mp.weixin.qq.com/s?__biz=MzA3MTI5Njg4Mw==&mid=2247493260&idx=1&sn=b042be04819c89169b81bcee99eb2a18&chksm=9e3a71e6e1d2ad682bf8fde9f178c91160e5d7cdf187a81cedb191b8da1605f206f9bfd98ec0&from=industrynews&version=4.1.7.6018&platform=win#rd) 《深入浅出FISCO BCOS》分为六大章节,由社区全体成员共创完成并不断优化,社区开发者可以在GitHub上提交PR贡献文章,分享FISCO BCOS开发经验与使用心得。 diff --git a/2.x/docs/community.md b/2.x/docs/community.md index da36c3cb0..dd619fec0 100644 --- a/2.x/docs/community.md +++ b/2.x/docs/community.md @@ -14,7 +14,7 @@ FISCO BCOS是国内企业主导研发、对外开源、安全可控的企业级 ## 更多开源工具 -![](../../_static/images/products.jpeg) +![](../../_static/images/products_2023.jpeg) - **FISCO BCOS企业级金融联盟链底层平台**: [GitHub](https://github.com/FISCO-BCOS/FISCO-BCOS/tree/master-2.0) 、[Gitee](https://gitee.com/FISCO-BCOS/FISCO-BCOS/tree/master-2.0) 、 [文档](https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/index.html) - **WeBASE 区块链中间件平台**:[GitHub](https://github.com/WeBankFinTech/WeBASE) 、 [Gitee](https://gitee.com/WeBank/WeBASE) 、 [文档](https://webasedoc.readthedocs.io/) @@ -37,6 +37,8 @@ FISCO BCOS是国内企业主导研发、对外开源、安全可控的企业级 - SmartDev-Contract 智能合约库组件:[GitHub](https://github.com/WeBankBlockchain/SmartDev-Contract) 、 [Gitee](https://gitee.com/WeBankBlockchain/SmartDev-Contract) 、 [文档](https://smartdev-doc.readthedocs.io/zh_CN/latest/docs/WeBankBlockchain-SmartDev-Contract/index.html) - SmartDev-SCGP 合约编译插件:[GitHub](https://github.com/WeBankBlockchain/SmartDev-SCGP) 、 [Gitee](https://gitee.com/WeBankBlockchain/SmartDev-SCGP) 、 [文档](https://smartdev-doc.readthedocs.io/zh_CN/latest/docs/WeBankBlockchain-SmartDev-SCGP/index.html) - SmartDev-Scaffold 应用开发脚手架:[GitHub](https://github.com/WeBankBlockchain/SmartDev-Scaffold) 、 [Gitee](https://gitee.com/WeBankBlockchain/SmartDev-Scaffold) 、 [文档](https://smartdev-doc.readthedocs.io/zh_CN/latest/docs/WeBankBlockchain-SmartDev-Scaffold/index.html) +- **DDCMS分布式数据协作管理解决方案**:[GitHub](https://github.com/WeBankBlockchain/DDCMS) 、 [Gitee](https://gitee.com/WeBankBlockchain/DDCMS) 、 [文档](https://ddcms-docs.readthedocs.io/en/latest/) + ## 加入FISCO BCOS社区 diff --git a/2.x/docs/community/MVP_list_new.md b/2.x/docs/community/MVP_list_new.md index e83bb69fd..4ff6148cc 100644 --- a/2.x/docs/community/MVP_list_new.md +++ b/2.x/docs/community/MVP_list_new.md @@ -1,38 +1,21 @@ ## MVP -**2021年度 | FISCO BCOS MVP榜单** +**2023年度 | FISCO BCOS MVP榜单** 作者:小助手 -在《大教堂与集市》一书中,开源世界好比集市,相较传统开发模式更重视开发者间的交流,每位开源社区的参与者、贡献者都是集市中的主角。 - -FISCO BCOS开源社区“集市”历经四载共建,逐渐发展壮大,孕育出超7万个人用户、逾3000企业/机构的活跃开源生态。 - -大家围绕FISCO BCOS开发各类实用的应用组件、持续优化项目,并自发输出技术解析、使用案例、操作实践等丰富内容。点滴的分享让FISCO BCOS的开发体验越来越丝滑友好,也让我们看到区块链的无限可能。 - -今年3月,社区开放FISCO BCOS MVP认定以鼓励为开源社区贡献高质量技术内容的意见先锋与意见领袖。6月,社区认定了首批共10位MVP,而下半年,我们也迎来了新一批16位MVP。 +为了鼓励为开源社区贡献高质量技术内容的意见先锋与意见领袖,开源社区开放FISCO BCOS MVP认定,截止2023年,开源社区共认定63位MVP 。 这些优秀的贡献者或是将FISCO BCOS技术落地到各领域应用中,助力产业数字化,或是在多渠道布道,将开源社区精神传播到更远的地方。 下面,让我们一起来认识这些技术的践行者、社区的布道者。 -**2021年首批MVP** -![](https://user-images.githubusercontent.com/93572056/154943706-ea874249-63ff-496e-a937-d6494b08a89f.png) -![](https://user-images.githubusercontent.com/93572056/154943834-eb21629b-bd39-4d5c-bac1-d251529e09d5.png) -![](https://user-images.githubusercontent.com/93572056/154943855-66d90863-7305-408a-8271-de4667ef268e.png) - -**2021年第二批MVP** -![](https://user-images.githubusercontent.com/93572056/154944202-7a7325b2-a584-4f5e-aa9c-bf103f3a4d93.png) -![](https://user-images.githubusercontent.com/93572056/154944228-af5167d5-68e4-4167-a0fc-e5ee5d65454e.png) - -**推荐阅读**: - -[FISCO BCOS MVP计划](https://mp.weixin.qq.com/s/cqwrzBnQaSd9-jVMrE6_WQ) - -[对话MVP | 谷月:结缘FISCO BCOS,成为区块链浪潮中的弄潮儿](https://mp.weixin.qq.com/s/4pufWZVsW7-fdAMsYggDyg) +![](../../../_static/images/mvp_review_2023.png) +
name | string | No | PRI | 合约名称,name和version为联合主键 |
version | string | No | 合约版本,name和version为联合主键 | |
address | string | No | 合约地址 | |
abi | string | YES | 合约abi | |
_status_ | string | No | 分布式存储通用字段,“0”可用“1”删除 |
消息类型 | +字段名 | +字段含义 | +
VoteReq | +candidate | +Candidate自身的节点索引 | +
lastLeaderTerm | +Candidate见到过的最后一个Leader的Term,其详细作用见3.1.2节 | +|
lastBlockNumber | +Candidate见到过的最新块的块高,其详细作用见3.1.2节 | +|
VoteResp | +voteFlag | +对投票请求的响应标志位,用以标记对是否同意投票请求,若是拒绝还会具体标记拒绝原因,其详细作用见3.1.2节 | +
lastLeaderTerm | +收到VoteReq的节点见到过的最新块的块高,其详细作用见3.1.2节 | +|
Heartbeat | +leader | +发出心跳的Leader节点的节点索引 | +
uncommitedBlock | +当Leader节点预备提交一个新块时,会先将区块数据编码进此字段以并通过心跳进行广播,其详细作用见3.2节 | +|
uncommitedBlockNumber | +uncommitedBlock对应的块高,其详细作用见3.2节 | +|
HeartbeatResp | +uncommitedBlockHash | +当收到Leader发送过来的uncommitedBlock数据时,节点在心跳响应中写入uncommitedBlock对应的哈希(指纹),并发送回Leader,表明节点已经收到Leader预备提交的区块数据且已写入本地缓存,其详细作用见3.2节 | +
划分维度 | +配置类型 | +|
影响范围 | +网络配置 | 全局性质的配置,节点的配置影响该节点所在的整个网络,节点对整个网络使用同一份配置, 文件名为config.* |
+
群组配置 | 节点的配置影响该节点所在的单个群组,每个群组各有一份配置, 文件名为group.X.*,其中X为群组号 |
+|
是否可改 | 固定配置 | 只使用首次配置内容,后续对配置的修改无效, 文件后缀为.genesis |
+
可改配置 | 配置后续可改动,节点重启生效, 文件后缀为.ini |
+|
存放位置 | 本地存储 | 配置存放在本地文件,用户可直接修改, 用户修改自身文件能重启生效的配置项 |
+
链上存储 | 配置存放在区块链上,对其修改需群组共识,目前没有需全网共识的内容, 需新链重置或通过交易修改生效的配置项 |
+
P2P节点连接列表 | 记录本节点期望与哪些节点建立网络通信 | 网络配置 | 可改配置 | 本地存储 | +
节点证书 | 证明自己是由可信第三方许可的节点 | 网络配置 | 可改配置 | 本地存储 | +
CA黑名单 | 记录本节点禁止与哪些节点建立网络通信 | 网络配置 | 可改配置 | 本地存储 | +
群组节点初始列表 | 记录创世块阶段参与共识/同步的节点列表 | 群组配置 | 固定配置 | 本地存储 | +
群组节点系统表 | 记录当前参与一群组共识/同步的节点列表 | 群组配置 | 可改配置 | 链上存储 | +
name | string | No | PRI | 各行同一值,分布式存储基于此key实现全表查询 |
type | string | No | 节点类型(sealer/observer) | |
node_id | string | No | 节点NodeID | |
enable_num | string | No | 该节点类型生效的区块高度 | |
_status_ | string | No | 分布式存储通用字段,“0”可用“1”删除 |