自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (3)
  • 收藏
  • 关注

原创 linux环境下crontab无法读取环境变量

最近新写的一个laravel项目需要用到laravel框架自带的定时任务模块,但是在部署的过程中发现对应的定时任务无法读取到系统的环境变量,具体crontab如下:* * * * * /apps/php/php /home/apps/nova/artisan schedule:run -q >>/apps/logs/sche.log  2>&1但是直接执行命令的话是可以正...

2018-07-03 10:53:18 1213

转载 从输入 URL 到页面加载完的过程中都发生了什么事情

一个HTTP请求的过程为了简化我们先从一个HTTP请求开始,简要介绍一下一个HTTP求情的网络传输过程,也就是所谓的“从输入 URL 到页面下载完的过程中都发生了什么事情”DNS Lookup 先获得URL对应的IP地址Socket Connect 浏览器和服务器建立TCP连接Send Request 发送HTTP请求Content Do

2015-01-07 16:55:08 613

转载 crontab使用简介

cron 是一个可以用来根据时间、日期、月份、星期的组合来调度对重复任务的执行的守护进程。cron 假定系统持续运行。如果当某任务被调度时系统不在运行,该任务就不会被执行。要使用 cron 服务,你必须安装了 vixie-cron RPM 软件包,而且必须在运行 crond 服务。要判定该软件包是否已安装,使用 rpm -q vixie-cron 命令。要判定该服务是否在运行,使用

2014-10-22 09:52:57 584

原创 Zend FrameWork 安装配置

Apache:Zend FrameWork需要mod_rewrite 支持。如果没有打开这个支持的话会提示这个错误

2014-10-19 17:26:23 1100

转载 centos 上安装gearman

centos 上安装gearman官网:http://gearman.org/跨多种环境部署 Gearmanhttp://www.ibm.com/developerworks/cn/opensource/os-gearman/index.html利用开源的Gearman框架构建分布式图片处理平台-张宴http://blog.s135.com/dips/监控:ht

2014-09-15 23:17:49 515

原创 模块XXXX可能与您正在运行的Windows版本不兼容。检查该模块是否与regsvr32.exe的x86(32位)x64(64位)版本兼容。

最近自己在编写ActiveX控件。遇到的麻烦事不少。今天遇到了这个问题“模块XXXX可能与您正在运行的Windows版本不兼容。检查该模块是否与regsvr32.exe的x86(32位)x64(64位)版本兼容。”。在网上找了很多,都是说放置在syswow文件里用这个文件夹里的regsvr32.exe进行注册.但是这个方法没用。后来考虑是否是编写的控件有问题,于是按照默认生成一个。运行注册,没

2014-08-29 10:51:07 11416 1

原创 Epoll为我们带来了什么

libevent中用到的,epoll是Linux下多路复用IO接口select/poll的增强版本。网上找到的介绍资料,无法标明来源。Q:网络服务器的瓶颈在哪? A:IO效率。 在大家苦苦的为在线人数的增长而导致的系统资源吃紧上的问题正在发愁的时候,Linux 2.6内核中提供的System Epoll为我们提供了一套完美的解决方案。传统的select以及poll的效率会因为在线人数的线形递增

2014-08-29 10:51:05 530

原创 C内存管理相关内容--取自高质量C++&C编程指南

