Linux
文章平均质量分 68
morning_sir_jking
这个作者很懒,什么都没留下…
展开
-
Linux服务器性能查看分析调优
一 linux服务器性能查看1.1 cpu性能查看1、查看物理cpu个数:cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l2、查看每个物理cpu中的core个数:cat /proc/cpuinfo |grep "cpu cores"|wc -l3、逻辑cpu的个数:cat /proc/cpuinfo |grep "processor"|wc -l物理cpu个数*核数=逻辑cpu个数(不支持超线程技术的情况下转载 2020-10-28 16:05:09 · 703 阅读 · 0 评论 -
Linux服务器性能评估与优化(二)
1、Linux内核参数优化 内核参数是用户和系统内核之间交互的一个接口,通过这个接口,用户可以在系统运行的同时动态更新内核配置,而这些内核参数是通过Linux Proc文件系统存在的。因此,可以通过调整Proc文件系统达到优化Linux性能的目的。一、sysctl命令sysctl命令用来配置与显示在/proc/sys目录中的内核参数.如果想使参数转载 2016-08-05 17:42:51 · 806 阅读 · 0 评论 -
Linux服务器性能评估与优化(一)
1、前言简介一、影响Linux服务器性能的因素 1. 操作系统级 性能调优是找出系统瓶颈并消除这些瓶颈的过程。 很多系统管理员认为性能调优仅仅是调整一下内核的参数即可解决问题, 事实上情况并不是这样。 性能调优是实现操作系统的各个子系统之间的平衡性,这些子系统包括:Ø CPUØ 内存Ø 磁盘I转载 2016-08-05 17:42:01 · 2948 阅读 · 0 评论 -
Linux下提高性能的系统调用sendfile,splice和tee
熟悉Linux内核2.4版本的也许知道:在2.4版的内核中内嵌了一个叫做khttpd的静态网页服务器。当时,可能是效率的因素致使她被添加了进来,至于为什么最新的2.6版内核去掉了这个服务器,我考虑可能是因为Linux内核“只提供机制,而不提供策略”,当然安全因素也不能排除在外。实际上,把网页服务器做进内核也是完全没有必要的,因为Linux内核提供了sendfile这样一个系统调用:转载 2016-07-05 14:42:32 · 1732 阅读 · 0 评论 -
linux使用tcpdump抓包工具抓取网络数据包,多示例演示
cpdump是linux命令行下常用的的一个抓包工具,记录一下平时常用的方式,测试机器系统是ubuntu 12.04。tcpdump的命令格式tcpdump的参数众多,通过man tcpdump可以查看tcpdump的详细说明,这边只列一些笔者自己常用的参数:tcpdump [-i 网卡] -nnAX '表达式'各参数说明如下:-i:interface 监听的网转载 2016-06-03 16:18:11 · 4437 阅读 · 0 评论 -
线程池原理及创建(C++实现)
本文给出了一个通用的线程池框架,该框架将与线程执行相关的任务进行了高层次的抽象,使之与具体的执行任务无关。另外该线程池具有动态伸缩性,它能根据执行任务的轻重自动调整线程池中线程的数量。文章的最后,我们给出一个简单示例程序,通过该示例程序,我们会发现,通过该线程池框架执行多线程任务是多么的简单。为什么需要线程池目前的大多数网络服务器,包括Web服务器、Email服务器以及数据库服务器转载 2015-10-29 16:50:46 · 478 阅读 · 0 评论 -
linux C++ 面向对象线程类封装
1.封装遇到的问题将pthread线程封装为抽象类,这样用户在使用线程时,只需要继承一下这个抽象类,并实现相应的接口就可以了。这样做的好处是用户可以将注意力集中在线程所要执行的逻辑上,而不需要关注创建线程、销毁线程等细节问题上。我们抽象类的名称为Thread,其中有一个成员函数run,该函数为的声明形式为:void run() = 0;即将该成员函数声明转载 2015-11-04 22:43:03 · 602 阅读 · 0 评论 -
linux网络编程
最近在看《linux高性能服务器编程》,在此做个日记,以激励自己,同时分享于有需要的朋友。编写高效的服务器,除了平常使用的网络接口,send, recv , sendto ,recvfrom接口,还有几个高效的接口需要去了解:Linux c 函数编辑#includeint dup(int fd);int dup2(int fd原创 2015-11-15 10:04:30 · 397 阅读 · 0 评论 -
VMWare安装Ubuntu 12.10无法开启虚拟机的Unity Mode模式
问题:Unity is not supported on this guest operating system这是一个非常难以找到解决方法的问题,因为VMWare和Ubuntu都有Unity统一,前者指的是Unity Mode,后者指的是Unity Shell。我的主机操作系统是Windows 7 ,安装VMWare 9.0.1,虚拟机中运行Ubuntu 12.10 。当我试图把转载 2016-06-03 15:05:54 · 1537 阅读 · 0 评论 -
Linux的进程/线程间通信方式总结
Linux系统中的进程间通信方式主要以下几种:同一主机上的进程通信方式 * UNIX进程间通信方式: 包括管道(PIPE), 有名管道(FIFO), 和信号(Signal) * System V进程通信方式:包括信号量(Semaphore), 消息队列(Message Queue), 和共享内存(Shared Memory)网络主机间的进程通信方式转载 2014-06-27 15:24:29 · 956 阅读 · 0 评论 -
Linux 线程同步的三种方法
线程的最大特点是资源的共享性,但资源共享中的同步问题是多线程编程的难点。linux下提供了多种方式来处理线程同步,最常用的是互斥锁、条件变量和信号量。一、互斥锁(mutex)通过锁机制实现线程间的同步。初始化锁。在Linux下,线程的互斥量数据类型是pthread_mutex_t。在使用前,要对它进行初始化。静态分配:pthread_mutex_t mutex = PTHR转载 2014-06-27 15:26:04 · 584 阅读 · 0 评论 -
一个简单的linux线程池
线程池:简单地说,线程池 就是预先创建好一批线程,方便、快速地处理收到的业务。比起传统的到来一个任务,即时创建一个线程来处理,节省了线程的创建和回收的开销,响应更快,效率更高。 在linux中,使用的是posix线程库,首先介绍几个常用的函数:1 线程的创建和取消函数pthread_create创建线程pthread_join合并线程转载 2014-03-02 22:10:59 · 1301 阅读 · 0 评论 -
pthread_cond_signal
pthread_cond_signal函数的作用是发送一个信号给另外一个正在处于阻塞等待状态的线程,使其脱离阻塞状态,继续执行.如果没有线程处在阻塞等待状态,pthread_cond_signal也会成功返回。但使用pthread_cond_signal不会有“惊群现象”产生,他最多只给一个线程发信号。假如有多个线程正在阻塞等待着这个条件变量的话,那么是根据各等待线程优先级的高低确定哪个线原创 2014-03-02 22:09:55 · 1107 阅读 · 0 评论