🌓

MySQL的存储与索引(InnoDB)

MySQL 是当下一款主流的关系型数据库,它所有的数据均以磁盘文件的方式存储。在日常开发中我们都会听到许多为了加快 SQL 查询的效率而添加索引,同时许多文档也都会告诉我们要添加太多的索引, 索引不要太长, 使用数字或者空字符串来代替 NULL 等等的许多建议。那么为什么会有这些建议?这些建议又是否正确?这些答案都能从MySQL数据的物理存储方式中找到。 一...

阅读全文

Go性能分析工具

对于 Golang 程序性能分析来说,pprof 一定是一个大杀器般的存在。主要可以分析 CPU、内存的使用情况、阻塞情况、Goroutine 的堆栈信息以及锁争用情况等性能问题。 pprof 是一个性能分析工具,Go 在语言层面就内置了 profile 采样工具。这会涉及到 runtime/pprof 与 net/http/pprof 这两个包。但本文...

阅读全文

生,活

晃眼间大半年的休闲时光过去了,平淡而消沉地惶惶不可终日。混吃等死四年多,有可能即将面对人生的又一次十字路口,思量再三,发现终归是凡夫俗子一介草民,个人的选择终究会湮没在历史的进程中,索性随波逐流,逃离现场,美其名曰无欲无求,人各有志。 越来越多的故人失去联系,仅能从偶尔的一条朋友圈窥得一丝身影,惊然发现竟恍如隔世,不知不觉间发现自己正一步步的走向荒原、孤冢。...

阅读全文

手把手教你用APIFlask做毕业设计后端—基本简介与Hello APIFlask!(一)

本文项目对应地存储库: https://github.com/Farmer-chong/HelloAPIFlask 最近正值毕业阶段,相信许多人的毕业设计都无不例外的选择了Web相关的内容,毕竟这个比较容易实现。我发现许多人都出于从众心理无不例外的使用了Spring全家桶,Spring有着很庞大的生态、久远的历史以及很丰富的社区资料,这使得它被许多...

阅读全文

用Rust为Python加双翅膀

最近在学习Rust,这是一门系统级语言。保证安全的同时摆脱了GC, 它很香同时也很难上手, 刚学完一点皮毛知识决定做个小玩意儿玩玩,是骡子是马总要拉出来溜溜~ 目前个人认为Rust在性能上是可以和C++媲美的一门语言,既然如此那就用它来为Python加个速吧!😊 起步准备为Python加速与写C语言扩展类似,最终通过pyd来调用。在此之前我们用到Rust的...

阅读全文

校招杂谈

秋招结束后就一直想写一篇总结,但个人比较懒躺平了好久:D。最近老师给我布置了个任务写一下秋招这段时间的面试经验总结, 就不继续鸽了吧😄 继回顾完大学生涯后再来看看近段时间的校招悲剧吧 :( 如果不读研,校招可以说每个人一生只有一次,当你毕业了也就失去应届生这个身份了也就不能参与校招了。因此校招这个机会是十分重要且难得的,一定要尽早准备参加,重视重视再重视!...

阅读全文

Review of life in university ✔

最近秋招尾声,对于职场小白的我来说有许许多多不懂、迷茫得地方。幸运的是我有着几个愿意听我埋怨,在我面试紧张时听我话痨,在我迷茫时给予我中肯建议的朋友,万分感谢! 过去的已无法改变,总结一下过去四年发生的点滴无论好坏,也叫作给自己一个交待吧。毕竟我们不也天天code-review么 不知不觉四年就过去了,最近经历了秋招见识到了找工作的艰辛,也有收获到了offe...

阅读全文

A distributed system with Go

从上学期开始,学校的教务系统更新了。新版的正方多了一个负载均衡的功能,但无奈实在做的太差了!为什么这么说尼?
因为在上学期抢课的时候入口网关依旧拉闸,而真正的后端服务器访问速度比德芙还丝滑。因此暂将锅甩给负载均衡服务器。既然学校的负载均衡拉闸,那么就有了 “帮学校做负载均衡” 的想法。
大体的思路就是,通过扫描内网网段发现隐藏的地址,然后负载均衡这些隐藏的地址。
既然是负载均衡,第一时间想到的就是Nginx了,通过资料搜集,大致确定了基本的流程,因此有了这么的这个流程图:

阅读全文

新版正方教务系统登录实现

最近开学后相信很多同学都发现课表小程序等无法使用了,这是因为学校更新了正方教务系统,导致了大批基于旧版正方系统的校园小程序无法继续爬取课表。 之前曾在GitHub上看到过本校师兄开发的school-api–一个基于旧版正方的python SDK,但新版无法使用。因此花了两天时间研究了下新版正方的登录(能登录后续的就EZ啦~) 既然都弄了,因此计划开发一个新...

阅读全文

Golang基础语法笔记 | 数组、切片&映射

Go入门和《Go语言实战》的笔记,本篇总结了基础的数组、切片和哈希表的内容。 数组数组是切片和映射的基础数据结构,因此了解数组的工作原理有助于理解切片和映射。和C语言一样,在go中数组也是一段连续、长度固定用于存储同一类型元素的连续块。 声明和初始化数组的声明和初始化,和其他类型差不多。声明的原则是: 指明存储数据的类型。 存储元素的数量,也就是数组长度。...

阅读全文