
100种互联网热门赚钱方法
100种互联网热门赚钱方法 最新、最热的互联网赚钱项目拆解,向有结果的人拿答案
100种互联网热门赚钱方法 最新、最热的互联网赚钱项目拆解,向有结果的人拿答案
编程与 AI 编程 共 15 个小专栏:AI辅助编程高质量科普、C/C++、Java、Python、Go、Rust、k8s、前端、数据库、操作系统、网络安全、机器学习、运维、测试。
小白的AI编程提效课 小册包括六个专栏:AI编程实战、AI编程工具、AI高效办公、AI副业赚钱、AI提示词工程、AI私人助手
阿里P9右军:20年职业50个思考与洞察 20年P9老兵的职业思考:程序员成长 | 系统化思维 | 行业洞察
大模型应用开发 | API 实操 小册价值:快速入门OpenAI API,掌握核心能力:开发环境搭建、GPT原理、Chat、Tools、Assistants、Images、Audio
程序员职场避坑指南 本小册整理了程序员从求职面试、在职发展、抉择成长三个方面,在职场中会遇到的几十个核心问题,旨在总结可复制的经验,帮助你在职场之路上避坑
嵌入式千宝箱解决小白入门的1000个问题 本专栏专注于解决嵌入式新手遇到的各种疑难问题,助力解决小白入门的1000个问题
史官的游戏研发入门培训手册 本专栏着重为刚入行和想要入行的朋友们提供一些参考和思路,包含且不限于游戏研发岗位职能介绍、游戏设计思路探讨,游戏创业经验总结等等
Python 全家桶 专栏包含 Python「基础编程」和 「高级编程」,同时置顶帖赠送 爬虫开发、游戏开发、数据分析、人工智能、自动办公,旨在帮你一站式入门 Python 运用
播客小捕手 播客小捕手是一个海外播客数据库,你可以:通过搜索功能搜寻到你感兴趣的内容。查看部分精华节目的人工总结。在这个数据库里查看该播客的中文稿。
深入浅出Web3开发技术 本手册内容源自作者未完成的书籍稿件,内容包括Web3基础,智能合约技术和语言基础,智能合约开发、测试和部署,标准 Token 协议,区块链预言机,Keeper,数据索引服务 Graph,前端 Web3 框架等
小白零基础用Python量化股票分析小册 从小白的角度浅浅的介绍一下从零基础python入门,pandas库的使用,股票的数据的基本分析,可视化股票分析,以及如何写一个简单的量化策略,如何去回测你的策略
Go 语言 与 AI 提效 小册共分 7 个大专栏:Go 入门、Go 进阶、Go Web 开发、Go 微服务、Go 源码、Go 面试、AI 提效(包含 3 个小专栏)
史官的游戏人生-第1季@正义的史官 本专栏从一个游戏设计者的视角观察和理解生活,也从生活中感受和领悟游戏的精神内核。每周至少会更新一篇1500字左右文章,至少更新50篇。
Python潮流周刊 | 每周连载中 从全网挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等丰富内容,第一时间汇聚给你阅读。
C++埋点SDK项目实战 【终身订阅】C++客户端埋点相关的SDK实战项目。适合入门和进阶C++的同学
基于 Gin 封装的高效 Web 框架 从零开始教你如何基于 Gin 框架封装自己的 Web 框架,涵盖框架设计与实现。无论你经验水平如何,都可获得实际项目开发技巧,提高开发效率。
产品经理的技术课 给产品经理讲技术,普及技术基础知识。结合具体案例循序渐进地讲解产品经理需要学习的技术知识
游火研究院 2023 每个工作日收取一篇推送,由我们的编辑团队为你筛选全球游戏行业重要新闻。支持通过微信或者邮箱阅读
游火研究院 - 2024 每个工作日收取一篇推送,由我们的编辑团队为你筛选全球游戏行业重要新闻。支持通过微信或者邮箱阅读
产品成长指北 产品通识知识库,也是产品实践手册;致力于为读者建立扎实的产品基本功
大数据技术在用户画像中的应用 大数据技术画像应用实战,从0到1,带你入门大数据技术
播客制作手册(2023版) 播客制作手册2023版。本版会在播客制作手册2020版 上进行修订,并补充品牌播客与内容生态的理解。旨在帮助更多人能够轻松了解并上手播客。你将在这里见证播客制作手册诞生的全过程,并参与讨论。
简明数据库小课「已完结,放心买」 面向产品经理的数据库小课,通过案例、原型等方式,从产品经理的视角讲解数据库知识。覆盖数据库概念、实操、案例、数据分析、如何使用AI工具、数据仓库、BI和PaaS等全方位的知识。
王建硕的 Web3 启蒙书 本专栏是关于Web3的启蒙书,适合初学者入门,内容包括Web3的基础知识、技术原理、应用场景等
人人都能读懂的技术专栏 它应该是接地气的,完全可以用非专业性术语去描绘,应该是人人都能读懂的
硬件产品经理手册 这是在过去 几年的工作里,我关于做硬件产品经理工作的最佳实践指南。
Chrome插件全栈开发实战 真实出海项目的实战教学课,讲解Chrome插件和Next.js端的全栈开发,教你最佳的出海技术栈组合,帮助你半个月内成为全栈出海工程师。
Java入门进阶与AI 提效 本学习手册的内容主要包括:从 Java 入门到 Java 进阶以及AI提效,介绍从Java SE、Java EE、常用框架以及AI助力编程提效等方面
然阿姨的成长顿悟2023-2024 主要更新内容:👉真实职场经历和总结(脱敏版)👉近期阅读推荐👉付费咨询手记(脱敏版)👉部分播客访谈脱水文字版
三爷的B端产品专家进阶之路 本专栏我希望帮助所有还在一直进行单一功能设计工作的同学进行一次全面升级,帮助每一位专栏读者构建高阶产品人所必须的技能树,进行一次维度升级,实现从简单的功能设计到更高维度的产品规划的技能突破
产品经理自由职业之路2022 作为探索了一年半自由职业的产品经理,接下来会用产品思维迭代商业IP,已经是小红书第一产品经理的我,希望和大家一起更快的成长
产品经理自由职业之路2023 作为探索了一年半自由职业的产品经理,接下来会用产品思维迭代商业IP,已经是小红书第一产品经理的我,希望和大家一起更快的成长
AI辅助软件测试 小册分为四个主题:ChatGPT辅助软件测试入门,ChatGPT辅助软件测试进阶,ChatGPT辅助软件测试面试。
前端快速入门 小册分为 5 个主题:前端入门、前端进阶、前端实战、面试经验、职场经验,一年内最少输出 30 篇心得
软测面试精选题库 为你挑选100道面试题,并附上最优解,助你轻松搞定面试!
零基础轻松入门前端:知识点加实战 深入浅出介绍前端各个知识点,同时实现一个涉及前后端的课程返现网站。适合在校学生、前端初学、后端、算法等开发人员。
AI 辅助学 Java 小册分为:AI 辅助学 Java 、AI 辅助学计算机、AI 辅助学数据库、AI 辅助学算法、AI 辅助学微服务、AI 辅助面试、AI 辅助改简历,AI 辅助编程副业
个人独立游戏开发者指南 本专栏不教你具体如何编程,如何设计游戏,但会提供一定的产品思路。对于具体编程,设计等已经有许多优秀的教程,我也会在专栏中有详细的分享
Python精选300题 精选 Python 编程300题,附答案及详细解析,夯实基础,提炼精华。
陈随易的Node.js全栈实验指南 本课程提供3种交付方式:1,小册文字版(165元包含);2,微信群问答(165元包含);3,录播视频版(单独付费,未定价)。
在基本概念、核心原理了解完之后,我们通常要开始编写实际应用的kubernetes yaml文件,用来进行应用部署。然而kubernetes的关键字众多,而且晦涩难懂,同时对yaml也要有深入的学......
之前我们提供了一些学习kubernetes基础知识的方法,接下来我们要开始深入学习kubernetes 核心组件 api-server scheduler controller-manager,......
AI 辅助 MySQL|学习路线
一)数据类型
需要了解 MySQL 的数据类型,在实际使用中才能为每个字段选择适合的类型。
1、数值类型: INT, FLOAT, DECIMAL 等
2、字符串类型: VARCHAR, CHAR 等
3、日期和时间类型: DATE, DATETIME, TIMESTAMP 等
4、其他常用类型: BOOLEAN, ENUM, SET 等
二)数据操作语言 (DML)
这就是我们常说的 CURD,吃饭的家伙得了解。
1、插入数据: INSERT INTO
2、查询数据: SELECT
3、更新数据: UPDATE
4、删除数据: DELETE
三)数据定义语言 (DDL)
表相关调整,业务常变动,改表要学会!
1、创建数据库: CREATE DATABASE
2、创建表: CREATE TABLE
3、添加约束: ALTER TABLE
4、修改表结构: ALTER TABLE
5、删除表: DROP TABLE
6、索引管理: CREATE INDEX, DROP INDEX
四)存储过程
现在业务上基本很少使用存储过程,但是使用存储过程进行造数据是真的好用。
1、存储过程的概念和作用
2、创建存储过程: CREATE PROCEDURE
3、调用存储过程: CALL
五)常用函数
查数据必备技能,学会从 360 个维度不同姿势查询数据。
1、字符串函数: CONCAT, SUBSTRING, LENGTH 等
2、数值函数: SUM, AVG, MAX, MIN 等
3、日期和时间函数: NOW, DATE_FORMAT, TIMESTAMPDIFF 等
4、条件函数: IF, CASE WHEN 等
六)联表查询
不建议联表查询,但是技能你得掌握。
1、内连接: INNER JOIN
2、外连接: LEFT JOIN, RIGHT JOIN, FULL JOIN
3、自连接: 在同一表中进行连接
一)性能监控
出现问题时候要知道如何排查,快速定位问题。
1、show profile:查询剖析工具,可以指定具体的性能、IO 等信息
2、show processlist:查看所有连接的线程个数,来观察是否有大量线程处于不正常的状态或者其他不正常的特征,特别是死锁线程
3、slow_query_log:定位慢 SQL 语句,解决潜在的性能问题
二)SQL 执行计划
通过分析 SQL 的执行计划,就知道什么时候该给表添加索引,使用哪个索引来查找记录从而让 SQL 语句运行更快。
1、id:该语句的唯一标识
2、select_type:查询类型
3、table:访问的表名
4、partitions:当前查询匹配记录的分区
5、type:连接类型
6、possible_keys:指出 MySQL 可能使用的索引
7、key:显示 MySQL 实际决定使用的索引,如果没有选择索引,键是 NULL
8、key_len:使用索引的长度,如果没有选择索引,键是 NULL
9、ref:显示使用哪个列或常数与 key 一起从表中选择行
10、rows:执行查询时必须检查的行数,多行之间的数据相乘可以估算要处理的行数
11、filtered:执行查询时必须检查的行数,多行之间的数据相乘可以估算要处理的行数
12、extra:包含 MySQL 解决查询的详细信息
三)索引
索引是学习数据库必知必会的一个内容,绝大部分的慢 SQL 都是由于索引设置或使用不合理导致的,学会正确使用索引能够避免 90% 以上的慢 SQL。
1、索引的用处
2、索引分类
1)主键索引
2)唯一索引
3)前缀索引
4)全文索引
5)组合索引
6)普通索引
3、索引的数据结构
1)哈希:通过索引的 key 进行一次 Hash 计算,就可以快速获取磁盘文件指针,对于指定索引查找文件非常快,但是对于范围查找没法支持,有时候也会出现 Hash 冲突的情况。
2)二叉树:左边子节点的数据小于父节点数据,右边子节点的数据大于父节点数据。
3)红黑树:红黑树是平衡树的一种,它复杂的定义和规则都是为了保证树的平衡性。
4)B 树:B树是一种多路搜索树,它的每个节点都可以拥有多于两个孩子节点。M路的B树最多拥有M个孩子节点,设计成多路是为了降低树的高度。
5)B+ 树:B+ 树是在 B 树的基础上进行改造,它的数据都在叶子节点,同时叶子节点之间还加了指针形成链表。
4、面试常见词
1)回表
2)索引下推
3)最左匹配
4)覆盖索引
5、索引优化细节
四)SQL 执行过程
当你在客户端输入一条 SQL 查询语句后,MySQL 是如何处理和执行这条语句的呢?涉及到 MySQL 的很多模块和组件,以及它们之间的交互和协作。
1、连接器:连接器负责跟客户端建立连接,获取权限、维持和管理连接
2、查询缓存:当执行查询语句的时候,会先去查询缓存中查看结果,找到则直接返回
3、分析器:进行词法和语法分析,判断是否存在词法或语法上的错误信息
4、优化器:MySQL 基于成本优化,选择最优索引和表的连接关系等
5、执行器:先从存储引擎中找到数据,如果在内存中直接返回,如果不在内存中,查询后返回
五)存储引擎
存储引擎是 MySQL 的组件,用于处理不同表类型的SQL操作。使用合适的存储引擎,将会提高整个数据库的性能 。你想过 MySQL 的存储引擎为什么默认是 InnoDB 嘛?
1、MyISAM、InnoDB、MEMORY、MERGE 引擎信息
2、MyISAM 和 InnoDB 的区别?面试高频问题
3、InnoDB 核心概念
1)表空间:InnoDB 将所有数据(包括表数据,索引,回滚信息,插入缓冲索引页,系统事务信息,二次写缓冲)逻辑地放在一个空间中,称为共享表空间。
2)段:一个索引(InnoDB 都是 B+ 索引)由两个段管理,叶子节点段(leaf segment)和非叶子节点段(non leaf segment)
3)区:InnoDB 申请空间的最小单位,由连续页组成的空间,大小为 1MB,保持不变。
4)页:InnoDB访问的最小单位,默认16KB。一个区中一共有64个连续的页。
六)日志
日志是 MySQL 数据库的重要组成部分,记录着数据库运行期间各种状态信息。MySQL 日志主要包括错误日志、查询日志、慢查询日志、事务日志、二进制日志几大类。
1、事务日志
1)重做日志 (Redo Log):InnoDB 存储引擎层的日志,通常是物理日志,记录的是数据页的更新内容。确保事务的持久性,防止在发生故障的时间点,尚有脏页未写入磁盘。在重启 MySQL 服务的时候,根据 redo log 进行重做恢复到最后一次提交事务的数据点,从而达到事务的持久性这一特性。
2)撤销日志 (Undo Log):记录数据被修改前的内容(逻辑日志,生成与操作相反的语句),可以用来在事务失败时进行 rollback,用于回滚。同时可以提供多版本并发控制下的读(MVCC),也即非锁定读。
3)doublewrite buffer
2、二进制日志 (Binlog):归档日志(二进制日志):记录的是操作而不是数据值,在主从复制中,从库利用主库上的 Binlog 进行重播,实现主从同步,还可用于数据库的基于时间点的还原。
3、错误日志 (Error Log):主要记录MySQL服务器启动和停止过程中的信息、服务器在运行过程中发生的故障和异常情况等。
七)事务
事务(Transaction)是用来维护数据库完整性的,它能够保证一系列的MySQL操作要么全部执行,要么全不执行。如果没有事务,那么数据库的数据就会发生各种错乱问题。
1、事务的概念和特性
2、事务隔离级别
1)读未提交(Read Uncommitted)
2)读已提交(Read Committed)
3)可重复读(Repeated Read)
4)串行化(Serializable)
3、ACID 属性
1)原子性(Atomicity)
2)一致性(Consistency)
3)隔离性(isolation)
4)持久性(durability)
4、事务的并发控制
八) 锁
锁是数据库系统区分与文件系统的一个关键特性,为了保证数据一致性,必须有锁的介入。数据库系统使用锁是为了支持对共享资源进行并发访问,提供数据的完整性和一致性。
1、锁的概念和作用
2、锁的类型
1)共享锁
2)排他锁
3)意向锁
4)记录锁
5)间隙锁
6)临键锁
7)插入意向锁
8)自增锁
9)死锁
3、锁的兼容性
4、加锁过程
5、事务隔离级别和锁的关系
6、MVCC (多版本并发控制)
1)特点:读不加锁,读写互斥
2)MVCC 的概念和原理
3)快照读和当前读
一)分布式事务
随着互联网的快速发展,软件系统由原来的单体应用转变为分布式应用,分布式系统环境下由不同的服务之间通过网络远程协作完成事务称之为分布式事务。
1、CAP 理论
2、Base 理论
3、二阶段提交
4、三阶段提交
5、一致性问题
6、分布式事务解决方案
1)XA 方案
2)Seata 方案
3)TCC 事务
二)MySQL 集群
假设你有一个非常大的网站,每天有数百万用户访问,数据库的读写请求非常庞大。为了应对这个高负载的情况,单个服务器可能无法满足需求,因此你需要构建一个 MySQL 集群。
集群主从机器的设计是为了实现高可用性和水平扩展。这就像是你有一个主服务器和多个从服务器,它们共同工作来处理用户请求和数据库操作。
1、主从同步
1)传统的主从复制
2)半同步复制
3)组复制
2、读写分离架构
二)分库分表
互联网发展的发展,也带来的数据量过大问题。单库单表已经不足以支撑庞大的数据量,一个表存储几十亿的数据,不得爆炸,为了解决这问题推出了分库分表的方案。
1、拆分维度
1)垂直拆分
2)水平拆分
2、主键生成策略
1)UUID
2)COMB
3)雪花算法
4)数据库 ID 表
5)Redis 生成 ID
3、分片策略
1)基于业务分片
2)哈希取模分片
3)一致性 Hash 分片
4、扩容策略
1)停机扩容
2)平滑扩容
5、分库分表引入的问题
在程序员圈子里我们经常会听到人说删库跑路,这其实是一种自嘲。删库后导致公司的产生的经济损失是需要负法律责任的,并且很可能被行业封杀,毕竟没有公司敢要一个可能删库的程序员。
<......当使用MySQL进行数据查询和处理时,除了我们前面使用的聚合函数(例COUNT、SUM)外,还有许多常用函数可用于处理数据和执行各种操作。
以下是一些常见的MySQL函......
在MySQL中,运算符用于在查询语句中执行各种操作,例如比较值、组合条件以及进行数学运算。
下面是一些常见的MySQL运算符及其简单易懂的介绍和例子:
......
我们先来问问 AI 看看: MySQL 中 NULL 值起到什么作用?
AI给出的答复:
like 在 MySQL 中也是常用的一个函数,它用于在字符串中进行模糊匹配的操作符。
它通常与%(百分号)和_(下划线)通配符一起使用,like ......
MySQL 的分组功能用于将数据按照指定的列进行分组,并对每个分组进行聚合操作,例如计算总和、平均值、最大值、最小值等。
比如我们想统计2年1班下男女生各有多少人,SQ......
排序功能在做列表的时候是经常用到的,需要按照某一个字段进行顺序排列。大家可以看自己的电商平台订单,都是按照购买日期倒序显示的,这种就是通过排序功能实现的。
比如我们想查......