主要集中于Web技术的不同运输实施和相关工具的集合。具有6个IETF RFC(6265、6455、7541、7692、8441、9113),2个正式规格(GRPC,PostgreSQL)和其他几种发明的想法的内部开发。
每个功能都是可选的,必须在编译时设置。请参阅预期的文档以获取更多信息。
带有工作堆分配器的嵌入式设备可以使用此no_std板条箱。
项目中通常使用许多提高性能的事物,仅举几例:
cargo tree -e normal --features postgres看到PostgreSQL客户端所需的16个依赖项。由于通常将内存保持在实例级别,而不是被即时创建和掉落,因此值得注意的是,其用法可以显着增长,具体取决于用例。如果拨款,请尝试使用共享的资源池或尝试限制各方之间可以交换多少数据。
结帐WTX板凳以查看各种基准测试,或者随意指出任何误解或误会。
主要有两件事会影响性能,所选的运行时和预先分配的字节的数量。特别是对于必须为每个握手创建新实例的服务器,为短期或低转移连接的大量字节预先分配可能会产生负面影响。
存储库中标有#[bench]的任何东西都被认为是低级基准,因为它们衡量了通常是其他部分的基础的非常特定的操作。
看看https://bencher.dev/perf/wtx,以查看不同时间内所有低级基准测试。
当使用需要网络连接的功能时,通常有必要执行加密的通信,并且由于wtx并未对特定的流实现进行硬编码,因此您必须选择最佳的TLS提供商。
TokioRustlsConnector或TokioRustlsAcceptor等一些实用程序可使情况更加方便,但请记住,仍然有必要激活为客户使用提供证书的板条箱。
在wtx-instances目录以及文档中可以找到不同用例的演示。
不支持指针长度为16位的系统。
期望任意数量的切片的长度的无误总和,否则该程序可能会触发可能导致意外操作的溢出。例如,在32位系统中,这种情况应该可行,而无需交换内存或通过诸如ulimit类的特定限制器。