自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

webrtc

hello

  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 计算机原理-w位无符号和有符号位数最大值和最小值公式

无符号整型是B2U有符号整型是B2T其中 2TMin+1=UMax

2016-01-27 21:43:59 1348

转载 原始版本的murmurhash2算法

原始版本的murmurhash2算法(Google Code 的 Murmurhash 开源项目主页上的 Murmurhash2)uint32_t MurmurHash2 ( const void * key, int len, uint32_t seed ){ // 'm' and 'r' are mixing constants generated offline. // The

2016-01-27 13:51:37 3911

转载 分布式一致性算法:Paxos (学习总结)

1. 概述Google Chubby 的作者Mike Burrows:“There is only one consensus protocol, and that's Paxos”-all other approaches are just broken versions of Paxos意即:世界上只有一种一致性算法,那就是Paxos(帕克索斯),所有其它一致性算法都是Paxos算法的

2016-01-22 15:26:55 913

转载 Linux IO 多路复用详解

假设你是一个机场的空管, 你需要管理到你机场的所有的航线, 包括进港,出港, 有些航班需要放到停机坪等待,有些航班需要去登机口接乘客。你会怎么做?最简单的做法,就是你去招一大批空管员,然后每人盯一架飞机, 从进港,接客,排位,出港,航线监控,直至交接给下一个空港,全程监控。那么问题就来了:很快你就发现空管塔里面聚集起来一大票的空管员,交通稍微繁忙一点,新的空管员就已

2016-01-22 13:47:32 621

转载 墨菲定律

1、任何事都没有表面看起来那么简单;2、所有的事都会比你预计的时间长;3、会出错的事总会出错;4、如果你担心某种情况发生,那么它就更有可能发生。“墨菲定律”的根本内容是“凡是可能出错的事有很大几率会出错”,指的是任何一个事件,只要具有大于零的机率,就不能够假设它不会发生。

2016-01-21 21:33:34 496

原创 redis事务详解和例子

1、事务开始命令:MULTI          ;标记一个事务的开始,事务块的多条命令会顺序入队列,这个队列称为事务块,最后由EXEC命令原子执行。127.0.0.1:6379> MULTIOK127.0.0.1:6379> set abc 1234QUEUED127.0.0.1:6379> set def 456QUEUED127.0.0.1:6379> set ij

2016-01-21 10:40:57 453

原创 redis键空间通知消息详解和例子

接收键空间通知有2种情况:1、一种是接收指定键值所执行的命令,在配置文件中体现是:   notify-keyspace-events K[命令集]               ;K代表是监听键值,监听其中命令集包括了:g : 常规命令 del expire rename等等$:  字符串命令l : 列表命令s:集合命令h:hash命令z:有序集合命令x :超时命令

2016-01-20 16:49:25 4483

转载 redis持久化介绍

持久化(persistence)本文是 Redis 持久化文档 的中文翻译。这篇文章提供了 Redis 持久化的技术性描述,推荐所有 Redis 用户阅读。要更广泛地了解 Redis 持久化,以及这种持久化所保证的耐久性(durability),请参考文章 Redis persistence demystified (中文)。Redis 持久化Redis 提

2016-01-20 09:52:02 377

原创 redis常见操作命令-pub/sub

1、订阅一个或者多个频道:SUBSCRIBE channel1  channe2 [...]27.0.0.1:6379> SUBSCRIBE first secondReading messages... (press Ctrl-C to quit)1) "subscribe"2) "first"3) (integer) 11) "subscribe"2) "secon

2016-01-19 17:42:59 858

原创 redis常见操作命令-sortedset

1、将1个或者多个member元素及其score值添加到有序集合里面:ZADD key score member [[score member]  [score member] ] ;如果已经存在这个成员,就更新这个member的score值,并从新插入这个member元素,来包装该member在正确的位置上。score可以是整数或者双精度浮点数,如果key不存在,就创建一个空的有序集合并且执行Z

2016-01-19 14:56:25 498

原创 c语言实现二分查找算法

#include   2 //二分查找算法  3   4 int binary(int* arr, int value, int length)  5 {  6         int left,right,mid;  7         left = 0;  8         right = length - 1;  9         mid = (left+

