首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

一篇文章get微信开源移动端数据库组件WCDB的一切!

说起WCDB,它是在WeChat应用程序中使用的高效,完整,易于使用的移动数据库框架,它目前在iOS,MacOS和Android上可用。...WCDB是一个高效、完整、易用的移动数据库框架,基于 SQLCipher,支持 iOS、macOS 和 Android。...它包含三个模块: WCDB-iOS/Mac; WCDB-Android; 数据库损坏修复工具WCDBRepair。 更多介绍,详见《[资讯] 微信移动端数据库组件WCDB即将开源!》。...详见:《微信移动端数据库组件WCDB系列(三) — WINQ原理篇》 6、WCDB Android有哪些的特色功能?...相关文章如下: 《微信移动数据库组件WCDB(四) — Android 特性篇》 《移动端IM实践:Android版微信如何大幅提升交互性能(一)》 《移动端IM实践:Android版微信如何大幅提升交互性能

1.6K30

只看这一篇,你能够完全 get 微信移动端数据库 WCDB 的一切!

说起WCDB,它是在WeChat应用程序中使用的高效,完整,易于使用的移动数据库框架。它目前在iOS,MacOS和Android上可用。...Github地址:https://github.com/Tencent/wcdb Star数量:3312 依托微信的用户量和对数据库的重度依赖,WCDB直击移动端数据库在iOS和Android平台存在的不同问题...WCDB Android有哪些的特色功能? Android 由于接口跟系统几乎一样,相信大家都比较熟悉,不熟悉用法也可以到 Android Developer 官网看一下。...点击下方标题即可阅读全文↓ 《微信移动数据库组件WCDB(四) — Android 特性篇》 《微信ANDROID客户端-会话速度提升70%的背后》 Q5: 为了让开发者更快上手,WCDB为开源做了哪些改变...为了更好地共享成果,Android 与 iOS 数据库组件 WCDB 经过重构后脱离各自的业务逻辑,变成一个独立的,专注的,可推广的组件,最终以开源的形式与大家相见。

2.2K20

微信 WCDB 进化之路 - 开源与开始

趁此机会,正好回顾一下 WCDB 这个“微信的数据库”的成长,分享我们的心路历程,也希望以此让大家更了解WCDB。...SQL封装 WCDB通过封装宏,让业务代码在类内定义字段和类型。WCDB通过宏保存这些信息,在之后的增删改查中使用。这成为WCDB的ORM雏形。...WINQ 痛定思痛,乘着开源这股风,我决定将WCDB的易用性优化到极致。这,便是WINQ,WCDB Integrated Query(WCDB语言集成查询)。...Android 4.x 框架内建了连接池,实现上与 iOS WCDB 类似,只是实现在 Java 层,线程唤醒机制也使用 Java 的同步手段实现,可以媲美 WCDB iOS 连接池了。...为了更好地共享成果,Android 与 iOS 数据库组件 WCDB 经过重构后脱离各自的业务逻辑,变成一个独立的,专注的,可推广的组件,在公司内部供其他产品接入。

1.3K40

WCDB 的 WAL 模式和异步 Checkpoint

另一组策略是,引入异步 Checkpoint 但维持普通阈值在 100,这样 Checkpoint 频率会和 Android WAL 默认策略差不多。阻塞阈值则设置为 300,靠近高压下的性能拐点。...线上 A/B Test,使用 WCDB for Android 1.0.5 版本,一开始选取了三种不同配置:传统 Rollback 模式、默认 WAL 模式、WAL + ACP(0/100)。...在 WCDB 中使用 WAL 和异步 Checkpoint WAL 和异步 Checkpoint 是微信客户端数据库组件 WCDB 的重要优化点之一。...iOS 版本默认开启 WAL 与异步 Checkpoint;Android 版本由于要保持与官方接口一致,默认不开启 WAL 与 Checkpoint,可以通过以下方式开启。...从 Rollback 模式迁移到 WAL + 异步 Checkpoint 不需要做数据迁移,建议使用 WCDBAndroid App 均尝试打开 WAL + 异步 Checkpoint。

