网络服务器软件开发/中间件开发,关注ACE/ICE/boost

C++博客 首页 新随笔 联系 聚合 管理
  152 Posts :: 3 Stories :: 172 Comments :: 0 Trackbacks

2011年9月26日 #

http://thrift.apache.org/

主要特色:
1.代码设计的优雅,小巧,进一步定制能力强
2.支持的语言众多,目前是见过的支持语言最多的
3.不仅有序列化机制,还带有rpc功能。
4.等等

如果说只是用于服务端内部,protobuf在在序列化方面由于thrift,ice在rpc方面远胜过thrift,但如果想在客户端和服务端使用的话,thrift的小巧优势就非常明显了。thrift既可以用在客户端和服务端之间,也可以用于服务端内部之间,对于打造一个统一平台是非常适合的.
posted @ 2011-09-26 01:31 true 阅读(1383) | 评论 (1)编辑 收藏

2011年8月28日 #

多角度思考问题,主动分担,有效沟通,应急处理,合作大于挑战
posted @ 2011-08-28 12:02 true 阅读(281) | 评论 (0)编辑 收藏

2011年5月29日 #

 http://zthread.sourceforge.net/  
 这个库设计的很小巧,优雅,符合我个人的审美观,linux下通过编译时会出现错误,主要是由于gcc的老语法所致,由于库的作者2005年停止了更新,所以这一块一直没改,这里提供一个patch,其实很简单,就是替换了下几个语句,内容为:     
#(0) put this file under top ZThread directory,such as ZThread-2.3.2/,and
#(
1) cd ZThread-2.3.2
#(
2) ./zthread-patch.sh  (chmod +x zthread-patch.sh if necessary)
#(
3) ./configure
#(
4) make

sed 
-'/if(!isDisabled())/s/^.*/    if(!this->isDisabled())/' ./include/zthread/Guard.h
sed 
-'/waiterArrived(self)/s/^.*/      this->waiterArrived(self);/' ./src/MutexImpl.h
sed 
-'/waiterDeparted(self)/s/^.*/      this->waiterDeparted(self);/' ./src/MutexImpl.h
sed 
-'/ownerAcquired(self)/s/^.*/      this->ownerAcquired(self);/' ./src/MutexImpl.h
sed 
-'/ownerReleased(impl)/s/^.*/      this->ownerReleased(impl);/' ./src/MutexImpl.h
posted @ 2011-05-29 17:44 true 阅读(513) | 评论 (0)编辑 收藏

2011年5月25日 #

1.sudo /usr/sbin/tcpdump -i eth1 -n port 7999

2.sudo /usr/sbin/tcpdump -i any -X -n -s0 port 7999

3.sudo /usr/sbin/tcpdump -i any -X -n -s0 dst port  7999 and ip[39]==0 and ip[40]==2
最后的 ip[39]==0 and ip[40]==0是过滤条件,含义为,从ip头开始算起的第39个字节为十进制0,第40个字节为十进制2

posted @ 2011-05-25 18:53 true 阅读(382) | 评论 (0)编辑 收藏

2011年4月6日 #

Compression or encryption Uncompression or decryption
AES_ENCRYT() AES_DECRYPT()
COMPRESS() UNCOMPRESS()
ENCODE() DECODE()
DES_ENCRYPT() DES_DECRYPT()
ENCRYPT() Not available
MD5() Not available
OLD_PASSWORD() Not available
PASSWORD() Not available
SHA() or SHA1() Not available
Not available UNCOMPRESSED_LENGTH()
从文档中的描述来看,mysql是支持AES和DES的
posted @ 2011-04-06 14:04 true 阅读(286) | 评论 (0)编辑 收藏

2011年1月29日 #


netbean对中文的支持力度是很强的,http://netbeans.org/kb/docs/php/debugging_zh_CN.html,需要安装xdebug,http://www.xdebug.org/index.php,感觉还可以
posted @ 2011-01-29 01:57 true 阅读(699) | 评论 (0)编辑 收藏

