协程必知必会-系列3-批量并发执行

10 月 30 日
阅读 7 分钟
156
批量并发执行在上一篇文章中,我们介绍了协程是如何实现的,本篇文章将向大家介绍如何在协程的基础之上,实现批量并发执行。我们都知道可以使用多进程或者多线程来实现批量并发执行,那么协程中该如何实现呢?注意:「为了减少大家的阅读负担,在文章中只展示必要的代码,和当前讲解内容无关的代码在代码块中采用...进行...
封面图

协程必知必会-系列2-协程如何实现

10 月 22 日
阅读 7 分钟
229
从本篇文章开始,我将带领大家逐步来实现协程库,「为了减少大家的阅读负担,在文章中只展示必要的代码,和当前讲解内容无关的代码在代码块中采用...进行忽略」。

协程必知必会-系列1-协程是什么

10 月 18 日
阅读 2 分钟
285
协程(Coroutine)是什么?协程就是用户态的线程。这样解释可能过于抽象,让我们先来回顾一下,另外2个更常见的概念,进程(Process)与线程(Thread)。「进程是操作系统分配资源的基本单位」,只有在进程内才可以进行内存分配释放、文件读写、网卡数据的接收与发送等的资源操作。「线程是操作系统调度的基本单位」。进...

掌握Linux后端开发岗位技能,一本就够!!!

2 月 23 日
阅读 2 分钟
1.3k
大家好,我是《Linux后端开发工程实践》的作者万木春。我发现市面上的Linux后端开发相关书籍大多集中在API手册或运维手册,却鲜有针对后端开发岗位和工程实践的高效学习指南。在我自身学习Linux后端开发的过程中,也曾经历过许多弯路和挫折,因此我萌生了编写一本贴合Linux后端开发岗位和工程实践的书籍的想法。
封面图

高效易用的C++单元测试框架:轻松构建高质量代码

2023-04-25
阅读 11 分钟
1.3k
单元测试是构建稳定、高质量的程序、服务或系统的必不可少的一环。通过单元测试,我们可以在开发过程中及时发现和修复代码中的问题,提高代码的质量和可维护性。同时,单元测试也可以帮助我们更好地理解代码的功能和实现细节,从而更好地进行代码重构和优化。
封面图

从数学的视角来诠释“服务雪崩”

2019-09-15
阅读 2 分钟
1.6k
相信很多后端研发的同学有过类似的感觉:平时经常听到“服务雪崩”这个词,但总觉得是一知半解。今天我将从数学的视角来诠释“服务雪崩”。“服务雪崩”,通常是指客户端的请求量超过了服务端处理的能力上限,最终导致服务不可用。

后端研发菜鸟成长记 第三章 小试牛刀,编写性能测试工具

2017-06-17
阅读 20 分钟
3.5k
作为一名后端研发人员,必须具备系统性能评估和分析能力,因为只有对系统总体性能了如指掌,才能知道系统什么时候需要扩容,系统哪里有性能瓶颈需要优化。

数据结构面试 之 单链表是否有环及环入口点 附有最详细明了的图解

2017-04-05
阅读 3 分钟
5.2k
1.限制与要求 不允许修改链表结构。 时间复杂度O(n),空间复杂度O(1)。 2.思考 2.1判断是否有环 如果链表有环,那么在遍历链表时则会陷入死循环,利用这个特征,我们可以设计这样的算法。 使用一个slow指针,一个fast指针。 slow指针一次往后遍历以1个节点,fast指针一次往后遍历2个节点,一直做这样的操作。 如果fast指...

c/c++中的“大小,长度”问题

2017-03-29
阅读 2 分钟
2.2k
a的值为6,b的值为5,这是因为buf的大小在编译期就确定了,它的大小刚好能保存字符串“hello”,而字符串默认后面还有一个’0’字符,它占用一个字节,故sizeof(buf)是6,strlen(buf)为5。

后端研发菜鸟成长记 第一章 入门 之 "存活下来"

2017-03-26
阅读 3 分钟
4.1k
2.4 命令行下“存活”下来的基本技能 通过前面的操作我们已经有了自己的云服务器,并能上下传文件,那么接下来我们需要通过各种命令来操作和管理这个云服务器。 下面会对命令行有一个初步介绍,并提供最实用的操作和管理命令,让你从枯燥的命令行交互中找到成就感并坚持下来。 不得不承认学习后端开发不像B端或者C端口的开...

C 堆变量,栈变量,指针参数,非指针参数 剖析

2017-03-26
阅读 2 分钟
4.5k
栈(Stack)这里说的栈不是数据结构中LIFO的栈,而是进程虚拟地址空间的栈;程序在进行函数调用时动态伸缩的存储空间,局限于函数内可以访问。

后端研发菜鸟成长记 第一章 入门 之 云服务器

2017-03-25
阅读 3 分钟
7.3k
1. 写在最前面 1.1 不会涉及的内容 这里不会有Linux系统装机过程介绍 这里不会有Linux操作系统的详细介绍 这里不会有Linux繁多的运维操作介绍 1.2 专注的内容 这里有Linux研发实战的经验分享,帮你避过前人踩过的坑 这里有Linux研发技术要点和核心概念的详细讲解 这里有Linux研发涉及的最实用的操作和命令的最小集,能满...

Linux后台研发超实用命令总结

2017-03-24
阅读 2 分钟
8.4k
计算机领域水太深了,不可能什么都记住,所以只需要理解并记住核心的原理,其他的交给网络,用的时候查一下就可以了。因此整理了平时工作中自己觉得好用的命令。

以c的视角来理解c++的多态

2017-03-22
阅读 6 分钟
3.8k
c++是一门混合型编程语言,即支持面向对象有支持面向过程,其中又以面向对象为主。c++的三大主要特性:“继承”,“封装”,“多态”中,又以“多态”最难以理解,本文将通过c的视角来诠释c++的多态。

分布式内存缓存系统设计

2017-03-19
阅读 2 分钟
8.1k
任何平台随着用户规模的扩大、功能不断的添加,持久化数据库层承受的读写压力会越来越大,一旦数据库承压过大会导致读写性能陡然下降,严重时会导致大量的业务请求超时,进而发生“雪崩”引发严重的故障。

手把手教你实现自定义的应用层协议

2017-03-18
阅读 13 分钟
20k
互联网上充斥着各种各样的网络服务,在对外提供网络服务时,服务端和客户端需要遵循同一套数据通讯协议,才能正常的进行通讯;就好像你跟台湾人沟通用闽南语,跟广东人沟通就用粤语一样。