cs-moushuai.github.io's People
cs-moushuai.github.io's Issues
数据库事务管理详解 | Moushuai
https://cs-moushuai.github.io/posts/shu-ju-ku-shi-wu-guan-li-xiang-jie/
基本概念
事务(transaction):是一组 SQL
语句,是保证逻辑数据完整性和可恢复性的重要利器
回退(rollback):撤销指定 SQL 语句
提交(commit):将未存储的 SQL 语句写入数据库表
保留点(savepoi
数据库存储引擎对比 | Moushuai
https://cs-moushuai.github.io/posts/shu-ju-ku-cun-chu-yin-qing-dui-bi/
存储引擎是什么?
存储引擎是数据库的核心
百度百科
MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获
数据库索引详解 | Moushuai
https://cs-moushuai.github.io/posts/shu-ju-ku-suo-yin-xiang-jie/
什么是索引?
正常使用 select
需要对表中所有元素进行遍历,效率极低,而索引是对数据库中列进行有序化的数据结构,使用其可以快速访问特定信息
索引优点
通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性;
可以加快数据的检索速
GET vs POST | Moushuai
https://cs-moushuai.github.io/posts/get-vs-post/
前言
GET 和 POST 都是 HTTP
最常用的两种方法,两者在计算机网络中都有着举足轻重的地位,也有很多关于安全性,便利性方面的讨论
本篇文章,笔者会详尽的讨论两者的方方面面
GET
GET 用来获取资源
GET 方法简约版报文是这样
递归 vs 迭代 | Moushuai's blog
https://cs-moushuai.github.io/posts/di-gui-vs-die-dai/
首先提出两个问题
所有递归都可以改写成循环吗?
改写后会有什么好处?
接下来我们仔细分析下具体的区别
递归转换为迭代的方法
对于递归而言有两种转换方式
一、直接转换法
方法:使用变量保存中间结果
计算阶乘:
long fact(int
C++ 实现高性能内存池 | Moushuai
https://cs-moushuai.github.io/posts/c-shi-xian-gao-xing-neng-nei-cun-chi/
本篇文章将介绍内存池的原理以及实现
项目链接:GitHub
什么是内存池?
内存池和线程池类似,一次申请大量的内存,程序需要内存就从池子里拿,析构就将内存放回池子里
内存池的优缺点
优点
速度快,
因为内存池绝大部分情况下是用户态、无锁、
僵尸进程与孤儿进程 | Moushuai
https://cs-moushuai.github.io/posts/jiang-shi-jin-cheng-yu-gu-er-jin-cheng/
什么是僵尸进程,什么是孤儿进程,会带来什么问题,如何解决?
基本概念
子进程由父进程创建,而子进程和父进程的运行是异步的,谁也不确定谁先运行,当子进程完成工作时,父进程需要使用
wait 或 waitpid 来获取子进程终止状态
孤儿进程
contact | Moushuai's blog
https://cs-moushuai.github.io/contact/
Moushuai's blog
C++ 构造和析构的顺序 | Moushuai
https://cs-moushuai.github.io/posts/c-gou-zao-he-xi-gou-de-shun-xu/
构造函数调用顺序
调用虚基类构造函数(从左到右)
调用非虚基类构造函数(从左到右)
调用成员变量构造函数(按声明顺序从前往后,而非初始化列表顺序)
调用类自身构造函数的语句
析构函数调用顺序
与构造函数相反
执行自身析构函数语句
析构
对于 C++ 这门语言的一点思考 | Moushuai
https://cs-moushuai.github.io/posts/dui-yu-c-zhe-men-yu-yan-de-yi-dian-si-kao/
注:本文部分内容可能引起争议,如有错误,敬请指正
第一次正儿八经的学习 C++ 是在 20 年的 3 月,现在已经是 22 年的 12
月了,差不多快三年的时间,中间来回读了几遍的 C++ Primer 及
Effective C++,
C++ 为何构造函数和析构函数中不能调用虚函数? | Moushuai
前言
之前看过很多书都提到 C++
在构造函数和析构函数中不能调用虚函数,但当时的原因记得是构造时没有虚函数指针,析构时虚函数指针已经析构了,所以不能调用,现在想来似乎有些问题,毕竟虚函数指针初始化可以在调用语句前,析构可以先调用,最后才析
浅谈网络 I/O | Moushuai
https://cs-moushuai.github.io/posts/qian-tan-wang-luo-i-o/
面试问到网络或者 Redis 时常考题
基本概念
Socket
套接字,用于网络中不同主机上应用程序间双向通信的端点的抽象,他将复杂的
TCP/IP 隐藏在 Socket 接口后面
Socket 地址 = IP 地址:端口号
不同的协议,
HTTP 详解 | Moushuai
https://cs-moushuai.github.io/posts/http-xiang-jie/
一、基本概念
超文本传输协议(Hyber Text Transfer
Protocol,HTTP)是万维网的基础,用于浏览器与服务器通信,通过超文本链接加载网页。HTTP
属于应用层,基于 TCP/IP 通信,端口默认为 TCP 80
H
数据库锁详解 | Moushuai
https://cs-moushuai.github.io/posts/shu-ju-ku-suo-xiang-jie/
前言
锁是并发编程中访问同一资源的同步机制,保证了数据的一致性和有效性
前面的文章提到数据库事务的
ACID 特性和 4 个隔离级别,这次来看看如何用锁实现事务的隔离性
按类型分
乐观锁
- 概念
假设一般数据不会发生冲突,只有在提
friends | Moushuai's blog
https://cs-moushuai.github.io/friends/
Moushuai's blog
锂电池保养手册 | Moushuai's blog
https://cs-moushuai.github.io/posts/li-dian-chi-bao-yang-shou-ce/
为什么有的人电池用了半年还有 100%,而有的人就剩下
90% 了呢?
原则
电池充电可以比喻成人吃饭,尽量少吃多餐
现代锂电池充电规则
注意点
避免在 20% 以下使用,尤其是 5%
以下
电量保存在 25%-75%
避免高温低温时使
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.