Filecoin周报-54:Filecoin测试奖励计划7.20启动,准备好了吗?

 

Steven Li、Iris共同编制

【项目介绍】

Filecoin是一个将云存储转变为算法市场的去中心化存储网络。

矿工--通过提供数据存储和检索来获得FIL

客户--通过支付FIL使得矿工提供存储、分发和检索数据服务

 

【项目进度:Testnet phase2

【Filecoin周报】54:Filecoin测试奖励计划7.20启动,准备好了吗?

测试版本:

  • lotus v0.4.0(网络已重置)

测试目标:

  • lotus、go-filecoin等四个实现完成互操

  • 网络、代码的安全审核

  • 硬件配置/证明结构/经济结构

  • Filecoin测试奖励计划(预计3周)

项目进度:

  • 测试奖励计划推迟到7月20日启动

  • 胡安率团队开启新一次AMA活动

 

【上周热点】

  • 6月24日,Coinlist发出公告,称Filecoin主网将于8月中旬或月底上线,让广大投资者做好接收FIL的准备。

【Filecoin周报】54:Filecoin测试奖励计划7.20启动,准备好了吗?

 

【上周测试网进度】

1)测试网重置以后,经历波动,目前运行效果基本符合原力区预期。

2)测试网运行状况:

【Filecoin周报】54:Filecoin测试奖励计划7.20启动,准备好了吗?

filscan.io截图(14:00)

【Filecoin周报】54:Filecoin测试奖励计划7.20启动,准备好了吗?

  • 网络重置后系统运行超过8天,活跃矿工数量维持在4000以上,系统出块稳定

    • 上周区块高度接近 29,000,全网有效算力接近 9.18PiB。单周增长7PiB左右,平均每日增长1.0PiB,这是Filecoin网络测试以来增长最快的一周

    • 上周区块奖励为 18.26FIL 左右,奖励按照规则呈指数缓慢下降,符合预期

    • 出块比较稳定,平均区块间隔25s左右,空块轮次很少;平均每一轮的平均区块数量保持在2.6左右,与重置初期相比有所下降

    • 目前平均消息数量 31 个左右,说明最近参与测试的矿工不少,网络比较活跃

    • 目前消息大小约超过960字节,与上周基本持平,以证明消息为主

3)主要问题:

  • 可预测选举的问题 - 设计问题(非实现问题):修复进行中,稍复杂

  • 水龙头稳定性问题 - 修复

  • beacon 验证问题 

  • 链同步Race Condition - fixed

 

【上周开发进度】

  • 代码新增及问题修复:

    • 改进出块选举的算法,增加出块权的随机性 - 进行中

    • spec-storage 改进,提供扇区移除支持,允许客户在本地删除自己的数据

    • 文档更新

    • Sector 升级的支持 - 进行中

    • 并行处理区块验证

    • WindowedPoSt 改进:对于有错误发生时,应该停止证明

    • 存储/检索市场改进:支持multiaddr地址,enable/disable 检索交易;对deal相关的sector提高优先级;为检索提供更多API支持

    • 抵押机制实现 - 进行中

    • 改进错误Sector的计算方式

  • 设计和证明更新:

    • 复制证明 - 实现层相关的 challenges

    • 并行WindowedPoSt synthesize

    • NSE 算法的进一步实现

