Boost
文章平均质量分 78
未闻小然桑
咱的目标是星辰大海。。。
展开
-
boost.asio之异步编程
异步的需求同步编程比异步编程简单很多。这是因为,线性的思考是很简单的(调用A,调用A结束,调用B,调用B结束,然后继续,这是以事件处理的方式来思考)。后面你会碰到这种情况,比如:五件事情,你不知道它们执行的顺序,也不知道他们是否会执行!尽管异步编程更难,但是你会更倾向于选择使用它,比如:写一个需要处理很多并发访问的服务端。并发访问越多,异步编程就比同步编程越简单。假设:你有一个需要处理1000个并发原创 2016-03-02 11:13:39 · 1909 阅读 · 0 评论 -
实现一个同步的迭代型TCP服务器
1. 相关定义迭代型服务器: 服务器每次只处理一个客户端,只有当完全处理完一个客户端的请求才去处理下一个客户端同步: 使用会阻塞线程执行的I/O和控制操作,该阻塞会持续到相关操作完成或有错误产生2. 基本流程分配一个acceptor套接字,并将其绑定到一个特定的TCP端口。执行以下循环直至服务器停止 等待客户端的连接请求(connect)当客户端的请求到达时,接受(acc原创 2016-03-05 23:16:26 · 504 阅读 · 0 评论 -
实现一个同步的并发型TCP服务器
1. 相关定义同步: 使用会阻塞线程执行的I/O和控制操作,该阻塞会持续到相关操作完成或有错误产生并发型: 服务器可以同时处理多个客户端请求2. 基本流程分配一个acceptor套接字并将其绑定到一个特定的TCP端口上.服务器执行以下的循环直至停止: 等待客户端的连接请求接受客户端的连接请求(会发生tcp的三次握手)产生(spawn)一个控制线程,在这个线程的上下文中: 等待客户端原创 2016-03-06 10:00:30 · 536 阅读 · 0 评论 -
http_load的安装和使用
1. 简介http_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载。但是它不同于大多数压力测试工具, 它可以以一个单一的进程运行,一般不会把客户机搞死。还可以测试HTTPS类的网站请求。下载:http://acme.com/software/http_load/2. 安装:解压后只要 make , make install 就行了环境: 需要gcc 如果是在服务器上安装的话还需转载 2016-03-12 12:24:00 · 656 阅读 · 0 评论 -
线程池的那些事儿
1. 什么是线程池线程池是一种多线程处理技术。线程池先创建好若干线程,并管理这些线程。当有新的任务到来时,将任务添加到一个已创建的空闲线程中执行。线程池所创建的线程优先级都是一样的,所以需要使用特定线程优先级的任务不宜使用线程池。2. 线程池的优点和应用线程池统一管理线程的方式减少了频繁创建和销毁线程的系统调度开销,很大程度上提高了服务器处理并发任务的性能。线程池适用于频繁的任务调度,如处理HT原创 2016-03-03 17:22:04 · 461 阅读 · 0 评论