关于LevelDB的资料网上还是比较丰富的,如果你尚未听说过LevelDB,那请稍微预习一下,因为RocksDB实际上是在LevelDB之上做的改进.本文主要侧重在架构上对RocksDB对LevelDB改进的地方做个简单介绍并添加一些个人的看法,更详细的信息读者可参考其官网:http://rocksdb.org/ RocksDB是在LevelDB原来的代码上进行改进完善的,所以在用法上与LevelDB非常的相似.如下,就是简单的把原来Leveldb信息替换为Rocksdb,从继承的角度看,Roc…
https://zhuanlan.zhihu.com/p/22165241 今天介绍一个来自俄罗斯的凶猛彪悍的分析数据库:ClickHouse,它是今年6月开源,俄语社区为主,好酒不怕巷子深. 本文内容较长,分为三个部分:走马观花,死而后生,遥指杏花村:第一章,走马观花,初步了解一下基本特性:第二章,死而后生,介绍ClickHouse的技术架构演化的今生前世:第三章,遥指杏花村,介绍一些参考资料,包括一些俄文资料. 第一章,走马观花 俄罗斯的‘百度’叫做Yandex,覆盖了俄语搜索超过68%的市…
RocksDB介绍 RocksDB简介 RocksDB是基于C++语言编写的嵌入式KV存储引擎,它不是一个分布式的DB,而是一个高效.高性能.单点的数据库引擎.它是由Facebook基于Google开源的kv存储LevelDB开发开发.RocksDB使用LSM存储引擎.它针对不同的生产环境进行调优,可以直接使用内存.也可以使用Flash.或者用硬盘或者HDFS.而且支持不同的压缩算法,有一整套的工具用于生产.调试使用.RocksDB是一种嵌入式.KV型.持久化的存储. 使用嵌入式的数据存储原因有…
​ Book2发布:能重拾笔记本行业的信心吗?" title="彪悍的Surface Book2发布:能重拾笔记本行业的信心吗?"> ​  在智能手机全面普及之后,就不断传出PC销量下滑的论调.而随后PC市场的表现也一语成箴,组装机.品牌机.笔记本电脑.工作站等都有不同程度的下滑.与此同时,每个市场还展现出不同的发展态势.笔记本电脑市场更是风云变幻,一场接一场的王者争霸战接连上演.一款又一款定位更加细分的产品层出不穷--而从大方向上来看,笔记本电脑厂商还在努力找回着之前…
上一篇文章中写到用promise时应注意的问题,这一篇文章继续介绍一个可以和axios库配合的好工具: axios-mock-adapter.axios-mock-adapter可以用来拦截http请求,并模拟响应,使用起来也很简单,比如你想模拟下服务器返回个500错误,你可以这么写: import axios from 'axios' import MockAdapter from 'axios-mock-adapter' const mock = new MockAdapter(reques…
我们已经学习了怎样创建一个简单的Monad, MaybeMonad, 并且知道了它如何通过在 Bind函数里封装处理空值的逻辑来移除样板式代码. 正如之前所说的,我们可以在Bind函数中封装更复杂的逻辑. 下面给出一个更复杂更典型的Monad例子,一个解析器Monad. 在本篇将要介绍一个解析器,在之后的篇幅里将会把解析器转换成一个 Monad. 首先我们思考解析器要完成什么功能,它接受一个输入,通常是一些文本,然后输出期望的结果. 因此一个CSV解析器将会接受一个文本文件,输出行和列的数据,并…
背景 入编程界6年来,大大小小的安全漏洞是真滴听了不少,xxx通过日志入侵了,xxxx通过请求入侵了,等等等等. 近期fastJson又报安全漏洞,敢巧自己又"被"跳槽到了新公司,看着手里热腾腾的"毫无注释.毫无代码洁癖可言的"项目,头大,结果发现使用的json还正好是fastjson.且是fastjson漏洞版本,更是让我孰不可忍. github --> fastjson --> 解决方案 --> 到项目解决. 赶巧,就随手看了下最近周榜上的受欢…
介绍一个非常好用的跨平台C++开源框架:openFrameworks 简介 首先需要说明的一点是: openFrameworks 设计的初衷不是为计算机专业人士准备的, 而是为艺术专业人士准备的, 就像 Processing 一样. 概述 openFrameworks 是一个功能强大, 上手超级简单的 C/C++ 开源框架. 它集成封装了很多常用的库, 诸如: OpenGL.GLEW.GLUT.libtess2.cairo - 用于处理图形: rtAudio.PortAudio.OpenAL.K…
文件系统:介绍一个高大上的东西 让编程改变世界 Change the world by program 接下来我们会介绍跟Python的文件相关的一些十分有用的模块.模块是什么?不知大家对以下代码还有没有印象: [codesyntax lang="python"] >>> import random >>> secret = random.randint(1,10) [/codesyntax] 没错,这是出现在我们刚开始的时候介绍的一个文字小游戏里的…
在网页客户端,我们经常会遇到读取或者设置cookie的情况,如果用纯生的js我们可能会遇到一些兼容性带来的麻烦,这里给大家介绍一个比较实用jquery操作cookie的插件,插件的源代码如下: jQuery.cookie = function(name, value, options) { if (typeof value != 'undefined') { options = options || {}; if (value === null) { value = ''; options =…