Go 入门学习
入门 Hello, World 我们以现已成为传统的 案例来开始吧 Go 是一门编译型语言,Go 语言的工具链将源代码及其依赖转换成计算机的机器指令(译注:静态编译)。Go 语言提供的工具都通过一个单独的命令 go 调用,go 命令有一系列子命令。最简单的一个子命令就是 run。这个命令编译一个或多个以 .go 结尾的源文件,链接库文件,并运行最终生成的可执行文件(本书使用 表示命令行提示符。) 毫无意外,这个命令会输出: Go 语言原生支持 Unicode… »
女王控的博客
入门 Hello, World 我们以现已成为传统的 案例来开始吧 Go 是一门编译型语言,Go 语言的工具链将源代码及其依赖转换成计算机的机器指令(译注:静态编译)。Go 语言提供的工具都通过一个单独的命令 go 调用,go 命令有一系列子命令。最简单的一个子命令就是 run。这个命令编译一个或多个以 .go 结尾的源文件,链接库文件,并运行最终生成的可执行文件(本书使用 表示命令行提示符。) 毫无意外,这个命令会输出: Go 语言原生支持 Unicode… »
高并发架构 消息队列 为什么使用消息队列? 优点 解耦:通过一个 MQ,Pub/Sub 发布订阅消息这么一个模型,A 系统就跟其它系统彻底解耦了。 异步:任务发到消息队列,由消费者异步消费 削峰:任务发到消息队列,由消费者决定消费速度 缺点 系统可用性降低:MQ 挂了如何处理?即如何保证消息队列的高可用? 系统复杂度提高:怎么保证消息没有重复消费?怎么处理消息丢失的情况?怎么保证消息传递的顺序性? 一致性问题:A 系统处理完直接返回成功,发到消息队列后供 B、C、D 消费,如果 B、D 成功、C… »
分布式系统、单体系统区别 分布式系统是对单体系统的一种改进,但这种改进同样也带来了复杂度和实现难度。 背景 单体系统存在以下情况不能应对: 业务复杂度和产品迭代速度 处理高并发、大数据量的用户请求 代码维护和团队协作 但是分布式系统引入了新问题 网络传输的三态性 数据的一致性 可用性 // TODO https://juejin.cn/book/7106442254533066787/section/7106701956340514857 »
培养 Pythonic 思维 第 1 条:查询自己使用的 Python 版本 Python 2 于 2020 年 1 月 1 日退场,到这一刻,所有的 bug 修复、安全补丁,以及特性向后移植都会停止。此后,如果你还坚持使用 Python 2,那么会面临很多不利因素,因为它不会再获得正式的维护了。深度依赖 Python 2 代码库的开发者可以考虑用 2to3(Python 预装的工具)与 six 这样的工具过渡到 Python 3。 第 2 条:遵循 PEP… »
源码结构 重点介绍标红行的内容 对象模型 概述 Python 是一门面向对象语言,实现了一个完整的面向对象体系,简洁而优雅。 一切皆对象 首先,在 Python 世界,基本类型也是对象,与通常意义的“对象”形成一个有机统一。换句话讲,Python 不再区别对待基本类型和对象,所有基本类型内部均由对象实现。一个整数是一个对象,一个字符串也是一个对象: 其次,Python 中的类型也是一种对象,称为类型对象。整数类型是一个对象,字符串类型是一个对象,程序中通过 class… »