代码改变世界

阅读排行榜

OCCI编程接口介绍

2012-01-09 15:43 by j.cheen, 5868 阅读, 收藏,
摘要: OCCI简介Oracle® C++ Call Interface (OCCI) 是一套应用程序编程接口,它允许C++程序与一个或者多个Oracle数据库进行交互.OCCI给予你强大的数据库操作能力,比如说执行SQL,处理存储过程等.OCCI主要是提供给有以下需求的用户:希望借助系统内存和网络连接的合理使用,开发高性能的应用程序.开发可伸缩的应用程序,以满足数据库用户和请求的不断增长.支持访问数据库对象.简化用户认证和密码管理.支持多层认证模式两层C/S环境或者多层环境下,动态连接管理和事务管理的一致性接口.注: OCCI不支持Non-Blocking(非阻塞)模式.由于OCCI是以动 阅读全文

在window下编译google GYP

2012-04-22 16:46 by j.cheen, 2439 阅读, 收藏,
摘要: gyp 是什么?google如是说:GYP can Generate Your Projects.比如说,你下载了google的开源项目,你需要用VC编译,问题是,你下载的源码包里没有VC的sln等项目文件,GYP就是做这事的,他类似于cmake等工具,能根据特定的配置文件,生成一些IDE需要的配置文件(即工程文件).下载python 2.x版本,我测试是用的2.73,并安装. 从google项目的svn签出源代码,假设保存到了D:\_open_source\google_gyp 在gyp项目根目录下运行 python.exe setup.py install gyp安装完成,相关文件和脚本会 阅读全文

半同步半异步(HSHA)模式的服务器模型

2011-12-05 05:47 by j.cheen, 2211 阅读, 收藏,
摘要: 半年前偶然看到一叫spserver的服务器框架,它将windows下IOCP移植到到libevent,并且以HSHA,LF两种模式实现了服务器框架.我做了点功课,写点心得.一般来说在设计一个服务器网络框架的时候,需要用到线程池,里面的线程负责执行服务端所有代码.这些代码总的来说可以分为两类:一类负责网络IO部分,也就是从网络读取和发送数据另一类负责处理各种业务逻辑.通常情况下他们是分离的,网络IO部分不需要管理业务逻辑具体做什么工作,而后者也不关心数据怎么得来,怎么送到网络上.两者就是一个生产者消费者关系.这里讨论的HSHA就是网络IO部分为异步模式,而业务逻辑部分为同步模式.即:网络IO请求 阅读全文

windows下的套接字IO模型

2012-01-03 14:37 by j.cheen, 1509 阅读, 收藏,
摘要: 一般情况下,IO操作的行为受两种因素的影响:IO操作对象的类型(阻塞还是非阻塞)获取IO操作结果的方式(同步还是异步).同步就是指操作的发起和操作结果的获取由调用者完成.异步指操作发起由调用方完成,操作结果由服务方主动告知.IO操作一般可以分为4种:同步阻塞IO :调用方调用IO函数,并阻塞在这个函数上面.同步非阻塞IO:调用方不断的调用IO函数,直到有”明确”的返回值.异步阻塞IO:调用方发起IO操作后,阻塞在接收IO通知的API上.异步非阻塞IO:调用方发起IO操作后继续其他工作,由内核负责回调或者发出IO通知信号.阻塞IO对象在调用期间会阻塞IO函数,函数返回的时候,操作结果是明确的,因 阅读全文

零字节WSASend,WSARecv

2011-11-22 02:07 by j.cheen, 1456 阅读, 收藏,
摘要: 以下是Windows平台下两个函数的声明:int WSASend( __in SOCKET s, __in LPWSABUF lpBuffers, __in DWORD dwBufferCount, __out LPDWORD lpNumberOfBytesSent, __in DWORD dwFlags, __in LPWSAOVERLAPPED lpOverlapped, __in LPWSAOVERLAPPED_COMPLETION_ROUTINE l... 阅读全文