- 博客(9)
- 资源 (10)
- 收藏
- 关注
原创 RCF跨语言RPC实现方法
<br /> RCF本身定位为一个C++的分布式系统开发框架,但是通过对protobuf的支持,使其在必要时也能实现跨语言调用.<br />通过定义RCF_USE_PROTOBUF开启对google Protocol Buffers的支持,protobuf生成的C++类可以在RCF里面直接使用,按照protobuf的方式来串行化和反串行化. <br /> RCF遵循protobuf定义了一套消息协议, 称为PB-generated message protocol,其他语言实现的一端,只要按照这
2010-12-23 17:55:00 4477
原创 Amazon EC2 取得自己的外部IP和域名
wget -q -O /tmp/public-ip http://169.254.169.254/latest/meta-data/public-ipv4wget -q -O /tmp/public-hostname http://169.254.169.254/latest/meta-data/public-hostname
2010-12-22 14:40:00 5701
原创 RCF:一个相当不错的C++分布式RPC框架
<br /> RCF(远程调用框架)是一个可以移植的C++进程间通信框架,使用C++语言特性,提供了一个简单高效的编写分布式C++软件的途径。RCF利用编译时多态清晰分开了接口和实现. 和传统的RPC框架如CORBA,DCOM,.NETRemoting,WCF,WS-*,等所支持的面向对象方式不一样,RCF提供了一种面向接口的方式。RCF让你明确指定接口和数据,而不是产生复杂的对象模型和不透明的串行化代码,这样你能自由实现自己的对象模型。<br /><br /> RCF的其他优势:<br />·
2010-12-21 11:14:00 14191
原创 c++的几个RPC库
<br />1. RCF: 纯c++的RPC, 不引入IDL, 大量用到boost,比较强大.<br />2. casocklib: protobuf + asio 较完善实现<br />3. eventrpc: protobuf + libevent 较完善实现<br />4. evproto: protobuf + libevent 简单实现<br />5. febird:同样无IDL的c++ RPC,自己实现了串行化和网络IO.<br />6. libHttp, xmlrpc 都是xml封装的RPC
2010-12-20 17:56:00 9368
原创 udt代码初探
<br />花了一天时间分析了一下UDT的代码,总体感觉代码不是很高深,下面是一些总结<br />一. 报文发送<br />1.CSndQueue::worker中调用CChannel::sendto发送数据报文。<br />2.CSndQueue::sendto中调用CChannel::sendto发送其他报文, 种类较多主要有:<br />1)CUDT::connect中调用CSndQueue::sendto发送建立连接请求。<br />2) CUDT::sendCtrl中调用CSndQueue::se
2010-12-16 18:04:00 7845 4
原创 boost.thread时间的设置
<br />boost.thread时间一般有两种指定方式:<br />1. 指定超时的时间点<br />boost::xtime xt;<br />boost::xtime_get(&xt, boost::TIME_UTC); // initialize xt with current time<br />xt.nsec += 1000*1000*10; // change xt to next second<br /> boost::thread::sleep(xt); // 休眠10
2010-12-13 17:29:00 1452
转载 从exception派生自己的异常类
<br />exception类的原型:<br />请注意观察上述类的层次结构,可以看出,标准异常都派生自一个公共的基类exception。基类包含必要的多态性函数提供异常描述,可以被重载。<br />class exception<br />{<br /> public:<br /> exception() throw();<br /> exception(const exception& rhs) throw();<br /> exception& operator=(const exceptio
2010-12-11 11:11:00 1228
转载 conversion/lexical_cast
<br />1、字符串->数值 <br />C++代码<br />#include <boost/lexical_cast.hpp> <br />#include <iostream> <br />int main() <br />{ <br /> using boost::lexical_cast; <br /> int a = lexical_cast<int>("123"); <br /> double b = lexica
2010-12-11 11:07:00 715
原创 UDT中select异常
<br />select, selectEx的参数采用了stl的容器,在DLL方式下,会发生异常。<br />select传入的容器内的对象在DLL内部发生释放操作时,会抛出异常,因为主程序和DLL申请的内存不能互相传递释放。<br />同样的问题是selectEx传出的容器对象是在DLL内部分配的,主程序最后析构释放的时候会异常。<br />因此要使用select,selectEx时,重新编译成静态库会比较合适。
2010-12-02 16:16:00 1504
H264视频编码标准英文原版
2020-10-20
SlickEdit配置.zip
2020-03-09
ice-demos-3.7.0
2017-12-05
ice-demos-3.6.4
2017-12-05
zeroc ice pdf文档
2017-12-05
jsoncpp-1.8.0
2017-11-15
jrtplib-3.11.1
2017-11-15
opencv-3.3.1.zip
2017-10-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人