2016-01-18 17:45:21 1774

原创 redis常见操作命令-set

1、将1个或者多个元素添加到集合:SADD key value [value ...]  ;如果key不存在就创建一个,如果value存在就不忽略; 如果key不是集合就返回错误;2、显示集合里面的所有元素:SMEMBERS key127.0.0.1:6379> keys *(empty list or set)127.0.0.1:6379> SADD test abc def

2016-01-18 14:37:26 694

原创 redis常见操作命令-list

1、 将1个或者多个的value压入key的表头:LPUSH key value [value ...]  127.0.0.1:6379> LPUSH list abc(integer) 1127.0.0.1:6379> LGET list(error) ERR unknown command 'LGET'127.0.0.1:6379> LRANGE 0 -1(error)

2016-01-18 10:40:22 992

原创 redis常见操作命令-hash

1、将hash表中key中的域filed的值设置为value:HSET value key filed value    ;如果key不存在那么创建一个新的hash表,并且进行HSET,如果filed已经存在就进行覆盖2、获取hash表中key中的域filed的值:127.0.0.1:6379> HSET website google "www.google.com"(integer)

2016-01-18 09:27:34 5791

原创 redis常见操作命令-string

在key对应的value后面追加一个字符串:APPEND key 字符串  #返回的是最新字符串长度,如果字符串不存在就相当于set了一个字符串127.0.0.1:6379> keys *1) "bb"2) "cc"127.0.0.1:6379> get bb"234"127.0.0.1:6379> APPEND bb woaini(integer) 9127.0.

2016-01-16 10:08:09 570

原创 redis常见操作命令-key

常规:获取所有的key:   keys *获取数据大小:   dbsize

2016-01-15 16:50:00 1082

转载 webrtc客户端与TURN和信令服务器通讯流程图

WebRTC是HTML5支持的重要特性之一,有了它,不再需要借助音视频相关的客户端,直接通过浏览器的Web页面就可以实现音视频对聊功能。而且WebRTC项目是开源的,我们可以借助WebRTC源码快速构建自己的音视频对聊功能。无论是使用前端JS的WebRTC API接口,还是在WebRTC源码上构建自己的对聊框架,都需要遵循以下执行流程: 上述序列中,WebRTC并不提供Stun服务

2016-01-14 09:41:22 9853 1

转载 unix设计原则

1. 清晰原则。代码要写得尽量清晰,避免晦涩难懂。清晰的代码不容易崩溃,而且容易理解和维护。重视注释。不为了性能的一丁点提升,而大幅增加技术的复杂性,因为复杂的技术会使得日后的阅读和维护更加艰难。2. 模块原则。每个程序只做一件事,不要试图在单个程序中完成多个任务。在程序的内部,面向用户的界面(前端)应该与运算机制(后端)分离,因为前端的变化往往快于后端。3. 组合

2016-01-13 13:44:46 860

原创 c++ g++运行出现Enable multithreading to use std::thread: Operation not permitted解决

使用了c++11的thread库,运行出现了:terminate called after throwing an instance of 'std::system_error'  what():  Enable multithreading to use std::thread: Operation not permittedAborted解决:g++ -std=c++1

2016-01-11 22:30:29 7765 2

转载 什么是POSIX

POSIX 表示可移植操作系统接口(Portable Operating System Interface ,缩写为 POSIX ),POSIX标准定义了操作系统应该为应用程序提供的接口标准,是IEEE为要在各种UNIX操作系统上运行的软件而定义的一系列API标准的总称,其正式称呼为IEEE 1003,而国际标准名称为ISO/IEC 9945。POSIX标准意在期望获得源代码级别的软件可移植性

2016-01-11 21:50:36 2477

转载 c++11线程sleep

std::this_thread名字空间在前面的例子中,还用到了一个this_thread::get_id()函数用以获取当前线程的tid,std::this_thread名字空间提供了如下函数以管理当前线程:yieldget_idsleep_forsleep_until基本上从名字里就可以猜出它们的功能了。以其中的sleep_for函数为例

2016-01-11 09:39:13 23205

redis在docker中实战

2016年最新docker安装教程,以及redis在docker中实战讲解

2016-02-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除