2011年1月24日 #

   有个存储过程内容如下:
   
public static int InsertProfile(Profile model)
{
    
try
    
{            
    DbCommand dbc 
= m_Db.GetStoredProcCommand("Profile_Insert");
    
    m_Db.AddInParameter(dbc, 
"@pSourceID", DbType.String, model.SourceID);
    m_Db.AddInParameter(dbc, 
"@pName", DbType.String, model.Name);               
    m_Db.AddInParameter(dbc, 
"@pAddress", DbType.String, model.Address);
    m_Db.AddInParameter(dbc, 
"@pCity", DbType.String, model.City);                       
    m_Db.AddInParameter(dbc, 
"@pTel", DbType.String, model.Tel);
    m_Db.AddInParameter(dbc, 
"@pCode", DbType.String, model.code);               
    
    
object obj = m_Db.ExecuteScalar(dbc);
    
if (obj != null)
    
{
        
return int.Parse(obj.ToString());
    }

    
else
    
{
        
return 0;
    }

    }

    
catch (System.Exception e)
    
{               
    
return 0;
    }

}

上面的AddInParameter的参数顺序和Profile_insert在数据库中定义的参数顺序不同。之前都能正常工作,上周六突然发现不行了,实际写入表的时候,顺序乱掉了,直到今天才找到解决方案:把AddIn的参数顺序和声明的参数保持一致。这个问题太奇怪了。大概环境是,表的存储引擎为MyISAM,上百万记录,mysql部署在ubuntu,mysql版本5.1.53。
      最开始的思路是:
      1. 代码问题      
      2. DbCommand dbc = m_Db.GetStoredProcCommand("Profile_Insert");的多线程调用
      3. mysql的配置问题
思维定势导致没怀疑过参数顺序,上面存储过程是为说明问题而临时改动的,实际系统中的存储过程和业务有很强的关联,不方便介绍.
      
posted @ 2011-01-24 12:38 true 阅读(858) | 评论 (0)编辑 收藏

2011年1月22日 #

      在手册的"The Ice Run Time in Detail"的"The Ice Threading Model"章节有详细介绍,摘录常用部分:
      1.每个communicator会创建两个线程池:分别命名为Ice.ThreadPool.Client和Ice.ThreadPool.Server
      2.name.Size:初始线程池的数量,默认为1
      3.name.SizeMax:线程池中最大线程数量,默认为1。线程的数量在Size和SizeMax之间动态调整
      4.name.SizeWarn:线程池的警戒线,超过此值,Ice运行时会输出警告日志信息
      5.name.StackSize:线程池中线程的栈的大小,单位字节,默认为OS的默认值
      6.name.Serialize:大于零表示序列化同一个连接的所有请求,默认为不序列化,即无序的。
     7.默认情况下,所有adapter共享communicator的线程池,但也可以根据具体情况指定单独的线程池,暂时用不到,不多解释了
posted @ 2011-01-22 16:18 true 阅读(2512) | 评论 (0)编辑 收藏

平时每天只有一班车,08:10出发,春运的最后几天都是加车的,但票价从176涨到190,一般正常的车去车站排队还是可以买到的,但是通过电话预定几乎打不进去,总得来说,票是肯定能买到的.
posted @ 2011-01-22 13:59 true 阅读(300) | 评论 (0)编辑 收藏

2011年1月19日 #

        下载链接http://www.microsoft.com/downloads/en/details.aspx?FamilyID=abc59783-89de-4adc-b770-0a720bb21deb
msi安装文件才3.9M,非常不错,小巧适合开发用途,下载完毕,安装时提示,.NET Framework 需要 >= 4.0,我使用的是VS2008,版本不够,突然想到这不就是为了推广VS2010吗?公司开发机用不了,家里的笔记本还是可以用的,以前都是用apache,看来也有必要安装IIS了。

posted @ 2011-01-19 12:24 true 阅读(521) | 评论 (0)编辑 收藏

仅列出标题  下一页