`
yand789
  • 浏览: 22345 次
社区版块
存档分类
最新评论
文章列表
发表于2013-08-29 09:27| 25337次阅读| 来源《程序员》| 79 条评论| 作者杨光辉 《程序员》杂志2013年9月刊特别策划互联网系统架构技术架构性能系统 摘要:多终端接入、开放平台给互联网带来了前所未有的用户数量和访问规模,信息之多、传播速度之快,是传统网站难以想象的。本文将从发展演进的角度,解读高性能互联网系统架构。 多终端接入、开放平台给互联网带来了前所未有的用户量级和访问规模,SNS网站产生了海量的UGC(用户产生内容),而且这些内容依托关 系链扩散速度之快、传播范围之广是传统网站难以想象的,海量数据的计算存储也一直是近年互联网领域的热点。本文将从发展演进的层面探讨 ...
一个项目的服务器端在Linux平台下,用到了开源日志库log4cxx,这个库是apache项目的一个子库。功能很不错。下面记录下它的编译和安装过程。 log4cxx的官方下载地址是http://logging.apache.org/log4cxx/index.html,我用的是0.10.0版本。 为了编译它,还需要两个辅助库,apr,和apr-util,可以在这里下载http://apr.apache.org/download.cgi,我用的版本分别是apr-1.3.8.tar.gz和apr-util-1.3.9.tar.gz。 第一步安装apr-1.3.8,顺序不能错,它必须 ...
http://www.it165.net/os/html/201209/3238.html log4cxx在linux下的编译使用 Linux系统编译及测试l     最近在linux下使用log4cxx库,按照其官方文档提供的方法来进行编译,不能成功,又利用google搜索了好几个中文博客上讲述在linux下编译使用log4cxx库的方法,依然不能成功,在这里我奉劝写博客或是转载博客指导人的朋友们,首先您起码得自己按照您写的或是转载的编译通过了再发表文章吧,其中有几处明显的低级错误,另外,建议您把你编译时的具体的linux系统及版本附带上,这样才能够成一条完整的信息链,一定要对自己或是转载 ...
最近把cpp代码从开发机放到编译机去,遇到了不少路径问题。 安装boost的时候,其实很简单 wget http://sourceforge.net/projects/boost/files/boost/1.54.0/boost_1_54_0.tar.gz tar -xzvf boost_1_54_0.tar.gz cd boost_1_54_0 ./bootstrap.sh --prefix=/usr/local ./b2 install --with=all boost库被安装在/usr/local/lib下面 编译时 g++ syslogem.cpp -lboost_system 出现 ...
Boost ASIO proactor 浅析前情提要:Boost asio 的socket的异步非阻塞模式才有的是proactor模式,当IO操作介绍后回调相应的处理函数。ASIO在Linux平台下的实现基于epoll,但是epoll只支持reactor模式,ASIO通过封装在epoll上实现了proactor。提到ASIO proactor,ASIO中的所有异步操作都是基于io_service实现的,io_service是ASIO中的任务队列,并且他负责调用epoll_wait等待IO事件到来,对io_service的实现参加前边的blog:http://www.cnblogs.com/zhi ...
首先让我们对异步 I/O 做一些基本的了解。异步 I/O 模型大体上可以分为两种,反应式( Reactive )模型和前摄式( Proactive )模型: 传统的 select / epoll / kqueue 模型,以及 Java NIO 模型,都是典型的反应式模型,即应用代码对 I/O 描 ...
public OrderDataBaseUtil(Context ctx, String tbname, String cols[], String cons[]) { super(ctx, DATABASE_NAME, null, DATABASE_VERSION); // super(context, name, factory, version); /** * context  to use to open or create the database * name of the database file, or null for an in-memory d ...
2011-03-04 12:49 SQLite判断表是否存在 今天刚好用到sqlite来存放一些数据,但是需要检测表是否已经存在; 其实很简单,只要查看sqlite_master表中是否存在这条数据就可以知道了 SELECT count(*) FROM sqlite_master WHERE type='table' AND name='tableName' android判断sqlite中数据库的某个表是否存在 final String CREATE_BASE_TABLE ="create table if not exists login (" + "i ...
public class MainActivity extends Activity {     @Override     public void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main); } setContentView(R.layout.activity_main);这句是设置和activity对应布局文件的 你要让一个Activity对应一个布局文件就在该Ac ...
DDMS工作机制    DDMS全称Dalvik Debug Monitor Service.DDMS为IDE和emultor及真正的android设备架起来了一座桥梁,Android DDMS将捕捉到终端的ID,并通过adb建立调试器,从而实现发送指令到测试终端的目的 1)每一个Android应用都运行在一个Dalvik虚拟机实例里,而每一个虚拟机实例都是一个独立的进程空间。虚拟机的线程机制,内存分配和管理,Mutex等等都是依赖底层操作系统而实现的。所有Android应用的线程都对应一个Linux线程。 2)DDMS启动时会与ADB之间建立一个device monitoring ser ...
Android 多线程:使用Thread和Handler 您的评价:         收藏该经验      文件夹  请选择... ------------- 新增文件夹... 新增文件夹  标签  (多个标签用逗号分隔) 当一个程序第一次启动时,Android会同时启动一个对应的主线程(Main Thread),主线程主要负责处理与UI相关的事件,如:用户的按键事件,用户接触屏幕的事件以及屏幕绘图事件,并把相关的事件分发到对应的组件进行处理。所以主线程通常又被叫做UI线程。 比如说从网上获取一个图片,在一个ImageView中将其显示出来,这种涉及到网络操作的程序一般都是需 ...
原文:http://blog.csdn.net/shallwake/article/details/5265287 首先,介绍几种常见的I/O模型及其区别,如下: •blocking I/O •nonblocking I/O •I/O multiplexing (select and poll) •signal driven I/O (SIGIO) •asynchronous I/O (the POSIX aio_functions) blocking I/O  ...
anychat  跨平台的音视频 sdk (client/server), 手机测试效果很好 AnyChat,跨平台的音视频解决方案 支持一对一、多对多的实时音视频交互 P2P技术、文字聊天、文件传输、数据通道、音视频录制 佰锐科技
linux c/c++  编辑器 source insight / vs2008 / eclipse
Global site tag (gtag.js) - Google Analytics