scylladb 介绍 介绍ScyllaDB是用C++重写的Cassandra,其官网宣称其每节点每秒可处理100万TPS。ScyllaDB完全兼容Apache Cassandra,拥有比Cassandra多10X倍的吞吐量,并降低了延迟。ScyllaDB是性能优异的NoSQL列存储数据库。 ScyllaDB在垃圾收集或者Compaction的时候不需要暂停(但是通过压测和Longevity测试发现Compaction的 2020-08-31 数据库
scylladb 驱动使用方法 本文主要总结下 scylladb 的c/c++驱动使用详细方法与步骤,便于快速进行开发。 1. 基本使用步骤创建 cluster 创建方法: CassCluster * cluster = cass_cluster_new(); cass_cluster_free(cluster); //不用时释放申请的资源 对cluster进行参数设置 根据需要对cluster 进行各种相关参数的设置,主要进 2020-08-31 数据库
typedef 精髓 本文转载自《https://tonybai.com/2008/05/02/also-talk-about-typedef/》 核心阐述C语言语法简单,但内涵却博大精深;如果在学习时只是止步于表面,那么往往后期会遇到很多困难。typedef是C语言中一个很好用的工具,大量存在于已有代码中,特别值得一提的是:C++标准库实现中更是对typedef有着大量的使用。但很多初学者对其的理解仅局限于:type 2020-08-29 软件开发 c++ c
Linux中线程与CPU核的绑定 不管是线程还是进程,都是通过设置亲和性(affinity)来达到目的。对于进程一般是使用 sched_setaffinity 这个函数来实现. 与进程的情况相似,线程亲和性的设置和获取主要通过下面两个函数来实现: 12int pthread_setaffinity_np(pthread_t thread, size_t cpusetsize, const cpu_set_t *cpuset);in 2020-08-28 软件开发 c++ c
Python 内置的SimpleHTTPServer使用指南 Python内置了一个简单的HTTP服务器,只需要在命令行下面敲一行命令,一个HTTP服务器就起来了:(假设我们需要共享我们的目录 /home/haoel 而IP地址是192.168.1.1) 12$ cd /home/haoel$ python -m SimpleHTTPServer 8888 后面的8888端口是可选的,不填会采用缺省端口8000。注意,这会将当前所在的文件夹设置为默认的Web 2020-08-27 devops
DNS协议介绍 惯例首选name语法DNS规范试图使构建的域名规则尽可能通用。这一想法的精髓是任何现有对象的名称经过尽量小的改变都能表示为域名。但是在为对象分配域名时,谨慎的用户将选择即满足域名系统规则,又满足对象任何现有规则的名称,无论这些规则是公开出版的还是由现有程序暗示的。如:当命名邮件域时,用于应当即满足本备忘录的规则,又满足RFC-822宏的规则。创建新的主机名时,应当遵守旧的HOSTS.TXT规则。这 2020-08-26 软件开发 linux dns
DNS基础 DNS 基础内容什么是 DNS?DNS 是一个应用层协议,域名系统 (DNS) 的作用是将人类可读的域名 (如,www.example.com) 转换为机器可读的 IP 地址 (如,192.0.2.44)。DNS 协议建立在 UDP 或 TCP 协议之上,默认使用 53 号端口。客户端默认通过 UDP 协议进行通讯,但是由于广域网中不适合传输过大的 UDP 数据包,因此规定当报文长度超过了 512 2020-08-26 软件开发 linux dns
suqid 存储模型研究 一、概述squid 从3.5.0开始移除了之前的coss存储机制,改为支持aufs, diskd, rock, ufs四种存储机制。 至于为什么去掉coss机制有待后续调研确定。 当前先研究下已有的几种类型 ufs 存储机制ufs是Squid存储格式中一直存储的著名的存储格式。UFS 即 Unix Filesystem 的缩写使用方法: cache_dir ufs Directory-Nam 2020-08-22 高性能代理软件 squid
pstack 跟踪进程栈 此命令可显示每个进程的栈跟踪,且可显示每个线程的栈状态。pstack 命令必须由相应进程的属主或 root 运行。可以使用 pstack 来确定进程挂起的位置。此命令允许使用的唯一选项是要检查的进程的 PID。请参见 proc(1) 手册页。 这个命令在排查进程问题时非常有用,比如我们发现一个服务一直处于work状态(如假死状态,好似死循环),使用这个命令就能轻松定位问题所在;可以在一段时间内,多 2020-08-20 软件开发 linux tools
strace 跟踪进程中的系统调用 strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。 1. 输出参数含义每一行都是一条系统调用,等号左边是系统调用的函数名及其参数,右边是该调用 2020-08-20 软件开发 linux tools