< 返回版块

Jancd 发表于 2020-06-12 23:53

Tags:rust,news

进一步理解 Rust 错误处理

本文 Rust 的初学者和对 Rust 感兴趣却还没能很好上手的朋友更加友好。阅读和理解大约需要15分钟,仅需一些基本的编程知识,你就能很好的理解本文。

在文章中,作者会介绍 Rust 中错误的基本知识,并分析为什么会这样处理,然后解释一些更高级的错误处理概念,同时分享一些实用的技巧。原文地址:https://www.halcyon.hr/posts/error-handling-in-rust/

reddit 上参与讨论:https://www.reddit.com/r/rust/comments/h12itt/error_handling_in_rust_a_beginners_guide/

rust-search-extension v0.10 版本更新啦👏

社区大佬出品的超好用插件,赶紧来支持一个 o( ̄︶ ̄)o :https://github.com/huhu/rust-search-extension

TinyDB

TinyDB是一个占用空间小,速度超快的数据库,旨在在内存中使用,并在需要保存时轻松地从文件中转储/检索。项目地址:https://github.com/scowez/tinydb

rarebears - pandas 的 Rust 实现

目前该项目已经有一些完整的实现:https://github.com/drew-wallace/rarebears

postgrest-rs

postgrest-rs 库提供了 PostgREST 的 ORM 接口,项目地址:https://github.com/supabase/postgrest-rs

简单使用示例:

use postgrest::Postgrest;

let client = Postgrest::new("https://your.postgrest.endpoint");
let resp = client
    .from("your_table")
    .select("*")
    .execute()
    .await?;
let body = resp
    .text()
    .await?;

Rust PostgresSQL clients benchmark

diesel,elephantry,postgres,sqlx 这四个常见库的性能测试:https://github.com/elephantry/benchmark#rust-postgressql-clients-benchmark

最新补充,来自网友 biluohc 的评论回复,他指出原作者的 postgres benchmark 异步sqlx的结果是错误的。作为对比, biluohc 提供了他实现的示例:https://github.com/biluohc/actixweb-sqlx-jwt。更多内容欢迎大家到评论区查看详情,深入交流。

Svelte + TypeScript + Parcel + Rust

作者将一些常用的技术栈进行组合,制作了用于 Svelte + Rust + TypeScript 的热模块重装的简单模板,项目地址:https://github.com/HugoDaniel/svelte-template

详细一点的原文介绍:https://hugodaniel.pt/posts/browser-tech-stack-2020/


From 日报小组 @Jancd

社区学习交流平台订阅:

评论区

写评论
作者 Jancd 2020-06-13 11:11

这个图片问题我反馈一下 对以下内容的回复:

作者 Jancd 2020-06-13 11:10

很赞👍 对以下内容的回复:

biluohc 2020-06-13 06:49

迫于这个运行和研究这个破测试花了我一些时间, 大家赞助点star吧, 最近用acix-web和sqlx做的项目模板actixweb-sqlx-jwt .

sqlx用起来感觉确实不错的, 灵活性, 安全性和性能都很好.

当然坑也是有的, 目前遇到的最大的是时区问题https://github.com/launchbadge/sqlx/issues/329, 应该只会会影响mysql和postgres, sqlx会设置为零时区, 用UTC就比较好, 也可以修改源码换成自己在的时区解决

biluohc 2020-06-13 06:21

评论里面不能发图吗? weiznich/benchmark/graph.png

weiznich/benchmark/graph.png

biluohc 2020-06-13 06:20

最后发现也有人受不了, pr里面的修正版

https://github.com/weiznich/benchmark

weiznich/benchmark/graph.png

biluohc 2020-06-13 06:09

全部block_on依次运行, 异步完全不能并发, 实际上做这种测试应该倒过来, 给同步的客户端做异步的兼容层

biluohc 2020-06-13 06:01

rust-postgressql-clients-benchmark 那个测试写得.., 按他的readme这么多提交就第一个可以运行, 而且异步完全用错了, 后果就是同步的客户端占了大便宜..

1 共 7 条评论, 1 页