Linux
空谷人
明天的幸福,总是要今天来拼搏的
展开
-
Linux 抓包工具tcpdump
1、操作命令#端口抓包tcpdump -i eth0 port 8082 -s 0 -w query.cap -v#IP抓包tcpdump -i eth0 host 192.168.1.111 -s 0 -w query.cap -v#eth0是网卡,如果是几个模块在同一服务器上,可以直接用lo,保存在cap文件里面#-s设置为0,tcpdump的数据包抓取长度,默认将会是65535字节启动tcpdump抓包[root@test ~]$ sudo tcpdump -i eth0 port原创 2020-05-15 13:40:37 · 147 阅读 · 0 评论 -
Hadoop错误:failed with state FAILED due to: Application
0、部署Hadoop执行程序 部署Hadoop完成后,修改了namenode名称,从localhost修改为hadoop001,然后在Hadoop上运行测试程序wordcount1、任务执行时,报错,具体信息如下:20/05/09 23:55:49 INFO client.RMProxy: Connecting to ResourceManager at /0.0.0.0:803220/05/09 23:55:51 INFO input.FileInputFormat: Total input原创 2020-05-10 22:34:43 · 10614 阅读 · 1 评论 -
Linux C 多线程执行顺序问题
转载:http://blog.csdn.net/harry_lyc/article/details/60557341:多线程设计通常是比较麻烦的,因为它牵涉到,线程间的同步、和执行顺序问题。在用户没有设定线程间的调度策略时,系统默认采取基于时间片轮转的调度策略。本实验是在默认的调度策略下,测试线程间的执行顺序问题。本实验用的系统为Ubuntu10.04 , Thread转载 2015-01-13 14:11:45 · 525 阅读 · 0 评论 -
linux 多线程编程
1.Linux“线程” 进程与线程之间是有区别的,不过Linux内核只提供了轻量进程的支持,未实现线程模型。Linux是一种“多进程单线程”的操作系统。Linux本身只有进程的概念,而其所谓的“线程”本质上在内核里仍然是进程。 大家知道,进程是资源分配的单位,同一进程中的多个线程共享该进程的资源(如作为共享内存的全局变量)。Linux中所谓的“线程”只是在被创建时clone转载 2015-01-13 10:33:18 · 391 阅读 · 0 评论 -
TCP 和 UDP 在socket编程中的区别
一、TCP与UDP的区别 基于连接与无连接 对系统资源的要求(TCP较多,UDP少) UDP程序结构较简单 流模式与数据报模式 TCP保证数据正确性,UDP可能丢包 TCP保证数据顺序,UDP不保证 部分满足以下几点要求时,应该采用UDP 面向数据报方式 网络数据大多为短消息 拥有大量Client 对数据安全性无特殊要求转载 2014-12-19 15:19:13 · 755 阅读 · 0 评论 -
sockaddr与sockaddr_in 在网络编程中的使用
struct sockaddr { unsigned short sa_family; char sa_data[14]; };此数据结构用做bind、connect、recvfrom、sendto等函数的参数,指明地址信息。但一般编程中并不直接针对此数据结构操作,而是使用另一个与sockaddr等价的数据结构sockaddr_in(在netinet/转载 2014-12-19 11:12:01 · 537 阅读 · 0 评论 -
利用php调用C语言 扩展PHP的功能
利用php调用C语言 扩展函数 第一步. 生成需要调用的so文件1. 首先做一个简单的so文件:/** * hello.c* To compile, use following commands: * gcc -O -c -fPIC -o hello.o hello.c * gcc -shared -o li转载 2014-11-06 13:47:14 · 606 阅读 · 0 评论 -
automake,autoconf使用详解
本文地址: http://www.laruence.com/2009/11/18/1154.html转载 2014-11-13 15:39:56 · 473 阅读 · 0 评论 -
Linux下C语言开发之Makefile创建
我回来了! 上面我们通过一个hello world实例来简单的阐述了一个c源码如何编译最后到运行的这么一个过程,看起来貌似很简单的样子。其实实际项目中并没有这么简单,我们来下一个例子。本例中我们引入头文件的概念,看下面代码:头文件 (这里为了方便将三个文件中的信息写在一块了, 实际开发中不能这么写, 应该是单独的文件):123转载 2014-11-12 16:13:00 · 412 阅读 · 0 评论 -
gdb调试时出现Missing separate debuginfos
在用gdb调试出现这样原创 2014-11-07 11:02:24 · 5553 阅读 · 0 评论 -
linux ctags TagList 使用方法
Ctags使用时去你的源码目录, 如果你的源码是多层的目录, 就去最上层的目录, 在该目录下 运行命令: ctags -R 此时在目录下会生成一个 tags 文件 再在vim中运行命令::set tags=/home/nuoerll/vim71/tags常在这个工程编程的话.对于经常在不同工程间编程,可以在.vimrc中设置:set tags=tags;转载 2014-09-16 16:22:38 · 504 阅读 · 0 评论 -
PHP里的DIRECTORY_SEPARATOR 与 PATH_SEPARATOR
DIRECTORY_SEPARATOR:路径分隔符,linux上就是’/’windows上是’\’PATH_SEPARATOR:include多个路径使用,在win下,当你要include多个路径的话,你要用”;”隔开,但在linux下就使用”:”隔开的。 这2个常量的使用能够避免不同平台的兼容性问题。转载 2014-09-15 23:42:09 · 598 阅读 · 0 评论 -
Linux下syslog日志函数使用
许多应用程序需要记录它们的活动。系统程序经常需要向控制台或日志文件写消息。这些消息可能指示错误、警告或是与系统状态有关的一般信息。例如,su程序会把某个用户尝试得到超级用户权限但失败的事实记录下来。通常这些日志信息被记录在系统文件中,而这些系统文件又被保存在专用于此目的的目录中。它可能是/usr/adm或/var/log目录。对一个典型的Linux安装来说,文件 /var/log/messag转载 2015-01-14 16:32:20 · 709 阅读 · 0 评论 -
openlog、syslog和closelog函数
转载:http://blog.chinaunix.net/uid-26583794-id-3166083.html守护进程日志的实现syslogd守护进程用于解决守护进程的日志记录问题,而日志信息保存的位置和记录的信息级别是在syslogd守护进程的配置文件中设定的。守护进程日志主要涉及3个函数,分别是openlog、syslog和closelog函数。表8.4所示为这转载 2015-01-14 17:07:53 · 535 阅读 · 0 评论 -
Cannot assign requested address解决办法
“Cannot assign requested address.”是由于linux分配的客户端连接端口用尽,无法建立socket连接所致,虽然socket正常关闭,但是端口不是立即释放,而是处于TIME_WAIT状态,默认等待60s后才释放。可能解决方法1--调低time_wait状态端口等待时间:1. 调低端口释放后的等待时间,默认为60s,修改为15~30ssysctl转载 2016-04-12 18:47:32 · 9428 阅读 · 0 评论 -
http消息头
http消息头但凡搞WEB开发的人都离不开HTTP(超文本传输协议),而要了解HTTP,除了HTML本身以外,还有一部分不可忽视的就是HTTP消息头。做过Socket编程的人都知道,当我们设计一个通信协议时,“消息头/消息体”的分割方式是很常用的,消息头告诉对方这个消息是干什么的,消息体告诉对方怎么干。HTTP传输的消息也是这样规定的,每一个HTTP包都分为HTTP头和HTTP体两转载 2015-01-18 20:08:58 · 466 阅读 · 0 评论 -
关于malloc内存分配及查询实际内存方法
今天在用malloc分配内存时,想查看一下实际分配后的内存大小,一开始找到了microsoft的方法_msize,后来发现linux下没有相关的方法。不过最终找到了malloc_usable_size 这个函数的用法是返回调用malloc后实际分配的可用内存的大小下面贴上代码,如有什么问题,请拍砖啦:#include #include #include原创 2015-01-16 16:44:53 · 7636 阅读 · 2 评论 -
malloc、calloc、realloc的区别
转载:http://blog.csdn.net/shuaishuai80/article/details/6140979(1)C语言跟内存分配方式从静态存储区域分配. 内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量、static变量.在栈上创建 在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执转载 2015-01-16 00:27:37 · 438 阅读 · 0 评论 -
fork与vfork的区别
1.vfork保证子进程先运行,在它调用exec或exit之后父进程才可能被调度运行。如果在调用这两个函数之前子进程依赖于父进程的进一步动作,则会导致死锁。2.fork要拷贝父进程的进程环境;而vfork则不需要完全拷贝父进程的进程环境,在子进程没有调用exec和exit之前,子进程与父进程共享进程环境,相当于线程的概念,此时父进程阻塞等待。 为什么会有vfork呢?转载 2014-12-26 23:29:17 · 367 阅读 · 0 评论 -
子进程和线程的区别
1、相同点:(a)二者都具有ID,一组寄存器,状态,优先级以及所要遵循的调度策略。(b) 每个进程都有一个进程控制块,线程也拥有一个线程控制块。(c) 线程和子进程共享父进程中的资源;线程和子进程独立于它们的父进程,竞争使用处理器资源;线程和子进程的创建者可以在线程和子进程上实行某些控制,比如,创建者可以取消、挂起、继续和修改线程和子进程的优先级;线程和子进程可以改变其属性并创建新的资转载 2014-12-26 00:04:23 · 473 阅读 · 0 评论 -
程序、进程、线程区别与联系
定义: 一 程序只是一组指令的有序集合, 二 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位; 三 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),一个线程可以创建和转载 2014-12-25 23:50:41 · 432 阅读 · 0 评论 -
守护进程的设计与实现
转载:http://blog.csdn.net/wanxiao009/article/details/5532929守护进程是Linux中的后台服务进程,一般都是在后台运行的,它的生存期比较长。一般都是系统自举时启动,系统关闭时终止。在Linux中,有一个系统与用户交互的界面,成为终端,很多进程的启动和停止都与终端有很大的关系,一般我们在Linux下编写的代码都是在终端下执行或转载 2015-01-14 15:19:45 · 1065 阅读 · 0 评论 -
深入理解Linux操作系统守护进程的意义
Linux服务器在启动时需要启动很多系统服务,它们向本地和网络用户提供了Linux的系统功能接口,直接面向应用程序和用户。提供这些服务的程序是由运行在后台的守护进程(daemons)来执行的。守护进程是生存期长的一种进程。它们独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件。他们常常在系统引导装入时启动,在系统关闭时终止。linux系统有很多守护进程,大多数服务器都是用守护进程实现的转载 2015-01-14 15:01:00 · 520 阅读 · 0 评论 -
linux C守护进程编写
守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待 处理某些发生的事件。守护进程是一种很有用的进程。 Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。 同时,守护进程完成许多系统任务。比如,作业规划进程crond,打印进程lpd等。 守护进程的编程本身并不转载 2015-01-14 14:28:09 · 463 阅读 · 0 评论 -
Linux NFS服务器的安装与配置
使用记录:在 CentOS 6.4 中 没有 portmap 已经更换成了 rpcbind一、NFS服务简介 NFS 是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁转载 2014-09-15 16:47:34 · 437 阅读 · 0 评论 -
linux php 安装
1、解压PHP,安装php-5.2.17.gz报错:configure: error: xml2-config not found. Please check your libxml2 installation原创 2014-09-24 23:00:59 · 478 阅读 · 0 评论 -
linux crontab实例分析
cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业。由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务设置每一分钟执行一次我的程序: # crontab -e * */1 * * * /home/lfzhou/vhost/vhost /sbin/service crond stop //关闭服务 /sbin/ser转载 2014-09-15 14:41:50 · 397 阅读 · 0 评论 -
PHPFastCGI进程管理器PHP-FPM详解
PHP-FPM是一个PHPFastCGI进程管理器,是只用于PHP的。 PHP-FPM其实是PHP源代码的一个补丁,旨在将FastCGI进程管理整合进PHP包中。必须将它patch到你的PHP源代码中,在编译安装PHP后才可以使用。 现在我们可以在最新的PHP 5.3.2的源码树里下载得到直接整合了PHP-FPM的分支,据说下个版本会融合进PHP的主分支去。相对Spaw转载 2014-06-12 15:43:15 · 686 阅读 · 0 评论 -
关于apache虚拟机的NameVirtualHost错误
配置apache的虚拟机,设置不同的域名访问路径VirtualHost 127.0.0.1:80>DocumentRoot D:\wamp\www\comic\trunk\comicServerName comic127.178.com......VirtualHost>VirtualHost 127.0.0.1:80>DocumentRoot "转载 2014-06-09 23:39:55 · 1059 阅读 · 0 评论 -
ssh常用用法小结
ssh常用用法小结1、连接到远程主机:命令格式 :ssh name@remoteserver 或者ssh remoteserver -l name说明:以上两种方式都可以远程登录到远程主机,server代表远程主机,name为登录远程主机的用户名。2、连接到远程主机指定的端口:命令格式:ssh name@remoteserver转载 2014-04-01 11:08:48 · 518 阅读 · 0 评论 -
mysql处理高并发,防止库存超卖
今天王总又给我们上了一课,其实mysql处理高并发,防止库存超卖的问题,在去年的时候,王总已经提过;但是很可惜,即使当时大家都听懂了,但是在现实开发中,还是没这方面的意识。今天就我的一些理解,整理一下这个问题,并希望以后这样的课程能多点。先来就库存超卖的问题作描述:一般电子商务网站都会遇到如团购、秒杀、特价之类的活动,而这样的活动有一个共同的特点就是访问量激增、上千甚至上万人抢购一个商品。转载 2014-03-04 23:06:27 · 4415 阅读 · 0 评论 -
linux 命令行操作 记录
1、编码格式查看文件编码格式 set ff修改文件编码格式 set ff=nuix原创 2014-02-20 16:23:06 · 550 阅读 · 0 评论 -
linux svn源代码安装
linux svn 1.6.17源码包 安装1 去官方下载 http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=260&expandFolder=74选择subversion-1.6.17.tar.gz 和subversion-deps-1.6.17.tar.gz下载注意:版本号必须一致。2 解压转载 2014-02-14 15:31:00 · 1073 阅读 · 0 评论 -
linux下svn使用指南
1.1 服务器端配置说明1.1.3 配置用户和权限1.1.4 导入工程到仓库中1.2 客户端操作指南及使用规范1.2.1 检出工作拷贝1.2.2 svn update 更新别人做的更改1.2.2.1 svn update 获取最新版本1.2.2.2 svn update-r 获取特定的版本1.2.3 svn st 查看文件状态信息1.2.4 svn log 查看转载 2014-02-14 16:07:29 · 550 阅读 · 0 评论 -
浅谈千万级PV/IP规模高性能高并发网站架构
说明:几个月前老男孩发过一次类似的文章,本次为了参加一个朋友邀请的活动,稍微完善了一下,欢迎各位同仁一起交流网站架构技术。 文章架构简图: 高并发访问的核心原则其实就一句话“把所有的用户访问请求都尽量往前推”。如果把来访用户比作来犯的"敌人",我们一定要把他们挡在800里地以外,即不能让他们的请求一下打到我们的指挥部(指挥部就是数据库及分布式存储)。如:能缓存在用户电转载 2014-02-25 23:12:06 · 753 阅读 · 0 评论 -
PHP面试问题总结
今天去面试了,把相关的问题总结下,供自己日后查看数据库往篇:1、优化order by xxx limit 10原创 2014-02-18 22:54:39 · 619 阅读 · 0 评论 -
Linux下修改文件的时间属性
关于时间的用法:1. 同时修改文件的修改时间和访问时间touch -d "2010-05-31 08:10:30" test.doc2. 只修改文件的修改时间touch -m -d "2010-05-31 08:10:30" test.doc3. 只修改文件的访问时间touch -a -d "2010-05-31 08:10:30" test.doc转载 2013-12-24 11:41:51 · 554 阅读 · 0 评论 -
nginx 502 Bad Gateway 错误问题收集
nginx 502 Bad Gateway 错误问题收集因为,nginx和lighttpd的文档真的很少,更不用说中文文档了,所以收集一些和502有关的错误在这里,保留来源地址,建议看来源地址的内容。502是FastCGI出现问题,所以从FastCGI配置入手。1.请检查你的FastCGI进程是否启动2.FastCGI进程不够使用请通过执行 netstat转载 2014-06-12 15:03:11 · 865 阅读 · 0 评论 -
PHP.ini修改配置下载上传文件大小
查找 post_max_size = 2M (默认为2M)改为想要的大小,如:post_max_size = 100M通常我们只做了这一步,以为就可以解决问题了。其实还需要看下面一步。upload_max_filesize 表示所上传的文件的最大值。查找upload_max_filesize,默认为8M改为upload_max_filesize = 100M需要转载 2014-06-18 17:07:02 · 1853 阅读 · 0 评论 -
LVS负载均衡中arp_ignore和arp_annonuce参数配置的含义
先简单的介绍下关于LVS负载均衡LVS(Linux Virtual Server)Linux服务器集群系统针对高可伸缩,高可用服务的需求,给予IP层和内容请求分发的负载均衡调度解决方法,并在Linux的内核中实现,将一组服务器构成一个实现可伸缩,高可用网络服务的虚拟服务器 负载均衡1.大量的兵法访问或数据流量分担到多态节点设备分别处理,减少用户的等待时间转载 2014-08-07 14:26:26 · 726 阅读 · 0 评论