4.1K82

新年新语言,WCDB Swift

WCDB ObjC 版本的实现中,由于引入了 C++ 代码,并不能直接 bridge 到 Swift。因此,我们从 9 月份开始就着手使用原生的 Swift,重写 WCDB。...今天,终于可以正式发布 WCDB Swift 的第一个正式版本了。 WCDB Swift 约有 1.5w 行代码,使用 Pure Swift 编写,几乎不包含 Cocoa 的代码。...类似的语法,其返回值并不为,而是语言集成查询的对象,WCDB 会根据这个语句,去进行 SQL 的查询。同时,通过类型的定义,Swift 即可推导出 WCDB 查询的结果为类。...WCDB 的模型绑定对语言有两点依赖: 1. Accessor。ObjC 版本使用的指针,使得 WCDB 可以获取变量的值,并插入到数据库中,或从数据库中获取数据写入到变量。 2. 数据库字段的映射。...而 WCDB Swift 就是这类基础设施之一。

95790

微信 WCDB 进化之路:开源与开始

趁此机会,正好回顾一下 WCDB 这个“微信的数据库”的成长,分享我们的心路历程,也希望以此让大家更了解WCDB。...SQL封装 WCDB通过封装宏,让业务代码在类内定义字段和类型。WCDB通过宏保存这些信息,在之后的增删改查中使用。这成为WCDB的ORM雏形。...WINQ 痛定思痛,乘着开源这股风,我决定将WCDB的易用性优化到极致。这,便是WINQ,WCDB Integrated Query(WCDB语言集成查询)。...Android 4.x 框架内建了连接池,实现上与 iOS WCDB 类似,只是实现在 Java 层,线程唤醒机制也使用 Java 的同步手段实现,可以媲美 WCDB iOS 连接池了。...为了更好地共享成果,Android 与 iOS 数据库组件 WCDB 经过重构后脱离各自的业务逻辑,变成一个独立的,专注的,可推广的组件,在公司内部供其他产品接入。

5.1K51

为什么要从 FMDB 迁移到 WCDB

作者:sanhuazhang 背景 WCDB 开源至今已两个月有余,我们在不断迭代功能、完善文档的同时,也与来自世界各地的开发者进行交流,帮助他们更快地了解、掌握 WCDB 。...平滑迁移 文件格式 由于 FMDB 和 WCDB 都基于 SQLite ,因此两者在数据库的文件格式上一致。用 FMDB 创建、操作的数据库,可以直接通过 WCDB 打开、使用。...因此,WCDB 提供了 WCDB_SYNTHESIZE_COLUMN(className, propertyName, columnName) 宏,用于映射属性名。...通过 WCDB 的 ORM,可以映射为 通过 WCDB_SYNTHESIZE_COLUMN 宏映射后,WCDB 同样能兼容 FMDB 的表结构,开发者也不需要做数据迁移。...需要对其建模,可以定义为 其中: WCDB_IMPLEMENTATION(className) 用于定义进行绑定的类 WCDB_PROPERTY(propertyName) 和 WCDB_SYNTHESIZE

2.7K00

Realm、WCDB与SQLite移动数据库性能对比测试

Realm 是由Y Combinator孵化的创业团队开源出来的一款可以用于iOS(同样适用于Swift&Objective-C)和Android的跨平台移动数据库。...优势:兼顾iOS和Android两个平台;简单易用,学习成本低;提供了一个轻量级的数据库查看工具,开发者可以查看数据库当中的内容,执行简单的插入和删除数据的操作。...,支持iOS, macOS和Android。易用,支持事务,可加密、损坏修复。 二、测试数据表结构 Student表。 字段:ID、name、age、money。...而WCDB的表现很让人惊喜,其插入速度非常快,以至于比SQLite都快了一个量级,要知道WCDB也是基于SQLite扩展的。...官方说明 https://github.com/Tencent/wcdb/wiki [7] WCDB 官方iOS使用说明 https://github.com/Tencent/wcdb/wiki/iOS

