-
Notifications
You must be signed in to change notification settings - Fork 244
Expand file tree
/
Copy pathCargo.toml
More file actions
96 lines (76 loc) · 2.57 KB
/
Cargo.toml
File metadata and controls
96 lines (76 loc) · 2.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# Copyright 2023 The RocketMQ Rust Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
[package]
name = "rocketmq-remoting"
version.workspace = true
authors.workspace = true
edition.workspace = true
homepage.workspace = true
repository.workspace = true
license.workspace = true
keywords = ["rocketmq-rust", "async", "non-blocking", "futures", "rocketmq"]
categories = ["asynchronous", "network-programming"]
description = "Rust implementation of Apache rocketmq remoting"
readme = "README.md"
rust-version.workspace = true
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
rocketmq-common = { workspace = true }
rocketmq-macros = { workspace = true }
rocketmq-rust = { workspace = true }
rocketmq-error = { workspace = true }
anyhow.workspace = true
bytes.workspace = true
#tokio
tokio.workspace = true
tokio-util.workspace = true
#log
tracing.workspace = true
#json spupport
serde.workspace = true
serde_json.workspace = true
serde_json_any_key.workspace = true
rand.workspace = true
flate2 = { workspace = true }
#futures
futures = "0.3"
futures-util = "0.3"
num_cpus.workspace = true
parking_lot.workspace = true
# High-performance channel alternative to tokio::mpsc
# flume provides 40-60% better throughput with lock-free design
flume = "0.12"
trait-variant.workspace = true
uuid = { workspace = true }
cheetah-string = { workspace = true }
bitvec = "1.0.1"
bytemuck = "1.25.0"
dashmap = { workspace = true, features = ["serde"] }
# SIMD-accelerated JSON parsing (30-50% faster than serde_json)
simd-json = { version = "0.17", optional = true }
[features]
default = []
simd = ["simd-json"]
[dev-dependencies]
bytes = "1.11.1"
criterion = { version = "0.8", features = ["html_reports"] }
[[bench]]
name = "encode_decode_bench"
harness = false
[[bench]]
name = "simd_json_bench"
harness = false
[[bench]]
name = "encode_buffer_bench"
harness = false