1.内存分配方式内存分配方式有三种:(1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。(2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。(3)从堆上分配,亦称动态内存分配

2014-08-29 10:51:03 499

原创 公司系统简介

系统app_m1p运行过程:客户端:将要调用的命令和参数打包,通过tcp发送到消息队列中。等待返回服务端: 1.初始化消息队列,共享内存。 2.将函数注册,就是把函数的调用名等东西写入共享内存中,等待调用。 3.服务端在消息队列中取出一条请求,拆分出来,在共享内存中取出相应的函数,并调用之。 4.返回数据直接打包,再写入消息队列中。ps: 该系统中并没有考虑进程或者是线程中的并行。主要

2014-08-29 10:51:01 537

原创 数据架构高可用-腾讯微信学习笔记

1.大系统小做 仅仅把模块变得更为清晰,这在海量系统设计开发中是不够的,还需要再物理环境上进行分离部署,出现问题的时候可以快速发现,并且在最快的情况下解决掉。(在盛华这边,我们的后台进程根据功能分为几个,wsafe,wyw,wcx等)。每个进程负责不同的功能,这样在出现问题的时候根据出现的错误就能定位到我们的进程中,从而解决问题。但由于在这边业务不是很大,所以所有的进程都运行在同一台机器上,

2014-08-29 10:50:59 578

原创 C语言学习笔记

C语言学习笔记一.关键字static的作用作用有三:1.在函数体内,被声明为静态的变量在这一函数被调用的过程中维持其值不变。2.在模块内(但在函数体外),被声明为静态的变量可以被模块内所有函数访问,但不能被模块外其他函数访问,它是一个本地的全局变量。3.在模块内,一个被声明为静态的函数只可以被这一模块内的其他函数调用,即这个函数被限制在声明它的本地范围内。二.如何用C编写死循环1.

2014-08-29 10:50:57 446

原创 线程同步的方式和机制

线程同步的方式和机制 临界区、互斥区、事件、信号量四种方式临界区(Critical Section)、互斥量(Mutex)、信号量(Semaphore)、事件(Event)的区别1、临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。在任意时刻只允许一个线程对共享资源进行访问,如果有多个线程试图访问公共资源,那么在有一个线程进入后,其他试图访问公共资源的线程将

2014-08-29 10:50:54 402

原创 编程珠玑学习笔记

编程珠玑学习笔记1.在整数的存储方面有时候可以采取位图和位向量来表示。例如我们可以将集合{1,2,3,5,8,13}存储在下面的这个字符串中:01110100100001000000.集合中表示数字的各个位设置为1,而其他的位全部设为0.给定了表示文件中整数集合的位图数据结构后,我们可以将编写程序的过程分为3个自然阶段。第一个阶段关闭所有的位,将集合初始化为空集。第二个阶段读取文件中的每个整数

2014-08-29 10:50:52 623

原创 Linus:利用二级指针删除单向链表

Linus大婶在slashdot上回答一些编程爱好者的提问,其中一个人问他什么样的代码是他所喜好的,大婶表述了自己一些观点之后,举了一个指针的例子,解释了什么才是core low-level coding。下面是Linus的教学原文及翻译——“At the opposite end of the spectrum, I actually wish more people understoo

2014-08-29 10:50:50 478

原创 C语言的谜题

本篇文章《C语言的谜题》展示了14个C语言的迷题以及答案,代码应该是足够清楚的,而且我也相信有相当的一些例子可能是我们日常工作可能会见得到的。通过这些迷题,希望你能更了解C语言。如果你不看答案,不知道是否有把握回答各个谜题?让我们来试试。 1、下面的程序并不见得会输出 hello-std-out,你知道为什么吗?123456789

2014-08-29 10:50:48 449

原创 Linux环境进程间通信: 共享内存

Linux环境进程间通信: 共享内存第一部分共享内存可以说是最有用的进程间通信方式,也是最快的IPC形式。两个不同进程A、B共享内存的意思是,同一块物理内存被映射到进程A、B各自的进程地址空间。进程A可以即时看到进程B对共享内存中数据的更新,反之亦然。由于多个进程共享同一块内存区域,必然需要某种同步机制,互斥锁和信号量都可以。——————————————-采用共享内存通信的一个

2014-08-29 10:50:46 475

原创 linux c 获取当前时间 毫秒级的 unix网络编程

#include #inlcude char *gf_time(void) /* get the time */{ struct timeval tv; static char str[30]; char *ptr; if (gettimeofday(&tv, NULL) err_sys("gettimeofday error"); ptr = ctime(&tv.tv

2014-08-29 10:50:44 860

原创 用条件变量实现事件等待器的正确与错误做法--转自陈硕的Blog

用条件变量实现事件等待器的正确与错误做法TL;DR 如果你能一眼看出 https://gist.github.com/chenshuo/6430925 中的那 8 个 Waiter classes 哪些是对的哪些是错的,本文就不必看了。前几天,我发了一条微博 http://weibo.com/1701018393/A7FrW7ZVd ,质疑某本书对 Pthreads 条件变量的封装是错的,

2014-08-29 10:50:42 612

原创 VS2008 工具栏CMFCToolBar的使用总结(转)

(一)自定义工具栏自定义工具栏,分两种情况:一是直接添加工具栏,并自己绘制图标;二是,添加工具栏,然后与BMP关联,与VC6.0中的自定义彩色工具栏类似。1、  自绘工具栏1)添加Toolbar 资源,并设置工具条ID,如IDR_TOOLBAR1;编辑工具条,添加相应的项,设置项的ID,绘制各自图标的。2)在MainFrm.h中添加Toolbar变量:public:  

2014-08-29 10:50:39 676

原创 VC MFC工具栏(CToolBar)控件(转)