3K10

腾讯十大开源项目出炉!

腾讯开源了许多非常有价值的项目,下面我们一起来看看腾讯10大开源项目有哪些 1、Android 热修复框架 Tinker ?...Tinker是微信官方的Android热补丁解决方案,它支持动态下发代码、So库以及资源,让应用能够在不需要重新安装的情况下实现更新。...Mars 是微信官方的终端基础组件,目前已接入微信 Android、iOS、Mac、Windows、WP 等客户端。...WCDB是一个高效、完整、易用的移动数据库框架,基于SQLCipher,支持iOS, macOS和Android ?...基本特性: ◇ 易用,WCDB支持一句代码即可将数据取出并组合为object ◇ 高效,WCDB通过框架层和sqlcipher源码优化,使其更高效的表现 ◇ 完整,WCDB覆盖了数据库相关各种场景的所需功能

99120

腾讯十大开源项目出炉!

腾讯开源了许多非常有价值的项目,下面我们一起来看看腾讯10大开源项目有哪些 1、Android 热修复框架 Tinker Tinker是微信官方的Android热补丁解决方案,它支持动态下发代码、So...当然,你也可以使用Tinker来更新你的插件 它主要包括以下几个部分: ◇ gradle编译插件: tinker-patch-gradle-plugin ◇ 核心sdk库: tinker-android-lib...tinker-patch-cli.jar ◆ 地址: https://github.com/Tencent/tinker 2、微信客户端跨平台组件 Mars Mars 是微信官方的终端基础组件,目前已接入微信 Android...WCDB是一个高效、完整、易用的移动数据库框架,基于SQLCipher,支持iOS, macOS和Android 基本特性: ◇ 易用,WCDB支持一句代码即可将数据取出并组合为object ◇...高效,WCDB通过框架层和sqlcipher源码优化,使其更高效的表现 ◇ 完整,WCDB覆盖了数据库相关各种场景的所需功能 ◆ 地址: https://github.com/Tencent

1.1K10

微信移动端数据库组件 WCDB 系列:iOS 基础篇(一)

它包含三个模块: WCDB-iOS/Mac WCDB-Android 数据库损坏修复工具WCDBRepair目前正在筹备开源中。背景对于iOS开发者来说,数据库的技术选型一直是个令人头痛的问题。...除此之外,WCDB还提供了许多可选的宏,用于定义数据库索引、约束等,如: WCDB_PRIMARY用于定义主键 WCDB_INDEX用于定义索引 WCDB_UNIQUE用于定义唯一约束 WCDB_NOT_NULL...WINQ(WCDB Integrated Query,音'wink'),即WCDB集成查询,是将自然查询的SQL集成到WCDB框架中的技术,基于C++实现。...而高级用法则扩展了WCDB的功能和用法。 由于篇幅所限,本文只介绍了WCDB最表层的功能。该系列接下来还将深入介绍WCDB的架构和原理,分享WCDB高并发的解决方案、WINQ实现中的思考等等。...系列:Android 特性篇(四)

5.6K31

从FMDB到WCDB、微信团队怎么说?

WCDB背景 ----       自己初次见到WCDB是微信开发团队公众号在今年五月份推送的一篇文章中(开发者团队的微信号上面图片中有,值得大家关注一下),那时候就说在筹备着WCDB的开源,觉得很是新奇...,在两个多月前WCDB开源了!...自己是最近才有时间看的WCDB,总结一下自己的理解和学习的东西,WCDB是微信团队开源的支持Android,也支持iOS,那当然也是会支持macOS的一个移动端数据库框架,FMDB估计做iOS的99.99%...的都知道,就像Android开发中使用LitePal一样,都是在SQLite的基础上封装的移动数据库框架,WCDB是微信团队提供一个高效、易用、完整的移动端存储方案。 ...它包含三个模块:       1、WCDB-iOS/Mac       2、WCDB-Android       3、数据库损坏修复工具WCDBRepair iOS 数据库框架对比分析     ----

2K90
领券