- 博客(21)
- 资源 (20)
- 收藏
- 关注
转载 一次服务器CPU占用率高的定位分析
ps H -e -o pid,tid,pcpu,cmd --sort=pcpu |grep freeswitch 背景:通过性能监控发现上线服务器cpu某核占用率已经达到了100%,而且是由我们的某个核心服务导致的。幸亏由于我们的服务进程由多个相同worker(线程)调度承担的,所以除了CPU占用率高之外,并没有对服务造成影响。随着上次我们找到那个吃IO的罪犯,这次我们要追捕的是潜伏在团体中的
2017-10-30 14:58:50 755
转载 linux内存分配与回收
大神博客传送门:http://luodw.cc/2016/08/13/linux-cache/之前在实习时,听了OOM的分享之后,就对linux内核内存管理充满兴趣;但是这块知识非常庞大,没有一定积累,不敢写下,担心误人子弟;所以经过一个一段时间的积累,对内核内存有一定了解之后,今天才写下这篇博客,记录以及分享;之前也有写过linux内存管理,那篇文章主要是linux内存管理,这篇
2017-10-30 12:51:52 3056
转载 RESTful Service API 设计最佳工程实践和常见问题解决方案
前面两篇内容(RESTful Web Service 架构剖析和HTTP Methods 和 RESTful Service API 设计)介绍了 RESTful Service 的基础概念和理论知识,本篇内容打算总结 RESTful Service APIs 设计最佳工程实践和常见问题的解决方案,侧重点是帮助读者更加有效的解决实际工程问题和如何快速设计一套优秀易用的 APIs。为了有个讨论的标准和
2017-10-29 22:35:46 570
转载 HTTP Methods 和 RESTful Service API 设计
API 可以说是软件开发者的用户界面,API 设计也是系统架构的重要环节。尤其对复杂和分布式系统而言,其设计的好坏,直接影响着整个系统的设计,实现和演进。一套糟糕的 API 设计也会严重影响使用者(开发人员)的心情和工作效率。如果你对此表示怀疑并且打算进一步了解,可以了解下来自 Goolge 的一位大牛的分享: How to Design a Good API and Why it Matters[
2017-10-28 18:26:25 243
转载 RESTful Web Service 架构剖析
如今微服务和分布式架构变的越来越流行,而简单,可靠,高效,跨平台和跨语言的 Web Service 则是这类系统架构的基石。 RESTful Web Service 恰好满足这些特点,被越来越多的系统架构所采用。 &emsp本文主要面向对 Web Service 有一定理解,需要进一步了解基于 REST 形式的 Web Service 的 IT 开发人员和架构师。它不是 Web Service
2017-10-28 16:05:55 518
转载 CGI、FastCGI和PHP-FPM关系图解
大神的博客:https://www.awaimai.com/371.html目录基础Module方式CGIFastCGI介绍FastCGI简单介绍FastCGI的工作原理PHP-FPM介绍总结参考资料在搭建 LAMP/LNMP 服务器时,会经常遇到 PHP-FPM、FastCGI和CGI 这几个概念。如果对它们一知半解,很难搭建出高性能的
2017-10-27 14:36:51 872 1
转载 HTTP必知必会
HTTP协议作为网络传输的基本协议,有着广泛的应用。HTTP协议的完整内容很多,但是其核心知识却又简单精炼。学习者应该掌握其基本结构,并且能够举一反三。这篇文章所列的,就是在实际开发中必须知道必须掌握的HTTP知识。HTTP协议HTTP协议:消息的分类 HTTP消息(有的文章称之为报文)分为请求消息和响应消息两种基本分类。其中请求消息是客户端发送给服务器的用于请求服务和资源的消息,响应消息是服务器
2017-10-26 19:08:17 221
转载 vector的内存释放
vector : C++ STL中的顺序容器,封装数组 1. vector容器的内存自增长 与其他容器不同,其内存空间只会增长,不会减小。先来看看"C++ Primer"中怎么说:为了支持快速的随机访问,vector容器的元素以连续方式存放,每一个元素都紧挨着前一个元素存储。设想一下,当vector添加一个元素时,为了满足连续存放这个特性,都需要重新分配空间、拷贝元素、撤销
2017-10-26 11:39:06 156
转载 如何阅读计算机科学类的书
如何阅读计算机科学类的书作为一个研发工程师,无论你是否喜爱阅读,相信你都一定读过不少关于计算机技术的书籍。这其中不乏《21天学会JAVA》这样的语言入门书籍,也有《算法导论》这样的专题书籍,也有《人月神话》这样关于软件管理学的实用性的书籍。也许你已经读过他们中的大部分,也许你现在还在不断地购入新的书籍来补充你的知识库。但请稍等一下,你是否思考过这样的问题,面对大量的计算机科学书籍,你是否都真正读懂了
2017-10-22 17:59:38 206
转载 什么是系统平均负载(Load average)
一、什么是系统平均负载(Load average)? 在Linux系统中,uptime、w、top等命令都会有系统平均负载load average的输出,那么什么是系统平均负载呢? 系统平均负载被定义为在特定时间间隔内运行队列中的平均进程树。如果一个进程满足以下条件则其就会位于运行队列中:(通俗的说,运行队列中的进程树正在消耗内存和CPU资源,从而能算出消耗资源的比例。)
2017-10-20 23:50:48 832
转载 一致性HASH算法详解
基本场景比如你有 N 个 cache 服务器(后面简称 cache ),那么如何将一个对象 object 映射到 N 个 cache 上呢,你很可能会采用类似下面的通用方法计算 object 的 hash 值,然后均匀的映射到到 N 个 cache ;求余算法: hash(object)%N一切都运行正常,再考虑如下的两种情况;1 一个 cache 服务器 m down 掉了(在实际应用中
2017-10-20 00:33:04 263
转载 MySQL丢数据及主从数据不一致的场景
随着对MySQL的学习,发现了MySQL的很多问题,最重要的就是丢数据的问题。对于丢数据问题,我们应该了解丢数据的场景,这样在以后的学习中多考虑如何去避免及解决这些问题。1.MySQL数据库层丢数据场景 本节我们主要介绍一下在存储引擎层上是如何会丢数据的。1.1.InnoDB丢数据 InnoDB支持事务,同Oracle类似,事务提交需要写redo、undo。采用日志先行的策略,将数据的变更在内存
2017-10-17 22:50:32 4333
转载 10个重要的Linux ps命令实战
Linux作为Unix的衍生操作系统,Linux内建有查看当前进程的工具ps。这个工具能在命令行中使用。PS 命令是什么查看它的man手册可以看到,ps命令能够给出当前系统中进程的快照。它能捕获系统在某一事件的进程状态。如果你想不断更新查看的这个状态,可以使用top命令。ps命令支持三种使用的语法格式UNIX 风格,选项可以组合在一起,并且选项前必须
2017-10-17 00:20:19 192
转载 使用 nice、bulimic 和 cgroups 限制 cpu 占用率
地址:https://linux.cn/article-4742-1.html#3_2821Linux内核是一名了不起的马戏表演者,它在进程和系统资源间小心地玩着杂耍,并保持系统的正常运转。 同时,内核也很公正:它将资源公平地分配给各个进程。但是,如果你需要给一个重要进程提高优先级时,该怎么做呢? 或者是,如何降低一个进程的优先级? 又或者,如何限制一组进程所使用的资源呢?
2017-10-17 00:16:50 762
转载 C++ 虚函数&纯虚函数&抽象类&接口&虚基类
多态在面向对象语言中,接口的多种不同实现方式即为多态。多态是指,用父类的指针指向子类的实例(对象),然后通过父类的指针调用实际子类的成员函数。
2017-10-15 12:34:24 287
转载 面向对象的类关系及其C++实现
在面向对象的程序设计中,类之间有6中关系,分别是继承, 组合, 聚合,关联, 依赖,实现,如果使用C语言实现,上面的这些关系通过"结构体包含结构体、结构体包含结构体指针以及函数指针等语法实现",C语言本身的语法并不支持这些逻辑关系的实现,所以使用C语言实现面向对象的程序设计很多时候需要我们自己来关注某一种语法实现两个类之间到底是什么关系,但是C++/Java/Python等语言原生支持面向对象的程
2017-10-08 22:14:06 240
转载 野(wild)指针与悬空(dangling)指针
1. 什么是野指针(wild pointer)?A pointer in c which has not been initialized is known as wild pointer.野指针(wild pointer)就是没有被初始化过的指针。例如,o foo1.c1 int main(int argc, char *argv[])2 {3 i
2017-10-03 20:52:44 1093
转载 CLion中使用CMake导入第三方库的方法
最近尝试使用CLion这款IDE来写C++程序。由于CLion的工程都是基于CMake来构建的,因此导入第三方库就需要在CMake文件中进行配置。这里把利用CMake导入第三方库的过程记录下来。CMake的配置信息写在了CMakeList.txt文件中。在CMakeList.txt文件里,我们首先定义两个变量INC_DIR和LINK_DIR,用来表示头文件路径和库的路径。这里以我放在Dow
2017-10-03 02:21:03 32031 3
转载 linux下编译安装boost库
1、下载并解压boost 1.58 源代码可以去boost的官网下载,这里提供一个下载地址下载wget http://jaist.dl.sourceforge.net/project/boost/boost/1.58.0/boost_1_58_0.tar.bz2解压tar -xjf boost_1_58_0.tar.bz22、运行bootstrap.sh
2017-10-03 00:30:51 335
llvm-project-llvmorg-13.0.0-centos79-gcc11.1
2023-10-31
usql-0.7.0-linux-amd64.tar.bz2
2018-06-22
usql-0.7.0-windows-amd64 (1).zip
2018-06-22
myhttpd_muduo
2018-01-14
令牌桶算法c实现
2017-11-29
everything-curl http libcurl
2017-11-07
rar 64位最新版
2016-09-15
rarlinux下让人解压
2016-09-14
Linux Shell脚本攻略(第2版)
2016-08-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人