php、go、linux、异步编程、geeker、hacker
LINFO ps命令 在PS(即,处理状态)命令被用来提供关于当前正在运行的信息的过程,包括它们的过程标识号(PID)来。 过程也称为任务,是程序的执行(即运行)实例。
1. 前言 有关本手册 : 这是一本awk学习指引, 其重点着重于 : l awk 适于解决哪些问题 ? l awk 常见的解题模式为何 ? 为使读者快速掌握awk解题的模式及特性, 本手册系由一些较具代表性的范例及其题解所构成; 各范例由浅入深, 彼此间相互连贯,范例中并对所使用的awk语法及指令辅以必要的说明.
1、正则表达式(Regular Expression,缩写为regexp,regex或regxp),又称正规表达式、正规表示式或常规表达式或正规化表示法或正规表示法,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串 。
1. 程序元素 一个awk 程序是一对以模式(pattern) 与大括号框起来的操作(action) 组合而成的,或许,还会加上实现操作细节的函数(function ) 。针对每个匹配于输人数据的模式,操作会被执行,且所有模式都会针对每条输人记录而检查。
Linux的文本处理工具浅谈 awk 老大 【功能说明】 用于文本处理的语言(取行,过滤),支持正则 NR代表行数,$n取某一列,$NF最后一列 NR==20,NR==30 从20行到30行 FS竖着切,列的分隔符 RS横着切,行的分隔符 ...
Zookeeper vs etcd vs Consul 【编者的话】本文对比了Zookeeper、etcd和Consul三种服务发现工具,探讨了最佳的服务发现解决方案,仅供参考。
分布式系统的CAP理论:理论首先把分布式系统中的三个特性进行了如下归纳:● 一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值。● 可用性(A):在集群中一部分节点故障后,集群整体是否还能响应客户端的读写请求。
RPC(Remote Procedure Call),即远程过程调用,是一个分布式系统间通信的必备技术,本文体系性地介绍了 RPC 包含的核心概念和技术,希望读者读完文章,一提到 RPC,脑中不是零碎的知识,而是具体的一个脑图般的体系。
zkCli 是 zookeeper 原生的与 zk服务群连接的客户端的程序。 1.如何使用zkCli,sh 连接server 与参数 2.zkCli 下的增删查改指令 与 配额 quota 1.如何使用zkCli,sh 连接server 与参数 可选的参数: ./zkCli.sh -timeout 以ms作为统计单位 -r 只读模式, 当半数zk节点down,此时对zk集群不能操作。
一、简介 1、NRPE介绍 NRPE是Nagios的一个功能扩展,它可在远程Linux/Unix主机上执行插件程序。通过在远程服务器上安装NRPE插件及Nagios插件程序来向Nagios监控平台提供该服务器的本地情况,如CPU负载,内存使用,磁盘使用等。
操作系统 性能调休 公司有次压测存在一个问题:CPU资源压不上去,一直在40%已达到了性能瓶颈,后定位到原因,所在的服务器在压测过程中产生的中断都落在CPU0上处理,这种中断并没有均衡到各个CPU,导致单个CPU过载而形成瓶颈。
rsync设置: 1.打开rsync控制开关(修改文件 /etc/default/rsync)2.sudo cp /usr/share/doc/rsync/examples/rsyncd.conf /etc3.
服务发现的基本原理 钱文品 5 天前 请原谅我使用了链家的图标,小编真不是给房产中介来打广告的。 什么是服务发现? 服务发现并没有怎样的高深莫测,它的原理再简单不过。
关于TCP/IP,必知必会的十个问题 原创 2018-01-25 Ruheng 技术特工队 本文整理了一些TCP/IP协议簇中需要必知必会的十大问题,既是面试高频问题,又是程序员必备基础素养。
proc_open (PHP 4 >= 4.3.0, PHP 5, PHP 7) proc_open — 执行一个命令,并且打开用来输入/输出的文件指针。 说明 ¶ resource proc_open ( string $cmd , array $descriptorspec , array &$pipes [, string$cwd [, array $env [, array $other_options ]]] ) 类似 popen() 函数, 但是 proc_open() 提供了更加强大的控制程序执行的能力。
在linux下配置shell参数说明 前面已经讲到,变量名只能包含数字、字母和下划线,因为某些包含其他字符的变量有特殊含义,这样的变量被称为特殊变量。 例如,$ 表示当前Shell进程的ID,即pid,看下面的代码: $echo $$ 运行结果 29949 特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数。
概要:linux系统默认open files数目为1024, 有时应用程序会报Too many open files的错误,是因为open files 数目不够。这就需要修改ulimit和file-max。
这篇教程说明你应该怎样配置 nginx、设置 HTTP 头部过期时间,用 Cache-Control 中的 max-age 标记为静态文件(比如图片、 CSS 和 Javascript 文件)设置一个时间,这样用户的浏览器就会缓存这些文件。
Brendan Gregg是Netflix的资深性能架构师,著名性能调优专家。著有《性能之巅:洞悉系统、企业与云计算》)一书,可以说是性能调优领域的集大成之作。 前不久,Brendan Gregg在SREcon16上分享了《Performance Checklists for SREs》,也是干货满满。
什么是Gearman? Gearman提供了一个通用的应用程序框架,用于将工作转移到更适合于工作的其他机器或流程。它允许你并行工作,负载平衡处理,并在语言间调用函数。它可用于从高可用性网站到传输数据库复制事件的各种应用程序。
原创 2018-01-10 大邓 大邓带你玩python gevent库中使用的最核心的是Greenlet-一种用C写的轻量级python模块。在任意时间,系统只能允许一个Greenlet处于运行状态。
别担心,这不会是我每天凌晨4点起床后跑20公里跑的其中一个... - “灵感”的帖子,让人觉得他们需要成为某种超级人类成为一名优秀的开发者。 有些人可能会认为我是从Instagram(@theavocoder)那里除了编码以外别无其他的女孩,但是我从来没有真正分享过我平时做的事情,为了成为一名软件开发者! 我如何进入编码 我是Lydia,一个19岁的女孩,住在斯德哥尔摩,我是一个JavaScript(React)开发者!我在社交媒体上非常活跃,通过展现我在这个社区的生活,激励更多的人加入科技世界。
1)存储引擎概述; (2)MySQL各大存储引擎; (3)InnoDB和MyIsam使用及其原理对比; (4)InnoDB和MyIsam引擎原理; (5)剩余引擎的使用DEMO(主要是Mrg_Myisam分表); 文章目录:(例子下载在最下方) (1)存储引擎概述 为什么要合理选...
MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会从职位描述上看到诸如“精通MySQL”、“SQL语句优化”、“了解数据库原理”等要求。
php-msf: https://github.com/pinguo/php-msf 百度脑图 - php-msf 源码解读: http://naotu.baidu.com/file/cc7b5a49dfed46001d22222b1afa99ba?token=c962...
一、inotify简介 inotify是Linux内核2.6.13 (June 18, 2005)版本新增的一个子系统(API),它提供了一种监控文件系统(基于inode的)事件的机制,可以监控文件系统的变化如文件修改、新增、删除等,并可以将相应的事件通知给应用程序。
官网: https://www.swoft.org/ 源码解读: http://naotu.baidu.com/file/814e81c9781b733e04218ac7a0494e2a?token=f009094c71a791c5 号外号外, 欢迎大家...
hiredis是redis官方推荐的C/C++客户端代码库。使用hiredis库很简易方便的进行redis的相关开发。 同步方式 不过大多数情况下,我们采用的都是同步的调用方式。
2017-12-18 许式伟 Go中国 2007 年 9 月 20 日,关于设计一门全新语言的讨论正式开始,这门全新的语言,就是后来的 Go。时至今日,Go 语言已经发布到 1.9 版本,走过了整整十年的历程。
MySQL服务器可以在不同的SQL模式下运行,并且可以根据sql_mode系统变量的值对不同的客户端应用不同的模式。DBA可以设置全局SQL模式以匹配站点服务器操作需求,并且每个应用程序可以将其会话SQL模式设置为自己的需求。
This is a crontab service that supports hot plug and high performance. In addition, it supports second level (first parameters), multi time point and time section function. 这是一个支持热插拨、高性能的crontab服务,另外,它还支持秒级别(第1个参数)、多时间点、时间段功能。
使用单进程、strace、gdb调试PHP错误PHP一般是在FPM的呵护下运行的,但是某些情况下进程异常崩溃会导致502。下面是解决思想: 1. 单进程运行: php -d display_errors=1 -S 0.
在我十岁的时候,我觉得这个世界上没有什么东西能比我老爸的那台破电脑更好玩的了。后来,我成为一名Web开发爱好者。大学毕业之后,我在一个软件公司工作,那个时候赚得并不多。再后来,我成为一名正式的Web开发者,在大中型互联网工作,收入一下子提高了几倍。
详细参数: -c 统计每一系统调用的所执行的时间,次数和出错的次数等. -d 输出strace关于标准错误的调试信息. -f 跟踪由fork调用所产生的子进程. -ff 如果提供-o filename,则所有进程的跟踪结果输出到相应的filename.
原创 2017-11-13 沈剑 DBAplus社群 本文根据沈剑老师在〖Gdevops 2017全球敏捷运维峰会北京站〗现场演讲内容整理而成。 (点击底部“阅读原文”获取沈剑演讲完整PPT) 讲师介绍 沈剑,架构师之路公众号作者。
程序员现在已经使用了CMake和Make了很久。当您加入大公司或开始使用大型代码库开发项目时,您需要处理所有这些构建。你必须看到这些“CMakeLists.txt”文件浮动。你应该在终端上运行“cmake”和“make”命令。
目录 [−] 初级 开大括号不能放在单独的一行 未使用的变量 未使用的Imports 简式的变量声明仅可以在函数内部使用 使用简式声明重复声明变量 偶然的变量隐藏Accidental Variable Shadowing 不使用显式类型,无法使用“nil”来初始...
1974年冬,互联网大师 Jon Postel发表了RFC674:“Procedure Call Protocol Documents,Version 2”,尝试定义一种在包含70个节点的网络中共享资源的通用方法。
C/C++中如果一个函数接受一个数组作为参数,那么数组将会被退化为指针,如果定义如下代码: //数组arr的大小未知。 int arrsize(int arr*) { cout
操作系统是个大骗子? 1聊天 我们这些程序都安安静静地躺在硬盘的某个角落中,满心期待地等待被主人使用,被操作系统装载, 然后进入内存工作,确切地说: 被 CPU阿甘 执行。
前言: rsyslog 是一个 syslogd 的多线程增强版。syslog是Linux系统默认的日志守护进程。默认的syslog配置文件是/etc/syslog.conf文件。程序,守护进程和内核提供了访问系统的日志信息。
为了帮助国人更好了解、上手kafka,特意翻译、修改了个文档。官方Wiki : http://kafka.apache.org/quickstart 快速开始 本教程假定您正在开始新鲜,并且没有现有的Kafka或ZooKeeper数据。
This is high performance curl wrapper written in pure PHP. It's compatible with PHP 5.4+ and HHVM. Notice that libcurl version must be over 7.36.0, otherwise timeout can not suppert decimal. 这是一个高性能的PHP封装的HTTP Restful多线程并发请求库,参考借鉴了httpresful 、multirequest等优秀的代码。
python字符串操作实方法大合集,包括了几乎所有常用的python字符串操作,如字符串的替换、删除、截取、复制、连接、比较、查找、分割等,需要的朋友可以参考下: #1、去空格及特殊符号 s.
设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。
TCP协议解析 TCP是一个巨复杂的协议,因为它要解决很多问题,而这些问题又带出了很多子问题和阴暗面。所以学习TCP本身是个比较痛苦的过程,但对于学习的过程却能让人有很多收获。关于TCP这个协议的细节,我还是推荐你去看W.Richard Stevens的《TCP/IP详解 卷1:协议》(当然,你也可以去读一下RFC793以及后面N多的RFC)。
如今公司很多新项目都采取merge request方式来进行code review、非阻塞上线部署,因此掌握merge request很有必要,步骤如下: 1、现在本地用创建一个本地分支, git checkout -b {分支名称} 2、改动{分支名称}你需要改动的代码。
一个比ack速度快n倍的代码搜索工具: ag 银搜索者(The Silver Searcher) 一个类似于代码搜索工具ack,着重于速度。 Github: https://github.com/ggreer/the_silver_searcher Ag有什么好处? 它比一个数量级快ack。
3个月没写PHP了,这是我的第一个中小型go的websocket微服务。那么问题来了,github上那么多轮子,我为什么要自己造轮子呢? Why 造轮子? 因为这样不仅能锻炼自己的技术能力,而且能帮助深入了解其中的实现原理。
老解法: using namespace std; struct Node { int value; Node* lchild; Node* rchild; }; queue Q; void bfs(Node* pn) { if(pn == NULL) return; Q.