Merge pull request #110 from chickenlj/add_ebooks

upload ebooks
diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml
new file mode 100644
index 0000000..33577b2
--- /dev/null
+++ b/.github/workflows/benchmark.yml
@@ -0,0 +1,66 @@
+name: Dubbo Benchmark
+
+on:
+  workflow_dispatch:
+  schedule:
+    - cron: '0 */6 * * *'
+
+jobs:
+  benchmark-report-upload:
+    needs: [benchmark-report]
+    runs-on: ubuntu-latest
+    name: Run Benchmark and Report
+    permissions:
+      contents: write
+    steps:
+      - uses: actions/checkout@v2
+      - name: download output
+        uses: actions/download-artifact@v2
+      - name: Generate Report
+        run: |
+          dirname=$(date +%Y%m%d)_$(date +%H%M%S)
+          mkdir -p benchmark/$dirname
+          cp *_output/*.md benchmark/$dirname && rm -rf *_output/*.md
+      - name: Deploy
+        uses: peaceiris/actions-gh-pages@v3
+        if: github.ref == 'refs/heads/master'
+        with:
+          github_token: ${{ secrets.GITHUB_TOKEN }}
+          publish_branch: report/benchmark
+          publish_dir: ./benchmark
+          destination_dir: benchmark
+          keep_files: true
+
+  benchmark-report:
+    runs-on: ubuntu-latest
+    timeout-minutes: 30
+    strategy:
+      matrix:
+        target: [ "dubbo-fastjson","dubbo-gson","dubbo-grpc","dubbo-hessianlite","dubbo-kryo","dubbo-native-hessian","dubbo-protobuf-json","dubbo-triple" ]
+    steps:
+      - uses: actions/checkout@v2
+        with:
+          repository: 'apache/dubbo-benchmark'
+          ref: master
+      - name: Set up JDK 8
+        uses: actions/setup-java@v2
+        with:
+          java-version: '8'
+          distribution: 'adopt'
+      - name: Prepare base
+        run: mvn clean package -DskipTests=true -pl benchmark-base,client-base,server-base
+      - name: Start server
+        run: ./benchmark.sh ${{ matrix.target }}-server &
+      - name: Wait server ready
+        run: sleep 20
+      - name: Run benchmark
+        run: |
+          fileName=${{ matrix.target }}_output
+          ./benchmark.sh -a "--warmupIterations=1 --warmupTime=1 --measurementIterations=1 --measurementTime=1" -f $fileName.md ${{ matrix.target }}-client
+      - name: Kill jobs
+        run: jobs -p | grep -o -E '\s\d+\s' | xargs kill || true
+      - name: Save output
+        uses: actions/upload-artifact@v2
+        with:
+          name: ${{ matrix.target }}_output
+          path: ${{ matrix.target }}_output.md
diff --git a/dubbo-rust/weeklymeeting/2022-10-27.md b/dubbo-rust/weeklymeeting/2022-10-27.md
new file mode 100644
index 0000000..5f7406a
--- /dev/null
+++ b/dubbo-rust/weeklymeeting/2022-10-27.md
@@ -0,0 +1,67 @@
+## 会议纪要如下:
+
++ 军哥分享了Dubbo多语言实现的PPT
++ 基于PPT的内容进行了任务划分
++ 项目进度
++ 讨论
+
+## 具体任务分配
+
+需要军哥分享一下PPT;同时将任务新建issue来管理
+
+## 项目进度
+
+bobi: 
+服务注册:metadata解析
+服务发现:周末赶进度,可以提供一个demo版本
+
+雷杰:
+Tower超时流程,Filter流程;
+
+杨阳:
+完成了上次周会遗留的工作
+
+## dubbo-rust协同工作
+
+在Github上管理任务(issue),代码建议小batch多提交
+
+关于issue的讨论,最好在Github上对应的issue下;没有的话,可以新建一个
+
+## 对Rust的讨论
+
+rust:零抽象(特性) ——> 难 ——> 适合做什么项目。
+
+Rust难在哪儿
++ Rust的内存管理
++ Rust的所有权
+
+内存管理:Rust 内存管理
+
+Python的内存回收机制中有“借用”的概念
+
+### Rust可以做什么
+
+Rust适合写 更贴近Unix系统库的程序
+
+BPF 
+
+unix 系统库 -> dpdk -> 
+
+rust写kernel模块;标准化构建方式:cargo。
+
+rust写docker:不太适合
+
+控制面:并不需要太高的性能
+数据面:性能要求高一些的场景。可以用Rust,类似于DPDK
+
+桌面应用:面向下一代的electron
+前端,wasm,二进制的逆向成本更高。
+嵌入式
+
+### dubbo-rust的优势
+
+dubbo-rust: http 通信 ——> RPC通信。可以将Rust写的微服务接入到现在的微服务框架体系中。避免了Rust Server -> C SDK -> CGO -> Golang微服务 -> Golang微服务框架这一复杂的链路
+
+对于dubbo-rust的推广使用,doc很重要,可以更快地让用户上手
+
+dubbo-rust:能够提供比较稳定的性能;希望使用Rust做新的东西,形式化证明框架
diff --git a/dubbo-rust/weeklymeeting/2022-11-03.md b/dubbo-rust/weeklymeeting/2022-11-03.md
new file mode 100644
index 0000000..1c6a97d
--- /dev/null
+++ b/dubbo-rust/weeklymeeting/2022-11-03.md
@@ -0,0 +1,8 @@
+会议纪要如下:
+墨舟:负载均衡(实现阶段,20%);参与Context模块
+
+bobi:
++ 服务发现演示:dubbo-java进行服务注册,dubbo-rust client进行服务发现
++ todo: 将待做的任务分解为子issue
+
+杨阳:dubbo rust demo演示以及代码结构简单分享
\ No newline at end of file
diff --git a/dubbo-rust/weeklymeeting/2022-11-10.md b/dubbo-rust/weeklymeeting/2022-11-10.md
new file mode 100644
index 0000000..9d2d69d
--- /dev/null
+++ b/dubbo-rust/weeklymeeting/2022-11-10.md
@@ -0,0 +1,28 @@
+## 会议纪要
+
+bobi:
+ci优化;服务注册模块正在进行中;有一个新的小伙伴一起做
+
+Yang Yang:
+Timeout 拦截器实现
+
+176:
+Filter模块:Timeout拦截器实现
+
+墨舟:
+负载均衡算法对标dubbo-java提供五种模式,基本上开发完成了。但是一致性哈希和最短响应时间算法,其实依赖了Response和URLAddress等相关模块;可能需要增加对应的基础模块
+代码提交的分支:基于service_discovery分支进行开发
+
+有两位新加入的小伙伴正在熟悉任务:@176  和 @zkx
+
+新的issue:
+
++ triple协议中消息编码/解码进行扩展
++ server相关的参数需要通过配置文件进行配置
+
+未来可以考虑做的事情:
++ Runtime调度算法
++ dubbo-rust未来可以支持Runtime自定义配置
+
+ToDo
+单周会可以考虑调整为双周会:每个月可以分享一次已有的Issue以及入门资料,让感兴趣的小伙伴参与进来
diff --git "a/slides/meetup/202212@shanghai/Dubbo\345\274\200\346\272\220\347\216\260\347\212\266\347\232\204\346\200\235\350\200\203\344\270\216\346\234\252\346\235\245\350\247\204\345\210\222.pptx" "b/slides/meetup/202212@shanghai/Dubbo\345\274\200\346\272\220\347\216\260\347\212\266\347\232\204\346\200\235\350\200\203\344\270\216\346\234\252\346\235\245\350\247\204\345\210\222.pptx"
new file mode 100644
index 0000000..5f089ec
--- /dev/null
+++ "b/slides/meetup/202212@shanghai/Dubbo\345\274\200\346\272\220\347\216\260\347\212\266\347\232\204\346\200\235\350\200\203\344\270\216\346\234\252\346\235\245\350\247\204\345\210\222.pptx"
Binary files differ
diff --git a/summerofcode/gsoc/2023-idea-list.md b/summerofcode/gsoc/2023-idea-list.md
new file mode 100644
index 0000000..855c40e
--- /dev/null
+++ b/summerofcode/gsoc/2023-idea-list.md
@@ -0,0 +1,28 @@
+1. [Dubbo 连接管理抽象](https://github.com/apache/dubbo/issues/11894)
+2. [HTTP/1 和 2 的能力抽象](https://github.com/apache/dubbo/issues/11889)
+3. [HTTP/3 Rest 协议支持](https://github.com/apache/dubbo/issues/11903)
+4. [Dubbo 精简 RPC API 抽象](https://github.com/apache/dubbo/issues/11902)
+5. [请求 JSON 格式兼容性检查](https://github.com/apache/dubbo/issues/11898)
+6. [Dubbo Client on WASM](https://github.com/apache/dubbo/issues/11901)
+7. [Dubbo 基于 WASM 实现SPI 扩展](https://github.com/apache/dubbo/issues/11900)
+8. [自动化性能测试机制](https://github.com/apache/dubbo/issues/11899)
+9. [Dubbo API 管理平台](https://github.com/apache/dubbo/issues/11897)
+10. [Dubbo Service Deployer](https://github.com/apache/dubbo/issues/11896)
+11. [Dubbo IDL 管理平台](https://github.com/apache/dubbo/issues/11895)
+12. [基于 Gradle 重构 Dubbo 项目](https://github.com/apache/dubbo/issues/11893)
+13. [Dubbo i18n 日志国际化](https://github.com/apache/dubbo/issues/11892)
+14. [移除 Triple 编译器的 jprotoc 依赖](https://github.com/apache/dubbo/issues/11891)
+15. [Dubbo API 用法扫描工具](https://github.com/apache/dubbo/issues/11890)
+16. [Dubbo Admin Metrics 能力接入](https://github.com/apache/dubbo-admin/issues/1055)
+17. [基于 Kubernetes 的自动化集成测试机制](https://github.com/apache/dubbo-samples/issues/795)
+18. [Go Traffic Management Policies](https://github.com/apache/dubbo-go/issues/2260)
+19. [Go Security Mechanism](https://github.com/apache/dubbo-go/issues/2257)
+20. [Lightweight HTTP2 RPC Protocol Support for Dubbo-go](https://github.com/apache/dubbo-go/issues/2263)
+21. [Improve usability of Dubbo-go project](https://github.com/apache/dubbo-go/issues/2265)
+22. [Go Observability Improvement](https://github.com/apache/dubbo-go/issues/2261)
+23. [Go Web Protocol and Programming Support](https://github.com/apache/dubbo-go/issues/2258)
+24. [Admin Control Plane](https://github.com/apache/dubbo-admin/issues/1063)
+25. [Rust Cluster Feature Implementation and Stability Improvemen](https://github.com/apache/dubbo-rust/issues/129)
+26. [Dubbo3 Python HTTP/2 RPC Protocol Implementation](https://github.com/apache/dubbo-python2/issues/17)
+27. [Dubbo3 Node.js HTTP/2 RPC Protocol Implementation](https://github.com/apache/dubbo-js/issues/330)
+28. [Dubbo Admin Dashboard UI Pages](https://github.com/apache/dubbo-admin/issues/1062)
diff --git a/weeklymeeting/20221202.md b/weeklymeeting/20221202.md
new file mode 100644
index 0000000..3acff8b
--- /dev/null
+++ b/weeklymeeting/20221202.md
@@ -0,0 +1,51 @@
+# 项目任务进度
+
+- Dubbo FAQ 建设 -  赵俊宪、张翔、刘泉禄、周林、刘建伟、顾欣
+  - 代码已经完成,还差文档没有完善。
+- Istio Agent 模式下的 Proxyless - 陈彦岚
+  - 演示教程  ——> 进行中
+- Dubbo 序列化迁移方案,Hessian -> Fastjson2 的 - 文臣、小四
+  - 代码和文档已经完成。
+  - 重新再整理一下迁移的逻辑。远云
+- Triple 协议性能优化 - 蔡振球、梁倍宁
+  - 基准测试 ——> PR已提交 待处理
+  - 性能优化
+    - WriteQueue无状态调整已完成 PR待合并
+    - WriteQueue抽象已完成,dubbo协议已支持且已合并,tri方面待改造
+  - CI集成benchmark 性能数据跑分 - 文臣 ——> done
+  - benchmark修改的内容提上来 - 梁倍宁 ——> done
+  - 沉淀性能优化的文档  - 梁倍宁、蔡振球 ——> 未开始
+  - benchmark用例完善 ——> 暂无进展
+  - benchmark日志输出到同一个地方  ——> 进度60%
+- Triple 支持自定义异常 - 陈景明
+  - 缺少文档
+  - api方式支持获取自定义异常,待开发。
+- xDS 支持证书认证(spiffe)、路由规则 - 陈彦岚、严浩
+  - 需要推进一下review内容
+- remoting-api继续与netty解耦 - 丛国庆、邢阳阳
+  - 还差ssl解耦没有做完
+- 可观测性之metric - 安博超、宋小生、王振宇、jojo、姚辉
+  - 文档整理 - 姚辉 ——> 进度90%
+  - PR已经提了 ,base filter 已经完成 - jojo ——> done
+  - 端口暴露的ut报错修复 - jojo ——> done
+  - pull方式指标写入响应 - HeXuan ——> 暂无进展
+  - 指标类型的丰富调研 - 全路 ——> 暂无进展
+  - 指标对接柔性服务 - 宁小波 ——> 暂无进展
+  - 指标对接spring体系 - 宋小生 ——> 暂无进展
+- dubbo 集成spring6.0 springboot3.0 - James、伟成
+  - 还差springboot3的ci和samples 
+- Triple协议支持反压 - 顾欣
+  - 还差文档说明和文章
+- 柔性负载 - 宁小波、全路、安博超
+  - 自适应限流 - 全路 ——> 在跑实验数据和代码测试。
+- Dubbo 入门系列 - 小四、文臣、路顺
+  - 第一个 Dubbo 程序 - 文臣 ——> PR已提交,待合并,视频已初版录制待完善
+  - Dubbo 不仅仅是 RPC 框架之服务治理篇 - 路顺 ——> 文档进度30%,视频待录制
+  - Dubbo 不仅仅是 RPC 框架之高级特性篇 - 小四 ——> 暂无进度
+  - Dubbo 不仅仅是 RPC 框架之组件接入 - 黄翊龙 ——> 文档进度20%
+  - Dubbo 二次开发示例 ——> 待分配
+
+# 其他事项
+
+- 考虑单测用native的方式来跑
+- dubbo-samples的工程结构变更,需要有人一起参与进来共建。