工具栏工具栏控件在控件面板里没有对应的选项(图标),但有一个工具栏控件类CToolBar,所以我们如果要创建一个工具栏控件并显示在窗口里的话,只能用代码来完成,事实上任何一种控件,都可以用代码创建,如CButton按钮类,现举一个用代码创建按钮控件并显示在窗口里的例子。CButton类的Create成员函数可以创建一个按钮控件,这个函数的格式如下:BOOL CButton::Create(

2014-08-29 10:50:37 757

原创 CToolBarCtrl工具栏设置总结(转)

(一)工具条控制的主要功能所谓工具条就是具有位图和分隔符组成的一组命令按钮,位图按钮部分可以是下推按钮、检查盒按钮、无线按 钮等。工具条对象类派生于主窗口架框类CframeWnd或CMDIFrameWnd,其类控制CToolBar::GetToolBarCtrl是 MFC类库中封装的一个成员函数,允许使用类库中提供的一般控制和附加功能,CtoolBar类控制成员控制提供了Windows一般控制

2014-08-29 10:50:35 2035

原创 自定义工具条过程及范例

支持真彩色图标,可添加文字。动机:传统的VC工具栏只支持16色的图标,且不能添加文字。要点:CToolBarCtrl类的使用。先引用MSDN上的话(翻译水平比较菜,见谅!)使用CToolBarCtrl类,一般遵从以下几个步骤:1.构造一个CToolBarCtrl对象。2.调用Create函数创建Windows工具条通用控件并与CToolBarCtrl对象相关联。3.确定工具条上的按钮如何显示:(1

2014-08-29 10:50:33 594

原创 CToolBarCtrl基本内容控件

基本内容CToolBarCtrlCObject└CCmdTarget└CWnd└CToolBarCtrl  CToolBarCtrl类提供了Windows工具条通用控件的性能。这个控件(也就是CToolBarCtrl类)只对运行在Windows 95和Windows NT 3.51或更高版本下的程序来说才是可用的。  一个Wi

2014-08-29 10:50:31 807

转载 epoll使用详解

epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且

2014-08-27 16:23:41 472

原创 C语言中的system函数

在linux C编程时,system函数有时是很好用的,

2014-08-27 14:42:43 750

原创 STL学习笔记

1.STL六大组件(1)容器:各种数据结构,如vector,list,deque,set,map,用来存放数据,从实现的角度看,STL容器是一种class template。(2)算法:各种常用的算法如sort,search,copy,erase...,从实现的角度看,STL算法是一种function template。(3)迭代器:扮演容器和算法之间的胶合剂,是所谓的泛型指针,从实现

2014-08-27 11:13:46 510

原创 C 内存管理学习笔记

1.常见的内存错误及其对策(1) 内存分配未成功,却使用了它。    没有意识到内存分配会不成功。常用的解决方法是,在使用内存之前检查指针是否为NULL,如果指针p是函数的参数,那么在函数的入口处用assert(p!=NULL)检查。如果是用malloc或new来申请内存,应该用if(p==NULL) 或if(p!=NULL)进行防错处理。(2) 内存分配虽然成功,但是尚未初始化就引用

2014-08-27 11:12:21 437

转载 pthread_key_t和pthread_key_create()详解

pthread_key_t和pthread_key_create()详解下面说一下线程中特有的线程存储, Thread Specific Data 。线程存储有什么用了?他是什么意思了?大家都知道,在多线程程序中,所有线程共享程序中的变量。现在有一全局变量,所有线程都可以使用它,改变它的值。而如果每个线程希望能单独拥有它,那么就需要使用线程存储了。表面上看起来这是一个全局变

2014-08-26 10:27:25 580

转载 SIGCLD处理方式

APUE上SIGCLD语义写的有点不清楚,到底我们的系统是如何来处理SIGCLD信号呢?    1.SIG_DFL :默认的处理方式是不理会这个信号,但是也不会丢弃子进行状态,所以如果不用wait,waitpid对其子进行进行状态信息回收,会产生僵尸进程。    2.SIG_IGN :忽略的处理方式,这个方式和默认的忽略是不一样的语意,暂且我们把忽略定义为SIG_IGN,在

2014-08-25 15:18:55 1297

原创 UNP学习笔记

一般情况下,服务器进程在调用accpet函数后处于睡眠状态,它等待客户的连接

2014-04-18 16:26:35 754

C++课程设计-连锁商店管理助手

自己做的课程设计报告和源码,c++和sqlserver2005的应用。里面还带有数据库,也有详细的说明文档,方便操作。

2014-03-05

操作系统课程设计—处理机调度

我们的课程设计报告,源码+报告全。可运行,用VC编译。

2011-09-11

空空如也

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

TA关注的人

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