自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 Socket 基础编程(三)

在上一篇文章中,我们已经采用了select式非阻塞socket进行处理,可是在实测中发现,业务处理速率依旧低下,很多connect请求超时。 通过分析发现,问题原因实际是由于socket的状态造成的。 对于TCP链接而言,默认状态下,无论是accept还是recv与send都是阻塞态,即需要收到数据包或者完成其动作,处理线程才能进行下一步工作。 知道了上述原理,那如何才能解决呢? 答案就是:

2017-03-07 21:38:38 284

原创 Socket 基础编程(二)

在上一篇博客中,我们总结了基本的Socket C/S结构的用法。但该实例仅仅限于1vs1的C/S交互中,当我们需要处理多对一的交互时,服务器就必须支持并发处理。我们知道在服务器accept函数收到建联请求后,会反馈一个新的fd用于与客户端交互,此时通常我们就可以新起线程专门处理与该客户端的交互,而主线程则返回继续进行accept阻塞监听。但这样的代价是明显的,线程的损耗不光是资源占用的问题,还涉及到

2017-03-07 21:26:26 314

原创 Socket 基础编程(一)

一个通常意义上的Socket一般是分为Client与Server。 Server端需要实现:建立Socket-》绑定端口-》监听端口-》处理建链请求-》数据交互-》关闭链接。 Client端相对简单些:建立Socket-》发起TCP建链-》发送数据请求-》数据交互-》关闭链接。如下是各API函数对应的TCP业务动作: Client 的connect对应的TCP中的SYN建联请求,而服务器的a

2017-03-07 21:10:35 776

转载 网络编程socket基本API详解(转)

转自: http://www.cnblogs.com/luxiaoxun/archive/2012/10/16/2725760.htmlsocket  socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用已实现进程在网络中通信。  socket起源于UNIX,在Unix一切皆文件哲学的思想下,socket是一种”打开—读/写—关闭”模式的实现

2017-03-07 21:01:02 505

原创 Ubuntu 下VS Code 调试C代码

Visual Stdio Code是微软旗下的文本编译工具,通过插件的方式,可以支持代码的编译与调试。首先是打开VS Code,使用Ctrl + P 快捷键 ,输入 “ext”命令可以打开扩展的界面,然后搜索“C/C++” 安装C/C++插件,等待安装完成后,重新加载VS Code后,即可识别C/C++代码。由于VS Code需要建立工程,所以我们需要在文件目录系统下,使用VS Code打开文件夹

2017-03-03 22:02:14 2653

原创 autoconf 与 automake

当我们在linux下利用源码安装开源软件时,通常采用 ./configure -> make -> make install 的方式。打开其中的makefile,组件相当复杂,有些还是多目录结构。 在网上搜索了相关的方法,发现了几个好用的开源工具:autoconf 与 automake。 确保已安装如下命令: autoscan, aclocal, autoconf, automake 否则sudo

2017-02-27 22:33:53 655

原创 Visual Stdio IDE 与 Visual Stdio Code

Visual Stdio IDE 与 Visual Stdio Code都是微软旗下的IDE环境或文本工具。Visual Stdio IDE 就是我们常说的VS工具,是集成开发环境,从最早接触的VC6.0 一直到现在的VS 2017。安装方式也比较简单: 1. 访问微软官网进行下载: https://www.visualstudio.com/downloads/ 最左侧的就是面向个人开发者的免费版

2017-02-25 22:58:53 1466

转载 Nginx介绍

原文:http://www.aosabook.org/en/nginx.html作者: Andrew Alexeevnginx(发音”engine x”)是俄罗斯软件工程师Igor Sysoev开发的免费开源web服务器软件。nginx于2004年发布,聚焦于高性能,高并发和低内存消耗问题。并且具有多种web服务器功能特性:负载均衡,缓存,访问控制,带宽控制,以及高效整合各种应用的能力,这些特性使n

2017-02-22 20:58:57 345

原创 VisualBox 下部署Ubuntu系统

安装Ubuntu首先是下载了VisualBox与Ubuntu的最新镜像。 接着是通过VisualBox拉起Ubuntu的linux虚拟机。需要注意的地方: - 软件默认会选择如下路径:“C:\Users\XXXX\VirtualBox VMs ”存储虚拟机文件系统,建议还是修改至硬盘其他路径。 - Ubuntu安装过程中是没有设置Root密码的地方,需要用户登录后使用passwd命令初始

2017-02-21 22:19:05 359

原创 一个Loser的自我赎回之旅

作为一位软件工程专业毕业并立志从事软件开发行业的我而言,这几年走了很多了弯路。错误的进入了某大型通信公司,作着一份没有技术含量的搬砖工作。近日发生的一些如34+、CY等事件,也深深的触动了我。所以从近日开始,从新拿起小笔头,开始我自己的一段赎回之旅。

2017-02-21 21:22:59 397

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除