All Projects → fengzhizi715 → Rxcache

fengzhizi715 / Rxcache

Licence: apache-2.0
A local reactive cache for Java and Android. Now, it supports heap memory、off-heap memory and disk cache.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Rxcache

Phoenix For Vk
Yet another VK client for Android
Stars: ✭ 131 (+28.43%)
Mutual labels:  rxjava2, gson, encryption
Instagram
Instagram Project is a mini version of real Instagram app for Android 📱 built with latest Android Development Tools. Kotlin, MVVM, LiveData, GSON, Retrofit, Dagger2
Stars: ✭ 20 (-80.39%)
Mutual labels:  gson, rxjava2
flickr-android
A small sample app to showcase architecting app using Clean Architecture and MVVM
Stars: ✭ 25 (-75.49%)
Mutual labels:  gson, rxjava2
Pudding
Pudding 是一款迷你级分布式服务框架
Stars: ✭ 24 (-76.47%)
Mutual labels:  gson, hessian
Mvpframes
整合大量主流开源项目并且可高度配置化的 Android MVP 快速集成框架,支持 AndroidX
Stars: ✭ 100 (-1.96%)
Mutual labels:  rxjava2, gson
BakingApp
Udacity Android Developer Nanodegree, project 2.
Stars: ✭ 54 (-47.06%)
Mutual labels:  gson, rxjava2
SerializedNameGen
Auto add or remove json annotation plugin, such as gson SerializedName, fastjson JSONField, jackson JsonProperty. It also support java and kotlin file.
Stars: ✭ 19 (-81.37%)
Mutual labels:  gson, fastjson
Redgram For Reddit
An Open-Sourced Android Reddit Client
Stars: ✭ 106 (+3.92%)
Mutual labels:  rxjava2, gson
Rxfingerprint
Android Fingerprint authentication and encryption with RxJava
Stars: ✭ 373 (+265.69%)
Mutual labels:  rxjava2, encryption
Netdiscovery
NetDiscovery 是一款基于 Vert.x、RxJava 2 等框架实现的通用爬虫框架/中间件。
Stars: ✭ 573 (+461.76%)
Mutual labels:  middleware, rxjava2
Bluezero
Middleware for distributed applications
Stars: ✭ 17 (-83.33%)
Mutual labels:  middleware, protobuf
methanol
⚗️ Lightweight HTTP extensions for Java
Stars: ✭ 172 (+68.63%)
Mutual labels:  protobuf, gson
Trailersapp
A simple demo project for The Movie DB based on MVVM clean architecture.
Stars: ✭ 180 (+76.47%)
Mutual labels:  rxjava2, gson
MVVM-Demo
This demo for MVVM Design pattern for android
Stars: ✭ 20 (-80.39%)
Mutual labels:  gson, rxjava2
Gankioclient
利用干货集中营的API自制练手之作
Stars: ✭ 63 (-38.24%)
Mutual labels:  rxjava2, gson
PlayAndroid
✌️✊👋玩安卓Mvvm组件化客户端,整合Jetpack组件DataBinding、ViewModel以及LiveData;屏幕适配✔️状态栏沉浸式✔️黑夜模式✔️,无数据、加载失败状态页;骨架屏、Koin依赖注入等
Stars: ✭ 193 (+89.22%)
Mutual labels:  gson, rxjava2
Jsontokotlinclass
🚀 Plugin for Android Studio And IntelliJ Idea to generate Kotlin data class code from JSON text ( Json to Kotlin )
Stars: ✭ 2,438 (+2290.2%)
Mutual labels:  gson, fastjson
Netty Learning Example
🥚 Netty实践学习案例,见微知著!带着你的心,跟着教程。我相信你行欧。
Stars: ✭ 2,146 (+2003.92%)
Mutual labels:  protobuf, fastjson
Sofa Rpc
SOFARPC is a high-performance, high-extensibility, production-level Java RPC framework.
Stars: ✭ 3,479 (+3310.78%)
Mutual labels:  hessian, protobuf
Easyjson
Provides an unified JSON access API, you can adapter any JSON library to Gson, Jackson, FastJson with easyjson。 提供了一个JSON门面库,就像slf4j一样。easyjson本身不做json的操作,完全依赖于底层实现库。可以直接使用Easyjson的API,底层的JSON库随时可切换。也可以使用其中某个json的API,然后通过easyjson适配给其他的json库
Stars: ✭ 54 (-47.06%)
Mutual labels:  gson, fastjson

RxCache

RxCache 是一款支持 Java 和 Android 的 Local Cache 。目前支持内存、堆外内存、磁盘缓存。

@Tony沈哲 on weibo License Codacy Badge

功能特点:

  • 支持二级缓存:Memory、Persistence
  • 各个缓存可以拥有有效时间,超过时间缓存会过期
  • Memory 默认支持 FIFO、LRU、LFU 算法的实现
  • Memory 额外支持 Guava Cache、Caffeine、MapDB 的实现
  • Memory 支持堆外内存(off-heap)
  • Persistence 默认使用 Gson 实现对象的序列化和反序列化
  • Persistence 额外支持使用 FastJSON、Moshi、Kryo、Hessian、FST、Protobuf 实现对象的序列化和反序列化
  • Persistence 的 AbstractConverter 拥有加密功能,默认使用 AES 128、DES 算法进行加密
  • 支持显示缓存的信息,包括 Memory 缓存使用的统计数据,Persistence 使用的类型和 Converter 的类型
  • 支持缓存 key 同步删除、异步删除的策略
  • 支持 Kotlin, 特别是使用 kotlin extension 模块,可以规避范型擦除
  • 支持 Kotlin Coroutines
  • 支持 Result
  • 使用 Builder 模式可以生成复杂对象的 Type
  • 线程安全
  • 支持 RxJava 3、RxJava 2
  • 支持 Retrofit 风格使用缓存

更详细的功能请查看wiki

Tips

在 RxCache 2.0 之前,RxCache 1.5.1 以及之前的版本使用 RxJava 2.x,RxCache 1.6.0 以及之后的版本使用 RxJava 3.x。

RxCache 2.0 之后,既支持 RxJava 3.x 也支持 RxJava 2.x。

最新版本

模块 最新版本
rxcache-core Download
rxcache-rxjava3 Download
rxcache-rxjava2 Download
rxcache-extension Download
rxcache-extension-coroutines Download
rxcache-extension-result Download
rxcache-memory-guava-cache Download
rxcache-memory-caffeine Download
rxcache-memory-off-heap Download
rxcache-memory-mapdb Download
rxcache-converter-fastjson Download
rxcache-converter-moshi Download
rxcache-converter-kryo Download
rxcache-converter-hessian Download
rxcache-converter-fst Download
rxcache-converter-protobuf Download
rxcache-persistence-okio Download
rxcache-persistence-mapdb Download
rxcache-persistence-diskmap Download

对于 Java 工程,如果使用 gradle 构建,由于默认没有使用 jcenter(),需要在相应 module 的 build.gradle 中配置

Gradle

repositories {
    jcenter()
}

Maven

<repositories>
    <repository>
        <id>central</id>
        <name>bintray</name>
        <url>https://jcenter.bintray.com</url>
    </repository>
</repositories>

下载

感谢

Contributors:

TODO List:

  • 优化 diskmap

联系方式

Wechat:fengzhizi715

Java与Android技术栈:每周更新推送原创技术文章,欢迎扫描下方的公众号二维码并关注,期待与您的共同成长和进步。

License

Copyright (C) 2018 - present, Tony Shen.

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.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].