前段时间,我们组内决定将各个应用的日志都集中管理起来,所以需要一款集中式的日志管理系统,查找了市面上的系统发现elk不错,所以我就研究搭建了elk,下面是我在搭建过程中的一些心得。 elk:这其实是一套组件的缩写,其中比较核心的是三个组件ELK(Elasticsearch, Logstash, Kibana),...
这篇文章是nginx的进阶篇,我会详细梳理集群的nginx配置,包括nginx服务器的反向代理,负载均衡,不过这些都是要先建立后端服务器组。按照上篇的惯例,我们先亮出集群nginx配置文件 实例123456789101112131415161718192021222324252627282930313233343...
最近由于刚看完nginx高性能web服务器详解,就想结合自己工作的经历,对nginx的优化配置做一个系统的总结,这篇是初级篇,是单机的nginx优化配置首先我们看一份较简单的nginx.conf配置文件12345678910111213141516171819202122232425262728293031323...
最近利用swoole的websocket对扫码登录进行重构,原本是利用长轮循监听用户的的扫码,但对服务器的资源消耗太大,所以改用websocket节省带宽和服务器资源。 websocket: 一种在单个 TCP 连接上进行全双工通讯的协议。使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送...
简介Prometheus(普罗米修斯)是一套开源的监控&报警&时间序列数据库的组合,起始是由SoundCloud公司开发的。随着发展,越来越多公司和组织接受采用Prometheus,社会也十分活跃,他们便将它独立成开源项目,并且有公司来运作。Google SRE的书内也曾提到跟他们BorgMon监...
前段时间我们组对项目进行重构,将多个项目中例如log,app的更新这些重复的内容抽出来做了composer包,为了保证这些composer包的代码质量,使用了github上的一些工具。下面我以自己的一个利用经纬度查询地理位置的composer包geolocation[https://github.com/Gray...
概述yii2-queue是一个yii官方推出的队列扩展库,主要通过队列异步运行任务,它支持基于DB,Redis,RabbitMQ,Beanstalk和Gearman的队列。 来源 github packaglist 安装1composer require yiisoft/yii2-queue 或者 1在com...
简介Supervisor链接 是一个用 Python 写的进程管理工具,可以很方便的用来启动、重启、关闭进程(不仅仅是 Python 进程)。除了对单个进程的控制,还可以同时启动、关闭多个进程,比如很不幸的服务器出问题导致所有应用程序都被杀死,此时可以用 supervisor 同时启动所有应用程序而不是一个一个地...
计算领域一直是分为计算密集和IO密集型,web程序一直是io密集型,从最早的同步阻塞直接Fork进程,到Worker进程池,到现在的异步IO协程,io一直是服务器的难点,下面文章,将详细解析php的并发io问题。 多进程/多线程同步阻塞最早的服务器端都是通过多进程来解决IO的问题,通过Accept一个客户端连接就...
压力测试的基本概念 吞吐率(Requests per second)概念:服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请求数。某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率。计算公式:总请求数 / 处理完成这些请求数所花费的时间,即Request per...