AutoCSer 包含一个支持日志流持久化的高性能内存数据库缓存服务组件,支持若干全局默认配置,需要引用 AutoCSer\Packet\*\AutoCSer.dll + AutoCSer.Sort.dll + AutoCSer.CacheServer.dll 。

基本数据类型

. 整数类型 byte, sbyte, short, ushort, int, uint, long, ulong

. 数字类型(包括整数类型)+ float, double, decimal

. 可排序类型(包括数字类型)+ char, DateTime, string

. 关键字类型(包括可排序类型)+ Guid

. 基本数据类型(包括关键字类型)+ bool, byte[]

. JSON 序列化包装类型 AutoCSer.CacheServer.DataStructure.Value.Json<valueType>

. 二进制序列化包装类型 AutoCSer.CacheServer.DataStructure.Value.Binary<valueType>

数据节点

. 数组 AutoCSer.CacheServer.DataStructure.ValueArray<valueType> / AutoCSer.CacheServer.DataStructure.ValueFragmentArray<valueType>
valueType 可以为任意 基本数据类型数字类型 可以通过扩展方法 GetNumberUpdater 获取更新对象,整数类型 可以通过扩展方法 GetIntegerUpdater 获取更新对象

参考示例 AutoCSer\Example\CacheServer\ValueArray.cs

. 字典 AutoCSer.CacheServer.DataStructure.ValueDictionary<keyType, valueType> / AutoCSer.CacheServer.DataStructure.ValueFragmentDictionary<keyType, valueType>
keyType关键字类型valueType 可以为任意 基本数据类型数字类型 可以通过扩展方法 GetNumberUpdater 获取更新对象,整数类型 可以通过扩展方法 GetIntegerUpdater 获取更新对象

参考示例 AutoCSer\Example\CacheServer\ValueDictionary.cs

. 搜索树字典 AutoCSer.CacheServer.DataStructure.ValueSearchTreeDictionary<keyType, valueType>
keyType排序关键字类型valueType 可以为任意 基本数据类型数字类型 可以通过扩展方法 GetNumberUpdater 获取更新对象,整数类型 可以通过扩展方法 GetIntegerUpdater 获取更新对象

参考示例 AutoCSer\Example\CacheServer\ValueSearchTreeDictionary.cs

. 最小堆 AutoCSer.CacheServer.DataStructure.Heap<keyType, valueType>
keyType排序关键字类型valueType 可以为任意 基本数据类型

参考示例 AutoCSer\Example\CacheServer\Heap.cs

. 哈希表 AutoCSer.CacheServer.DataStructure.HashSet<valueType> / AutoCSer.CacheServer.DataStructure.FragmentHashSet<valueType>
valueType关键字类型

参考示例 AutoCSer\Example\CacheServer\HashSet.cs

. 链表 AutoCSer.CacheServer.DataStructure.Link<valueType>
valueType 可以为任意 基本数据类型

参考示例 AutoCSer\Example\CacheServer\Link.cs

. 位图 AutoCSer.CacheServer.DataStructure.Bitmap

参考示例 AutoCSer\Example\CacheServer\Bitmap.cs

. AutoCSer.CacheServer.DataStructure.Lock

参考示例 AutoCSer\Example\CacheServer\Lock.cs

. 消息队列 AutoCSer.CacheServer.DataStructure.MessageQueue.QueueConsumer<valueType> / AutoCSer.CacheServer.DataStructure.MessageQueue.QueueConsumers<valueType>
valueType 可以为任意 基本数据类型,前者只允许一个消费者,后者允许最多 65536 个消费者,每个消费者都将顺序处理所有消息。

参考示例 AutoCSer\Example\CacheServer\MesssageQueueConsumer.cs
参考示例 AutoCSer\Example\CacheServer\MesssageQueueConsumers.cs

. 消息分发 AutoCSer.CacheServer.DataStructure.MessageQueue.Distributor<valueType>
valueType 可以为任意 基本数据类型,服务端将消息适度轮流的推送到每个客户端消费者,不保证消息的消费顺序。

参考示例 AutoCSer\Example\CacheServer\MesssageDistributor.cs

. 某些 数据节点 提供 CreateShortPath() 方法支持短路径操作,用于降低深度嵌套的数据节点服务端解析开销,它的过期重建操作会对客户端异步操作产生同步阻塞,示例代码参考 嵌套节点

嵌套节点

. 数组 AutoCSer.CacheServer.DataStructure.Array<nodeType> / AutoCSer.CacheServer.DataStructure.FragmentArray<nodeType>
nodeType嵌套节点 或者 数据节点

参考示例 AutoCSer\Example\CacheServer\Array.cs

. 字典 AutoCSer.CacheServer.DataStructure.Dictionary<keyType, nodeType> / AutoCSer.CacheServer.DataStructure.FragmentDictionary<keyType, nodeType>
keyType关键字类型nodeType嵌套节点 或者 数据节点

参考示例 AutoCSer\Example\CacheServer\Dictionary.cs

. 搜索树字典 AutoCSer.CacheServer.DataStructure.SearchTreeDictionary<keyType, nodeType>
keyType排序关键字类型nodeType嵌套节点 或者 数据节点

参考示例 AutoCSer\Example\CacheServer\SearchTreeDictionary.cs

性能测试项目
AutoCSer\TestCase\CacheServerPerformance\AutoCSer.TestCase.CacheServerPerformance
AutoCSer\TestCase\CacheClientPerformance\AutoCSer.TestCase.CacheClientPerformance