• 一文概括进程、线程、协程、串行、并行以及并发概念

    一文概括进程、线程、协程、串行、并行以及并发概念

    相信各位小伙伴一定经常听到进程、线程以及协程,那么他们究竟都是什么呢?分别又有什么区别?大家常说的并行和并发又是什么?进程、线程、协程与串行、并行和并发之间又有什么关联? 进程 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程…

  • 关于多线程/多进程下的惊群问题笔记

    关于多线程/多进程下的惊群问题笔记

    什么是“惊群”? 假设你养了一百只小鸡,现在你有一粒粮食,你把这粒粮食直接扔到小鸡中间,一百只小鸡一起上来抢,最终只有一只小鸡能得手,其它九十九只小鸡只能铩羽而归,这就所谓的惊群效应。 惊群效应会带来什么影响? 如今网络编程中经常用到多进程或多线程模型,大概的思路是父进程创建socket,bind、listen后,通过…

  • Linux环境下的内核态后端调试神器strace

    Linux环境下的内核态后端调试神器strace

    按照strace官网的描述,strace是Linux环境下的一款程序调试工具,可用于诊断、调试和教学的Linux用户空间跟踪器。更直白的说就用来监察一个应用程序所使用的系统调用。它可以从开始到结束跟踪二进制的执行,并在进程的生命周期中输出一行具有系统调用名称,每个系统调用的参数和返回值的文本行。 在Linux中,进程是…

  • 微服务架构下的一次php-fpm进程阻塞踩坑记录以及避坑总结

    微服务架构下的一次php-fpm进程阻塞踩坑记录以及避坑总结

    微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。当前被越来越多的开发者推崇,很多互联网行业巨头、开源社区等都开始了微服务的讨论和实践。虽然微服务现在如火如荼并且出现了诸如: Dubbo、SpringCloud、thrift 、grpc 等以微服务著…

  • 清理Docker的无用资源占用教程

    清理Docker的无用资源占用教程

    Docker作为现在最流行的技术之一,几乎是前端和后端的开发人员都必备的技术栈。虽然Docker这么好用,但是在使用过程中也有不少的坑,比如说资源占用这个大坑。 Docker磁盘占用问题 Docker的磁盘占用问题是最常见的Docker使用问题之一,每个使用Docker的新人在使用Docker一段时间之后都会遇到这个问…

  • MySQL加锁处理分析

    MySQL加锁处理分析

    1. 背景 MySQL/InnoDB的加锁分析,一直是一个比较困难的话题。我在工作过程中,经常会有同事咨询这方面的问题。同时,微博上也经常会收到MySQL锁相关的私信,让我帮助解决一些死锁的问题。本文,准备就MySQL/InnoDB的加锁问题,展开较为深入的分析与讨论,主要是介绍一种思路,运用此思路,拿到任何一条SQL…

  • MySQL执行计划分析(EXPLAIN)之Extra字段详细介绍说明

    MySQL执行计划分析(EXPLAIN)之Extra字段详细介绍说明

    接上篇文章《MySQL执行计划分析(EXPLAIN)之type字段详细介绍说明》,这篇文章奶嘴就来聊聊在MySQL执行计划(EXPLAIN)另一个比较重要的字段Extra。 Extra字面意思为额外的信息,但其实在MySQL优化的工作中,这个字段输出的信息也非常之重要,下面奶嘴就位大家详细解析下该字段可能会出现哪些值,…

  • MySQL执行计划分析(EXPLAIN)之type字段详细介绍说明

    MySQL执行计划分析(EXPLAIN)之type字段详细介绍说明

    接着上篇文章《mysql执行计划分析(explain)的简单介绍说明》 继续讲讲 MySQL 的执行计划(EXPLAIN)中的type 字段,由于type字段的详细说明篇幅较长,并且在分析SQL语句的执行性能上也是特别需要关注的重点,所以奶嘴单独开一片文章来详细讲解。 type字段在 MySQL 官网文档描述如下: T…

  • MySQL执行计划分析(EXPLAIN)的简单介绍说明

    MySQL执行计划分析(EXPLAIN)的简单介绍说明

    MySQL作为目前服务端使用率最高的开源关系型数据库,它的性能优化是很多开发者和DBA非常关注的话题和工作重点。既然说到MySQL优化那就不得不去了解执行一条SQL语句后MYSQL引擎到底在背后做了哪些操作了,比如说使用了哪些数据进行查询,做了什么运算,以什么样的方式来进行数据查询,以及数据的排序方式是什么。如果对于这…

  • nginx下的负载均衡(upstream)调度算法

    nginx下的负载均衡(upstream)调度算法

    接上篇文章《nginx下的负载均衡(upstream)配置说明教程》,这篇文章我们来聊聊nginx下的upstream的调度算法。 默认的nginx可以通过weight权重或者不设置weight(轮训)来作为负载均衡的调度方法,但是有时候为了更高的灵活性或者更加贴近业务场景我们则需要更加灵活的负载均衡调度算法来满足我们…

下一页