- 博客(17)
- 资源 (1)
- 收藏
- 关注
原创 掌握git
掌握git非常好的资料:1. 廖雪峰: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b0002. 猴子都能懂得git入门: http://backlogtool.com/git-guide/cn/stepup/stepup1_1.html
2015-07-31 01:34:01 678
转载 使用Thrift RPC编写程序
使用Thrift RPC编写程序1. 概述本文以C++语言为例介绍了thrift RPC的使用方法,包括对象序列化和反序列化,数据传输和信息交换等。本文采用了一个示例进行说明,该示例主要完成传输(上报日志或者报表)功能,该示例会贯穿本文,内容涉及thrift定义,代码生成,thrift类说明,client编写方法,server编写方法等。关于Thrift架构分析
2015-07-27 00:09:42 771
转载 Apache Thrift设计概要
Apache Thrift设计概要1. OverviewApache Thrift 的可赞之处是实现了跨超多语言(Java, C++, Go, Python,Ruby, PHP等等)的RPC框架,尽力为每种语言实现了相同抽象的RPC客户端与服务端。简洁的四层接口抽象,每一层都可以独立的扩展增强或替换,是另一个可赞的地方。最后,二进制的编解码方
2015-07-24 00:54:21 931
原创 集群AG上拉取集群内其他机器的文件
集群AG上拉取集群内其他机器的文件前提是:这个文件是在集群每个机器的相同位置,而且文件名是一样的。举个例子: iplist_tubo是集群机器列表。 /home/tops/bin/pssh -i -h iplist_tubo "cat /apsara/chenglin/testing/run2/proxy_rw_qps_test_60_40_20_100
2015-07-23 17:22:44 1177
原创 让程序在screen模式下运行
让程序在screen模式下运行 screen -S yourname -> 新建一个叫yourname的session, 然后输入你要执行的命令 screen -ls -> 列出当前所有的session screen -r yourname -> 回到yourname这个session screen -d yourname -
2015-07-23 17:19:50 1037
原创 HTTP协议:pipeline、持久连接、非持久连接
HTTP协议:pipeline、持久连接、非持久连接1. 简介1.1 定义 1. 非持久连接:每个连接处理一个请求-响应事务。 2. 持久连接:每个连接可以处理多个请求-响应事务。 持久连接情况下,服务器发出响应后让TCP连接继续打开着。同一对客户/服务器之间的后续请求和响应可以通过这个连接发送。
2015-07-21 00:44:16 9994
转载 使用 libevent 和 libev 提高网络应用性能——I/O模型演进变化史
使用 libevent 和 libev 提高网络应用性能——I/O模型演进变化史 看到一篇非常好的介绍I/O模型演变的博文。 请参见链接:http://blog.csdn.net/hguisu/article/details/38638183
2015-07-12 23:44:56 821
原创 enable_shared_from_this解析
enable_shared_from_this解析 enable_shared_from_this,是一个以其派生类为模板类型实参的基础模板,继承它,this指针就能变成shared_ptr。1. 什么时候该使用enable_shared_from_this模板类 在看下面的例子之前,简单说下使用背景,单有一个类,某个函数需要返回当前对象的
2015-07-12 23:27:52 5789 4
原创 阿里中间件开源产品
阿里中间件开源产品下面给出阿里中间件部分开源产品:diamond:http://code.taobao.org/svn/diamond/trunk/Dubbo:https://github.com/alibaba/dubbometaq:https://github.com/alibaba/metaqsqlautoreview:https://github.com/t
2015-07-12 19:43:52 1927
原创 muduo事件循环类图简介
muduo事件循环类图简介1. 总体类图 下图摘自于网上资源:注意:黑色菱形:组合;白色菱形:聚合;白色三角形:继承;实线:关联2.
2015-07-11 22:50:10 1332
原创 UML时序图总结
UML时序图总结时序图简介首先,时序图用来表示用例中的行为顺序,当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或者状态机中引起转换的事件;其次,时序图展示对象之间的交互,这些交互是指在场景或用例的事件流中发生的。时序图属于动态建模;最后,时序图的重点在消息序列上,也就是说,描述消息是如何在对象间发送和接收的。表示了对象之间传递消息的时间顺序。还有,
2015-07-11 19:08:08 5332
转载 [Mark]分布式存储必读论文
[Mark]分布式存储必读论文分布式存储泛指存储存储和管理数据的系统, 与无状态的应用服务器不同, 如何处理各种故障以保证数据一致,数据不丢, 数据持续可用, 是分布式存储系统的核心问题,也是极具挑战的问题。 本文总结了分布式存储领域的经典论文, 供大家参考。The Google File System. Sanjay Ghemawat, Howard Gobioff,
2015-07-11 16:23:34 2339
转载 select、poll、epoll之间的区别总结
select、poll、epoll之间的区别总结 select,poll,epoll都是IO多路复用的机制。I/O多路复用就通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的,而异步
2015-07-07 01:11:34 623
原创 boost::circular_buffer简介
boost::circular_buffer简介很多时候,我们需要在内存中记录最近一段时间的数据,如操作记录等。由于这部分数据记录在内存中,因此并不能无限递增,一般有容量限制,超过后就将最开始的数据移除掉。在stl中并没有这样的数据结构,一般需要我们自己构造,常用方法如下:用list构造,超过后把数据头移除用vector构造,超过后把数据头移除用数组
2015-07-06 00:57:44 858
转载 常见多线程与并发服务器设计方案举例
常见多线程与并发服务器设计方案举例一、3点基础知识1、一个主机的端口号为所有进程所共享,但普通用户进程绑定bind不了一些特殊端口号如20、80等。 多个进程不能同时监听listen同一个端口,会失败。当然父进程可以先listen然后fork多个子进程,多个子进程都可以accept这个sock,即抢夺式响应(惊群效应)。 关注4元组是否能唯一确
2015-07-05 23:45:05 1052
原创 HTTP长连接与短连接
HTTP长连接与短连接1. HTTP协议与TCP/IP协议的关系HTTP的长连接和短连接本质上是TCP长连接和短连接。HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠的传递数据包,使在网络上的另一端收到发端发出的所有包,并且顺序与发出顺序一致。TCP有可靠,面向连接的特点。
2015-07-05 22:12:01 1599
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人