TWCore 3.1.0
dotnet add package TWCore --version 3.1.0
NuGet\Install-Package TWCore -Version 3.1.0
<PackageReference Include="TWCore" Version="3.1.0" />
paket add TWCore --version 3.1.0
#r "nuget: TWCore, 3.1.0"
// Install TWCore as a Cake Addin #addin nuget:?package=TWCore&version=3.1.0 // Install TWCore as a Cake Tool #tool nuget:?package=TWCore&version=3.1.0
TWCore 3.1
A multipurpose framework library used to create microservices solutions on multiple platforms (runs on windows, linux, linux-arm [raspberry pi], and osx).
Compatible with
- .NET Framework 4.7.2
- netstandard2.0
- netcoreapp2.1
- netcoreapp2.2
- netcoreapp3.1
- net5.0
- net6.0
- net7.0
- net8.0
Advantages
- Easy development of microservices: With fewer code you can subscribe to a message broker and start to process messages as pub/sub or RPC architecture.
- Completely agnostic and loosely coupled: All subsystems of the framework are registered with a dependency injector engine, so using only the configurations files you can switch between Messages brokers, Serialization formats, Rpc transports, Stream compressors, and many more.
- Integrated Log, Trace, and Status engines: you can log on different storage, also use differents trace storages and you have an integrated status library to check your service health.
- A bot subsystem to create bot services on Telegram and Slack
- Extensions methods for objects, strings, and IEnumerables.
- Aspnet Core object viewer and compiler developer tool.
Supported log storages
- Console
- File
- Html File
- MessageBroker
- ElasticSearch
Supported trace storages
- File
- MessageBroker
Supported compressors
- Gzip
- Deflate
- Brotli
Supported messages brokers
- RabbitMQ
- NATS
- NSQ
- Kafka
- Redis (Pub/Sub)
Supported key/value cache storages
- Custom TWCore
- Redis
Supported bot connectors
- Slack
- Telegram
Supported serializers
- Newtonsoft JsonNet
- XmlSerializer
- BinaryFormatter
- Utf8Json
- MsgPack
- NSerializer (Custom binary serializer with object reference graph support and cyclic reference)
- RawSerializer (Like NSerializer but without internal caching, faster, but serialized objects are bigger in bytes size.)
Simple Object Serializer Benchmark
BenchmarkDotNet=v0.11.3, OS=Windows 10.0.17134.523 (1803/April2018Update/Redstone4)\
Intel Core i7-4770R CPU 3.20GHz (Haswell), 1 CPU, 8 logical and 4 physical cores\
.NET Core SDK=2.2.101\
[Host] : .NET Core 2.2.0 (CoreCLR 4.6.27110.04, CoreFX 4.6.27110.04), 64bit RyuJIT\
Core : .NET Core 2.2.0 (CoreCLR 4.6.27110.04, CoreFX 4.6.27110.04), 64bit RyuJIT\
Job=Core Runtime=Core
Method | N | Mean | Error | StdDev | Min | Max | Gen 0/1k Op | Gen 1/1k Op | Gen 2/1k Op | Allocated Memory/Op |
---|---|---|---|---|---|---|---|---|---|---|
NewtonsoftJsonSerializerToStream | 1 | 42.935 us | 0.4296 us | 0.4019 us | 42.123 us | 43.608 us | 3.6621 | 0.1831 | - | 23296 B |
NewtonsoftJsonDeserializerFromStream | 1 | 78.432 us | 1.5565 us | 1.4560 us | 76.154 us | 80.546 us | 3.5400 | 0.8545 | - | 22960 B |
XmlSerializerToStream | 1 | 45.512 us | 0.3721 us | 0.3299 us | 44.858 us | 46.154 us | 1.8921 | - | - | 12224 B |
XmlDeserializerFromStream | 1 | 91.809 us | 1.4537 us | 1.3598 us | 89.874 us | 94.327 us | 4.5166 | 0.3662 | - | 28608 B |
BinaryFormatterSerializerToStream | 1 | 53.381 us | 0.5491 us | 0.5137 us | 52.418 us | 54.022 us | 2.5635 | - | - | 16504 B |
BinaryFormatterDeserializerFromStream | 1 | 44.802 us | 0.5174 us | 0.4840 us | 43.914 us | 45.613 us | 3.6011 | 0.4883 | - | 22720 B |
Utf8JsonSerializerToStream | 1 | 7.609 us | 0.1364 us | 0.1276 us | 7.429 us | 7.832 us | - | - | - | - |
Utf8JsonDeserializerFromStream | 1 | 20.249 us | 0.2015 us | 0.1885 us | 20.009 us | 20.641 us | 0.9460 | 0.1831 | - | 6016 B |
MessagePackSerializerToStream | 1 | 7.777 us | 0.0682 us | 0.0638 us | 7.658 us | 7.900 us | - | - | - | 96 B |
MessagePackDeserializerFromStream | 1 | 11.087 us | 0.1592 us | 0.1489 us | 10.795 us | 11.419 us | 1.3123 | 0.3204 | - | 8272 B |
NSerializerToStream | 1 | 7.823 us | 0.1440 us | 0.1347 us | 7.607 us | 8.051 us | - | - | - | - |
NDeserializerFromStream | 1 | 7.301 us | 0.0702 us | 0.0657 us | 7.106 us | 7.405 us | 0.4425 | 0.0458 | - | 2800 B |
RawSerializerToStream | 1 | 6.574 us | 0.1298 us | 0.1275 us | 6.375 us | 6.781 us | - | - | - | - |
RawDeserializerFromStream | 1 | 7.837 us | 0.0655 us | 0.0613 us | 7.748 us | 7.937 us | 0.5569 | 0.0763 | - | 3520 B |
Created by Tony Redondo
Powered By
Thanks to @jetbrains for helping on this development with the licenses for Rider, dotTrace and dotMemory
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 is compatible. netcoreapp2.2 is compatible. netcoreapp3.0 was computed. netcoreapp3.1 is compatible. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 is compatible. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETCoreApp 2.1
- Newtonsoft.Json (>= 13.0.3)
- System.Threading.Channels (>= 4.7.1)
-
.NETCoreApp 2.2
- Newtonsoft.Json (>= 13.0.3)
- System.Threading.Channels (>= 4.7.1)
-
.NETCoreApp 3.1
- Newtonsoft.Json (>= 13.0.3)
- System.Threading.Channels (>= 4.7.1)
-
.NETFramework 4.7.2
- Microsoft.NETFramework.ReferenceAssemblies (>= 1.0.3)
- Newtonsoft.Json (>= 13.0.3)
- System.Memory (>= 4.5.5)
- System.Threading.Channels (>= 4.5.0)
-
.NETStandard 2.0
- Newtonsoft.Json (>= 13.0.3)
- System.Memory (>= 4.5.5)
- System.Threading.Channels (>= 4.5.0)
-
net5.0
- Newtonsoft.Json (>= 13.0.3)
-
net6.0
- Newtonsoft.Json (>= 13.0.3)
-
net7.0
- Newtonsoft.Json (>= 13.0.3)
-
net8.0
- Newtonsoft.Json (>= 13.0.3)
NuGet packages (36)
Showing the top 5 NuGet packages that depend on TWCore:
Package | Downloads |
---|---|
TWCore.Bot
TWCore Framework. A multipurpose framework library for .net core |
|
TWCore.Data
TWCore Framework. A multipurpose framework library for .net core |
|
TWCore.Messaging
TWCore Framework. A multipurpose framework library for .net core |
|
TWCore.Net.Rpc
TWCore Framework. A multipurpose framework library for .net core |
|
TWCore.Cache
TWCore Framework. A multipurpose framework library for .net core |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
3.1.0 | 2,507 | 10/22/2023 |
3.1.0-beta2 | 1,788 | 10/20/2023 |
3.1.0-beta1 | 1,748 | 10/19/2023 |
3.0.0-beta5 | 4,197 | 9/8/2019 |
3.0.0-beta4 | 3,946 | 9/8/2019 |
3.0.0-beta3 | 4,016 | 8/20/2019 |
3.0.0-beta2 | 3,909 | 8/18/2019 |
3.0.0-beta1 | 3,969 | 8/18/2019 |
2.1.181 | 9,624 | 7/24/2019 |
2.1.181-beta5 | 4,336 | 7/16/2019 |
2.1.181-beta4 | 4,516 | 5/10/2019 |
2.1.181-beta3 | 4,596 | 3/16/2019 |
2.1.181-beta2 | 4,492 | 3/8/2019 |
2.1.181-beta | 4,499 | 3/3/2019 |
2.1.180 | 8,697 | 3/1/2019 |
2.1.180-rc1 | 4,493 | 2/28/2019 |
2.1.180-beta9 | 4,489 | 2/14/2019 |
2.1.180-beta8 | 4,653 | 2/14/2019 |
2.1.180-beta7 | 4,530 | 2/8/2019 |
2.1.180-beta6 | 4,446 | 2/7/2019 |
2.1.180-beta5 | 4,621 | 2/6/2019 |
2.1.180-beta4 | 4,532 | 2/5/2019 |
2.1.180-beta3 | 4,567 | 2/4/2019 |
2.1.180-beta2 | 4,772 | 2/4/2019 |
2.1.180-beta1 | 4,588 | 2/4/2019 |
2.1.180-alpha8 | 4,505 | 1/30/2019 |
2.1.180-alpha7 | 4,542 | 1/22/2019 |
2.1.180-alpha6 | 4,603 | 1/21/2019 |
2.1.180-alpha5 | 4,499 | 1/18/2019 |
2.1.180-alpha4 | 4,600 | 1/17/2019 |
2.1.180-alpha3 | 4,683 | 1/16/2019 |
2.1.180-alpha2 | 4,532 | 1/16/2019 |
2.1.180-alpha1 | 4,594 | 1/15/2019 |
2.1.179 | 8,741 | 1/9/2019 |
2.1.179-beta9 | 4,570 | 1/3/2019 |
2.1.179-beta8 | 4,633 | 1/2/2019 |
2.1.179-beta7 | 4,672 | 1/2/2019 |
2.1.179-beta6 | 4,658 | 12/21/2018 |
2.1.179-beta5 | 4,500 | 12/19/2018 |
2.1.179-beta4 | 4,616 | 12/19/2018 |
2.1.179-beta3 | 4,662 | 12/19/2018 |
2.1.179-beta2 | 4,609 | 12/18/2018 |
2.1.179-beta12 | 4,541 | 1/8/2019 |
2.1.179-beta11 | 4,649 | 1/7/2019 |
2.1.179-beta10 | 4,532 | 1/4/2019 |
2.1.179-beta1 | 4,595 | 12/18/2018 |
2.1.179-alpha9 | 4,701 | 12/18/2018 |
2.1.179-alpha8 | 4,619 | 11/28/2018 |
2.1.179-alpha7 | 4,645 | 11/22/2018 |
2.1.179-alpha6 | 4,678 | 11/20/2018 |
2.1.179-alpha5 | 4,551 | 11/20/2018 |
2.1.179-alpha4 | 4,599 | 11/20/2018 |
2.1.179-alpha3 | 4,533 | 11/19/2018 |
2.1.179-alpha2 | 4,485 | 11/16/2018 |
2.1.179-alpha | 4,510 | 11/16/2018 |
2.1.178 | 8,780 | 11/6/2018 |
2.1.178-beta2 | 4,604 | 11/6/2018 |
2.1.178-beta1 | 4,581 | 10/29/2018 |
2.1.178-alpha7 | 4,621 | 10/22/2018 |
2.1.178-alpha6 | 4,613 | 10/19/2018 |
2.1.178-alpha5 | 4,490 | 10/17/2018 |
2.1.178-alpha4 | 4,495 | 10/14/2018 |
2.1.178-alpha3 | 4,640 | 10/13/2018 |
2.1.178-alpha2 | 4,743 | 10/9/2018 |
2.1.178-alpha | 4,598 | 10/9/2018 |
2.1.177 | 8,346 | 9/27/2018 |
2.1.177-rc4 | 4,412 | 9/26/2018 |
2.1.177-rc3 | 4,357 | 9/26/2018 |
2.1.177-rc2 | 4,361 | 9/26/2018 |
2.1.177-rc1 | 4,365 | 9/25/2018 |
2.1.177-beta | 4,328 | 9/25/2018 |
2.1.177-alpha | 4,264 | 9/24/2018 |
2.1.176 | 6,753 | 9/20/2018 |
2.1.175 | 6,595 | 9/19/2018 |
2.1.174 | 6,628 | 9/16/2018 |
2.1.173 | 6,658 | 9/12/2018 |
2.1.173-beta | 3,533 | 9/12/2018 |
2.1.172 | 6,935 | 9/11/2018 |
2.1.171 | 6,831 | 8/27/2018 |
2.1.171-rc1 | 3,595 | 8/27/2018 |
2.1.171-beta | 3,533 | 8/27/2018 |
2.1.170 | 6,946 | 8/15/2018 |
2.1.169 | 6,856 | 8/14/2018 |
2.1.168 | 7,009 | 8/10/2018 |
2.1.167 | 6,914 | 8/9/2018 |
2.1.166 | 6,994 | 8/9/2018 |
2.1.165 | 7,054 | 8/9/2018 |
2.1.164 | 7,023 | 8/8/2018 |
2.1.163 | 6,884 | 8/8/2018 |
2.1.162 | 7,045 | 8/8/2018 |
2.1.161 | 7,126 | 8/8/2018 |
2.1.160 | 7,080 | 8/7/2018 |
2.1.159 | 6,945 | 8/3/2018 |
2.1.158 | 7,010 | 8/2/2018 |
2.1.157 | 6,906 | 8/1/2018 |
2.1.156 | 6,994 | 7/30/2018 |
2.1.155 | 7,009 | 7/29/2018 |
2.1.154 | 6,726 | 7/19/2018 |
2.1.153 | 6,883 | 7/12/2018 |
2.1.152 | 6,808 | 7/11/2018 |
2.1.151 | 6,840 | 7/11/2018 |
2.1.150 | 6,760 | 7/11/2018 |
2.1.149 | 6,839 | 7/10/2018 |
2.1.148 | 6,872 | 7/4/2018 |
2.1.147 | 6,826 | 7/3/2018 |
2.1.146 | 6,649 | 7/1/2018 |
2.1.145 | 6,703 | 7/1/2018 |
2.1.144 | 6,695 | 6/28/2018 |
2.1.143 | 6,785 | 6/25/2018 |
2.1.142 | 7,005 | 6/19/2018 |
2.1.141 | 7,029 | 6/19/2018 |
2.1.140 | 6,907 | 6/18/2018 |
2.0.149 | 8,321 | 7/10/2018 |
2.0.148 | 8,164 | 7/4/2018 |
2.0.147 | 8,270 | 7/3/2018 |
2.0.146 | 8,364 | 7/1/2018 |
2.0.145 | 8,405 | 7/1/2018 |
2.0.144 | 8,107 | 6/28/2018 |
2.0.143 | 8,249 | 6/25/2018 |
2.0.142 | 8,401 | 6/19/2018 |
2.0.141 | 8,437 | 6/19/2018 |
2.0.140 | 8,271 | 6/18/2018 |
2.0.139 | 8,222 | 6/18/2018 |
2.0.138 | 8,308 | 6/15/2018 |
2.0.137 | 8,291 | 6/15/2018 |
2.0.136 | 8,325 | 6/12/2018 |
2.0.135 | 8,303 | 6/11/2018 |
2.0.134 | 7,988 | 6/11/2018 |
2.0.133 | 8,137 | 6/11/2018 |
0.2.132 | 8,147 | 5/25/2018 |
0.2.131 | 8,353 | 5/21/2018 |
0.2.130 | 8,249 | 5/20/2018 |
0.2.129 | 8,158 | 5/20/2018 |
0.2.128 | 7,912 | 5/14/2018 |
0.2.127 | 8,079 | 5/11/2018 |
0.2.126 | 8,227 | 5/10/2018 |
0.2.125 | 8,324 | 5/8/2018 |
0.2.124 | 8,356 | 4/30/2018 |
0.2.123 | 8,220 | 4/29/2018 |
0.2.122 | 8,275 | 4/27/2018 |
0.2.121 | 7,892 | 4/26/2018 |
0.2.120 | 7,977 | 4/25/2018 |
0.2.119 | 8,146 | 4/25/2018 |
0.2.118 | 8,101 | 4/25/2018 |
0.2.117 | 7,957 | 4/24/2018 |
0.2.116 | 7,906 | 4/24/2018 |
0.2.115 | 8,120 | 4/19/2018 |
0.2.114 | 7,924 | 4/19/2018 |
0.2.113 | 7,923 | 4/19/2018 |
0.2.112 | 7,741 | 4/18/2018 |
0.2.111 | 7,892 | 4/18/2018 |
0.2.110 | 7,870 | 4/18/2018 |
0.2.109 | 7,865 | 4/17/2018 |
0.2.108 | 7,928 | 4/17/2018 |
0.2.107 | 8,125 | 4/9/2018 |
0.2.106 | 8,029 | 4/6/2018 |
0.2.105 | 7,897 | 4/3/2018 |
0.2.104 | 8,125 | 4/2/2018 |
0.2.103 | 7,930 | 3/28/2018 |
0.2.102 | 7,878 | 3/28/2018 |
0.2.101 | 7,814 | 3/28/2018 |
0.2.100 | 7,916 | 3/27/2018 |
0.2.99 | 8,086 | 3/24/2018 |
0.2.98 | 8,019 | 3/23/2018 |
0.2.97 | 7,761 | 3/19/2018 |
0.2.96 | 7,977 | 3/16/2018 |
0.2.95 | 7,788 | 3/15/2018 |
0.2.94 | 7,896 | 3/13/2018 |
0.2.93 | 7,838 | 3/12/2018 |
0.2.92 | 7,814 | 3/12/2018 |
0.2.91 | 7,782 | 3/12/2018 |
0.2.90 | 7,936 | 3/11/2018 |
0.2.89 | 7,933 | 3/6/2018 |
0.2.88 | 7,925 | 3/2/2018 |
0.2.87 | 7,828 | 3/1/2018 |
0.2.86 | 7,827 | 2/28/2018 |
0.2.85 | 8,000 | 2/28/2018 |
0.2.84 | 7,701 | 2/28/2018 |
0.2.83 | 7,918 | 2/27/2018 |
0.2.82 | 7,576 | 2/26/2018 |
0.2.81 | 7,701 | 2/23/2018 |
0.2.80 | 7,964 | 2/22/2018 |
0.2.79 | 7,606 | 2/21/2018 |
0.2.78 | 7,799 | 2/16/2018 |
0.2.77 | 7,832 | 2/14/2018 |
0.2.76 | 7,952 | 2/14/2018 |
0.2.75 | 7,897 | 2/9/2018 |
0.2.74 | 8,113 | 2/9/2018 |
0.2.73 | 7,867 | 2/1/2018 |
0.2.72 | 7,738 | 1/31/2018 |
0.2.71 | 7,923 | 1/30/2018 |
0.2.70 | 7,808 | 1/29/2018 |
0.2.69 | 7,736 | 1/26/2018 |
0.2.68 | 7,946 | 1/23/2018 |
0.2.67 | 7,951 | 1/22/2018 |
0.2.66 | 7,780 | 1/22/2018 |
0.2.65 | 7,925 | 1/19/2018 |
0.2.64 | 7,704 | 1/17/2018 |
0.2.63 | 7,807 | 1/16/2018 |
0.2.62 | 7,928 | 1/15/2018 |
0.2.61 | 7,817 | 12/18/2017 |
0.2.60 | 7,905 | 12/6/2017 |
0.2.59 | 7,903 | 12/5/2017 |
0.2.58 | 7,710 | 12/4/2017 |
0.2.57 | 7,875 | 12/1/2017 |
0.2.56 | 7,909 | 11/30/2017 |
0.2.55 | 7,636 | 11/28/2017 |
0.2.54 | 7,696 | 11/28/2017 |
0.2.53 | 7,746 | 11/28/2017 |
0.2.52 | 7,751 | 11/26/2017 |
0.2.51 | 7,748 | 11/24/2017 |
0.2.50 | 7,744 | 11/23/2017 |
0.2.49 | 7,475 | 11/17/2017 |
0.2.48 | 7,662 | 11/17/2017 |
0.2.47 | 7,503 | 11/16/2017 |
0.2.46 | 7,599 | 11/15/2017 |
0.2.45 | 7,358 | 11/13/2017 |
0.2.44 | 7,342 | 11/7/2017 |
0.2.43 | 7,416 | 11/7/2017 |
0.2.42 | 7,395 | 11/6/2017 |
0.2.41 | 7,393 | 10/31/2017 |
0.2.40 | 7,384 | 10/31/2017 |
0.2.39 | 7,335 | 10/26/2017 |
0.2.38 | 7,582 | 10/26/2017 |
0.2.37 | 7,642 | 10/25/2017 |
0.2.36 | 7,363 | 10/23/2017 |
0.2.35 | 7,360 | 10/20/2017 |
0.2.34 | 7,416 | 10/13/2017 |
0.2.33 | 7,395 | 10/10/2017 |
0.2.32 | 7,509 | 10/9/2017 |
0.2.31 | 7,274 | 10/7/2017 |
0.2.30 | 7,361 | 10/6/2017 |
0.2.29 | 6,930 | 9/29/2017 |
0.2.28 | 7,014 | 9/27/2017 |
0.2.27 | 7,020 | 9/25/2017 |
0.2.26 | 7,109 | 9/22/2017 |
0.2.25 | 6,931 | 9/20/2017 |
0.2.24 | 7,101 | 9/19/2017 |
0.2.23 | 6,990 | 9/13/2017 |
0.2.22 | 6,764 | 9/13/2017 |
0.2.21 | 6,830 | 9/13/2017 |
0.2.20 | 6,951 | 9/13/2017 |
0.2.19 | 6,774 | 9/12/2017 |
0.2.18 | 6,629 | 9/12/2017 |
0.2.17 | 6,765 | 9/11/2017 |
0.2.16 | 6,658 | 9/11/2017 |
0.2.15 | 6,873 | 9/8/2017 |
0.2.14 | 1,047 | 9/8/2017 |
0.2.13 | 1,713 | 9/8/2017 |
0.2.12 | 1,019 | 9/8/2017 |
0.2.11 | 1,232 | 9/8/2017 |
0.2.10 | 7,056 | 9/8/2017 |
0.2.9 | 6,964 | 8/29/2017 |
0.2.8 | 7,209 | 8/29/2017 |
0.2.7 | 7,204 | 8/29/2017 |
0.2.6 | 7,110 | 8/25/2017 |
0.2.5 | 7,129 | 8/16/2017 |
0.2.1-alpha | 3,897 | 8/16/2017 |
0.2.0-alpha | 3,354 | 8/7/2017 |
0.1.5 | 1,588 | 4/5/2017 |
0.1.4 | 1,560 | 4/5/2017 |
0.1.3 | 2,539 | 4/5/2017 |
0.1.2 | 1,933 | 4/5/2017 |
0.1.1 | 1,922 | 3/26/2017 |
0.1.0 | 8,065 | 3/25/2017 |