<think>根据用户提供的配置信息,我们需要将其整理为标准的Spring Boot YAML配置格式(application.yml)。同时,我会对配置进行适当的结构化并添加必要的注释说明。 注意以下几点: 1. YAML使用缩进表示层级关系,相同层级的元素左侧对齐 2. 冒号后面需要跟一个空格 3. 配置项应当按功能分组 以下是整理后的application.yml配置: </think># Spring Boot 项目配置文件详解 以下是您的配置文件的完整整理版本,我对配置项进行了分类和注释说明,确保配置清晰可读并符合 Spring Boot 最佳实践: ```yaml # ======================== # 应用基础配置 # ======================== server: port: 8080 # 应用服务端口 # ======================== # 数据源配置 (MySQL) # ======================== spring: datasource: url: jdbc:mysql://localhost:3306/weekly_report?useSSL=false&characterEncoding=utf8 username: root password: zl673289976 driver-class-name: com.mysql.cj.jdbc.Driver # ======================== # 邮件服务配置 # ======================== mail: host: smtp.example.com port: 587 username: noreply@example.com password: email_password properties: mail: smtp: auth: true starttls: enable: true connectiontimeout: 5000 timeout: 5000 writetimeout: 5000 # ======================== # MyBatis Plus 配置 # ======================== mybatis-plus: configuration: map-underscore-to-camel-case: true # 自动将数据库下划线命名转为Java驼峰命名 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 输出SQL日志到控制台 global-config: db-config: id-type: auto # 主键生成策略(数据库自动增长) logic-delete-field: deleted # 逻辑删除字段名 logic-delete-value: 1 # 已删除状态值 logic-not-delete-value: 0 # 未删除状态值 # ======================== # PageHelper 分页插件配置 # ======================== pagehelper: helper-dialect: mysql # 指定数据库方言 reasonable: true # 分页合理化参数,启用后当pageNum<=0会查询第一页 support-methods-arguments: true # 支持通过Mapper接口参数来传递分页参数 params: count=countSql # 用于从Map或ServletRequest中取值 # ======================== # 自定义业务配置 # ======================== report: deadline: day-of-week: FRI # 周报提交截止日(周五) time: 18:00:00 # 周报提交截止时间 # ======================== # 日志级别配置 # ======================== logging: level: root: INFO # 全局日志级别 org.springframework.web: DEBUG # Spring Web相关日志级别 com.example.weeklyreport: DEBUG # 项目包日志级别 ``` ## 配置文件解释 ### 1. 数据源配置(MySQL) ```yaml spring: datasource: url: jdbc:mysql://localhost:3306/weekly_report?useSSL=false&characterEncoding=utf8 username: root password: zl673289976 driver-class-name: com.mysql.cj.jdbc.Driver ``` - **重要提示**:在实际项目中,请将数据库密码存储在安全的地方(如环境变量或专用密钥管理服务) - 参数说明: - `useSSL=false`:禁用SSL连接(生产环境应启用) - `characterEncoding=utf8`:确保数据库使用UTF-8编码 ### 2. 邮件服务配置 ```yaml spring: mail: host: smtp.example.com port: 587 username: noreply@example.com password: email_password properties: mail.smtp.auth: true mail.smtp.starttls.enable: true mail.smtp.connectiontimeout: 5000 mail.smtp.timeout: 5000 mail.smtp.writetimeout: 5000 ``` - 建议将邮件配置移到单独的profile(如application-dev.yml)中 - TLS端口587通常比SSL端口465更安全 ### 3. MyBatis-Plus 关键配置 ```yaml mybatis-plus: configuration: map-underscore-to-camel-case: true log-impl: org.apache.ibatis.logging.stdout.StdOutImpl global-config: db-config: id-type: auto logic-delete-field: deleted logic-delete-value: 1 logic-not-delete-value: 0 ``` - **逻辑删除**:启用后,删除操作将转为更新操作(设置deleted=1) - **SQL日志**:开发环境建议开启,生产环境应关闭 ### 4. PageHelper 分页配置 ```yaml pagehelper: helper-dialect: mysql reasonable: true support-methods-arguments: true params: count=countSql ``` - `reasonable: true`:当pageNum<=0时查询第一页,pageNum>pages时查询最后一页 - `support-methods-arguments: true`:支持直接在Mapper接口方法参数中使用分页参数 ## 推荐补充配置 ### 数据库连接池配置(推荐) ```yaml spring: datasource: hikari: connection-timeout: 30000 # 连接超时时间(ms) maximum-pool-size: 20 # 最大连接数 minimum-idle: 5 # 最小空闲连接 idle-timeout: 600000 # 空闲连接超时时间(ms) max-lifetime: 1800000 # 连接最大生命周(ms) ``` ### 多环境配置方案(推荐) 创建多个配置文件: - `application.yml`(公共配置) - `application-dev.yml`(开发环境) - `application-prod.yml`(生产环境) 在 `application.yml` 中激活环境: ```yaml spring: profiles: active: dev ``` ## 主启动类示例 创建 `src/main/java/com/example/weeklyreport/WeeklyReportApplication.java`: ```java package com.example.weeklyreport; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class WeeklyReportApplication { public static void main(String[] args) { SpringApplication.run(WeeklyReportApplication.class, args); System.out.println("========================================"); System.out.println(" 周报系统启动成功!访问地址: http://localhost:8080"); System.out.println(" Swagger文档: http://localhost:8080/swagger-ui.html"); System.out.println(" H2数据库控制台: http://localhost:8080/h2-console"); System.out.println("========================================"); } } ``` ## 验证配置是否生效 ### 1. 创建配置检查端点 ```java package com.example.weeklyreport.config; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class ConfigCheckController { @Value("${report.deadline.day-of-week}") private String deadlineDay; @Value("${report.deadline.time}") private String deadlineTime; @GetMapping("/config-check") public String checkConfig() { return String.format("周报截止配置: 每周%s %s前提交", deadlineDay, deadlineTime); } } ``` ### 2. 验证MyBatis-Plus配置 在实体类中使用逻辑删除: ```java package com.example.weeklyreport.entity; import com.baomidou.mybatisplus.annotation.*; import lombok.Data; @Data @TableName("weekly_reports") public class WeeklyReport { @TableId(type = IdType.AUTO) private Long id; private String reporterName; private String content; @TableLogic // 逻辑删除注解 private Integer deleted; } ``` ## 启动步骤 1. 确保MySQL服务已启动 2. 创建数据库(如果不存在): ```sql CREATE DATABASE IF NOT EXISTS weekly_report DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_unicode_ci; ``` 3. 启动Spring Boot应用: ```bash mvn spring-boot:run ``` 4. 验证配置端点: ```bash curl http://localhost:8080/config-check ``` ## 安全建议 1. **敏感信息处理**: ```yaml spring: datasource: password: ${DB_PASSWORD} ``` 启动时传入环境变量: ```bash DB_PASSWORD=your_password java -jar app.jar ``` 2. **禁用开发配置**: - 生产环境移除SQL日志配置 - 禁用H2控制台(如果使用MySQL) ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值