blog's Issues
hexo 主题&评论&进度条&背景效果 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/ed8ce421.html
晚上折腾了下博客,稍微装饰了下,主要还是加了个评论吧,其它非常秀的插件就没有接入了,懒得折腾,好好写博客,内容才是精华。记录下折腾史: gitalk评论插件步骤:申请id和secret
「13」Linux 进程 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/ba455c1d.html#more
进程这是个老生常谈的问题,当然我不是那个老生,我只是个loser。 今天用chrome,占用很多的内存和资源,查了查,说chrome是多进程的,于是就想了解下进程一些相关的内容。主要从以下几个角度了解下进程: 来源 定义 特征 多进程如何工作? 通信
「17」chrome headless「截图/PDF/DOM...」 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/5544baea.html#more
最近在搞一个需求:html「文件」渲染成png/jpg;chrome不能装在服务器中,可以打成docker镜像。说到这个,很多人肯定说很容易啊,chrome headless有现成的,直接用,它是不香么。然而事情并没有这么简单; 难点:12341、服务器中不能装chrome2、chrome必须打在docker里面3、渲染效果要和在本地效果一样:图片不能丢失字体,不能失真。4、不能启动新的服务
go 指针和引用 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/12f03d11.html
今写代码时,传函数无意间想到一个问题,slice通过参数传递给函数,为何可以改变具体的值呢? 如何解决这个问题? 官方查文档 看源码 google看看有没有好的见解 思考🤔+冥想🧘♂️ (ps:解决问题,主要不是看结果是怎么样的,主要是考虑问题的角度)
「18」GPM-1-[初识/设计] | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/b885f9f7.html#more
前序学go有一段时间了,最近总感觉忙碌无为,也该总结下前段时间读源码的一些心得和体会了。 GPM调度算是在Go中比较经典的了,有必要深入学习下。 Go GPM设计文档 GPM设计的由来一个好的设计,总会伴随发现现有的问题,在解决的基础上考虑场景并提高扩展性,先来了解下Go为何要重新设计GPM这个模型:
go 指针和引用 | 迷茫的小螃蟹
https://blog.imrcrab.com/2020/09/23/go-%E6%8C%87%E9%92%88%E5%92%8C%E5%BC%95%E7%94%A8/#more
今写代码时,传函数无意间想到一个问题,slice通过参数传递给函数,为何可以改变具体的值呢? 如何解决这个问题? 官方查文档 看源码 google看看有没有好的见解 思考🤔+冥想🧘♂️ (ps:解决问题,主要不是看结果是怎么样的,主要是考虑问题的角度)
git cz规范提交 | 迷茫的小螃蟹
https://blog.imrcrab.com/2020/08/31/git-cz%E8%A7%84%E8%8C%83%E6%8F%90%E4%BA%A4/#more
定义官方 specification简单的说为了代码提交更加规范 场景git commit使用https://github.com/commitizen/cz-cli/raw/master/meta/screenshots/add-commit.png 使用步骤 安装nodejs,版本建议最新.官网 打开你的命令行:
「14」hexo-安装&插件 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/ae4aba0d.html#more
hexo安装及其第三方插件包下载总结,以便后续CI一次到位。
「21」-linux select源码-1 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/ba7b70bf.html#more
select poll epoll三个老生长谈的问题.这次不是来讲区别的,后续会更新一篇关于三者区别的。 前序select属于linux系列的文件系统「fs」的范畴,每次的系统调用、打开软件、启动程序等等都会涉及到文件的读写,这个是在所难免的。 那么I/O事件的基本思路:文件准备ok,开始读写,等函数返回,根据结果继续运行. 如果是自己实现,大体上无非以下思路:
Plan9 汇编小记 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/4a5093af.html#more
前序 平常coding时,偶尔会查看计算机的具体执行过程,那最基本的就是汇编了,了解汇编是调试过程中必不可少的,尤其是一些细节的处理方面.Go的汇编是Plan 9(贝尔实验室的产物),和汇编很类似。 如何得到汇编结果? 官网文档 Google 3种方式: 第一种
hexo-安装&插件 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/dfda0b8f.html#more
hexo安装及其第三方插件包下载总结,以便后续CI一次到位。
chrome headless「截图/PDF/DOM...」 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/d7afad86.html
最近在搞一个需求:html「文件」渲染成png/jpg;chrome不能装在服务器中,可以打成docker镜像。说到这个,很多人肯定说很容易啊,chrome headless有现成的,直接用,它是不香么。然而事情并没有这么简单; 难点:12341、服务器中不能装chrome2、chrome必须打在docker里面3、渲染效果要和在本地效果一样:图片不能丢失字体,不能失真。4、不能启动新的服务
categories | 迷茫的小螃蟹
Linux: 进程 | 迷茫的小螃蟹
https://blog.imrcrab.com/2020/09/24/Linux-%E8%BF%9B%E7%A8%8B/#more
进程这是个老生常谈的问题,当然我不是那个老生,我只是个loser。 今天用chrome,占用很多的内存和资源,查了查,说chrome是多进程的,于是就想了解下进程一些相关的内容。主要从以下几个角度了解下进程: 来源 定义 特征 多进程如何工作? 通信
「16」go源码words归纳 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/425d5e80.html#more
前序好久没有更新了,不是不更新,最近感冒严重,一直没好,太影响身体了…..「身体还是很重要的!」 当然了,在生病期间也看了很多东西,更多的思考了许多:人生规划的、如何学习技术、后续的生涯发展之类的。「思考的方式很多种,不建议去生病了才去思考.」 后续会更新一篇,主要是结合之前的成长和技术的壁垒来说说后续想怎么学,怎么发展,生涯规划吧。 不扯了,这篇主要想记录一些词汇,主要还是在阅读Go源码中的
「22」GPM g0和m0 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/392d66f0.html#more
前序GPM算是经典的调度模型,但是每个程序都需要一个启动的函数或者入口;GPM也不例外。直接分析源码,显得很枯燥,如果说要你设计GPM中的G和M的执行关系,你应该怎么设计呢?
「11」hexo 主题&评论&进度条&背景效果 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/e18c94ab.html#more
晚上折腾了下博客,稍微装饰了下,主要还是加了个评论吧,其它非常秀的插件就没有接入了,懒得折腾,好好写博客,内容才是精华。记录下折腾史: gitalk评论插件步骤:申请id和secret
tags | 迷茫的小螃蟹
https://blog.imrcrab.com/tags/
日行一步...
Go Context包使用 | 迷茫的小螃蟹
https://blog.imrcrab.com/2020/09/07/Go-Context%E5%8C%85%E4%BD%BF%E7%94%A8/
用Go的都离不开Context,引用官网的一句话来描述Context包: Package context defines the Context type, which carries deadlines, cancellation signals, and other request-scoped values across API boundaries and between processe
「7」Go Context包使用 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/410dfaec.html#more
版本12◯ go versiongo version go1.14.9 darwin/amd64 用Go的都离不开Context,引用官网的一句话来描述Context包: Package context defines the Context type, which carries deadlines, cancellation signals, and other request-
vscode 常见插件及其使用 | 迷茫的小螃蟹
https://blog.imrcrab.com/2020/08/31/vscode-%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98/#more
vscode中一些常见的坑点… 插件样式方面: Indent Rainbo Bracket Pair Colorizer # 括号颜色 Chinese Language # 汉化
「10」go mutex解读 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/ff0d6c2b.html#more
上次说到rwmutex读写锁,其实就是加强了锁的粒度,区分读和写时不同的情况,核心**:写优先于读。这次来看看mutex,go中的锁是如何实现的,用一张图来概括整个流程:
go mutex解读 | 迷茫的小螃蟹
https://blog.imrcrab.com/2020/09/21/go-mutex%E8%A7%A3%E8%AF%BB/#more
上次说到rwmutex读写锁,其实就是加强了锁的粒度,区分读和写时不同的情况,核心**:写优先于读。这次来看看mutex,go中的锁是如何实现的,用一张图来概括整个流程:
「19」GPM-2.1-调度流程 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/5c6a362f.html#more
工欲善其事,必先知其所以然……学习GPM调度之前,先看下源码部分的准备工作吧,不然一脸茫然的看源码,基本不会有太多的收获. 函数& 变量初识
go rwmutex解读 | 迷茫的小螃蟹
https://blog.imrcrab.com/2020/09/17/go-rwmutex%E8%A7%A3%E8%AF%BB/
好久没有更新文章了,表达能力生疏了许多😄.... 今天扯扯:rwmutex 被称为读写锁。一说到【锁】最直接的联想可能就是lock()、Rlock()、unlock()、Runlock()之类的,但是作为程序猿,还是要了解下底层的设计和相关的逻辑实现,以便于把这种锁的设计**应用到其它场景中,好了,不废话了,开题吧。 从锁的结构设计-->加锁的过程--->加锁的粒度---->解
「20」博客诡异事件 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/5ce14ff5.html#more
博客CI CD崩了 就在刚才修改了部分的config配置,后打了tag push了上去, oh……GG了
重拾那份折腾之心,坚定脚步 | 迷茫的小螃蟹
Go Context包使用 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/2a958d37.html#more
版本12◯ go versiongo version go1.14.9 darwin/amd64 用Go的都离不开Context,引用官网的一句话来描述Context包: Package context defines the Context type, which carries deadlines, cancellation signals, and other request-
「23」GPM main入口函数 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/9bb71eca.html#more
前面g0和m0瞎扯了部分的入口和一些关键的点。 本来应该扯扯shedule调度方面的知识,但是这个先往后放一节吧, 先学习下这个「入口函数」,毕竟对于每一个项目都会有一个入口的相关逻辑,那么go源码是怎么处理的? 有没有什么可以借鉴的嘞?!
「15」Plan9 汇编小记 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/2ce846ed.html#more
前序 平常coding时,偶尔会查看计算机的具体执行过程,那最基本的就是汇编了,了解汇编是调试过程中必不可少的,尤其是一些细节的处理方面.Go的汇编是Plan 9(贝尔实验室的产物),和汇编很类似。 如何得到汇编结果? 官网文档 Google 3种方式: 第一种
go源码words归纳 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/ac0cffd4.html#more
前序好久没有更新了,不是不更新,最近感冒严重,一直没好,太影响身体了…..「身体还是很重要的!」 当然了,在生病期间也看了很多东西,更多的思考了许多:人生规划的、如何学习技术、后续的生涯发展之类的。「思考的方式很多种,不建议去生病了才去思考.」 后续会更新一篇,主要是结合之前的成长和技术的壁垒来说说后续想怎么学,怎么发展,生涯规划吧。 不扯了,这篇主要想记录一些词汇,主要还是在阅读Go源码中的
hexo 主题&评论&进度条&背景效果 | 迷茫的小螃蟹
晚上折腾了下博客,稍微装饰了下,主要还是加了个评论吧,其它非常秀的插件就没有接入了,懒得折腾,好好写博客,内容才是精华。记录下折腾史: gitalk评论插件步骤:申请id和secret
git 初阶:安装配置 ~1 | 迷茫的小螃蟹
自盘古开天辟地~~~~扯远了……完整的分享下Git的使用和学习的知识点,之前章节中的Git常用技巧是我之前部分快速使用的场景,适合于有经验的开发者,现在来系统的分享下对于Git的理解,也算是自己学习的记录。 前景SVN估计是家喻户晓了,一直被用作'版本管理'和代码仓库。(ps:不算是完整的版本管理.)Git的出现,是linus之父休假时产出的“作品”,版本管理 & 代码
Linux: 进程 | 迷茫的小螃蟹
https://blog.imrcrab.com/archives/ad6916ae.html
进程这是个老生常谈的问题,当然我不是那个老生,我只是个loser。 今天用chrome,占用很多的内存和资源,查了查,说chrome是多进程的,于是就想了解下进程一些相关的内容。主要从以下几个角度了解下进程: 来源 定义 特征 多进程如何工作? 通信
hexo 主题&评论&进度条&背景效果 | 迷茫的小螃蟹
晚上折腾了下博客,稍微装饰了下,主要还是加了个评论吧,其它非常秀的插件就没有接入了,懒得折腾,好好写博客,内容才是精华。记录下折腾史: gitalk评论插件步骤:申请id和secret 配置文件:1234567891011121314151617gitalk: enable: true github_id: crab21 # GitHub repo owner repo: blog # Re
Git常用技巧 | 迷茫的小螃蟹
https://blog.imrcrab.com/2020/09/01/Git%E5%B8%B8%E7%94%A8%E6%8A%80%E5%B7%A7/#more
学习方式多练多得,直接学习官网理解。 以下仅仅是部分用到的场景和部分场景记录,不代表全部情况,如有错误,请及时指正。 Git版本:121944 ± git version git version 2.28.0 先说说Git的常用命令:(可跳过)
重拾那份折腾之心,坚定脚步 | 迷茫的小螃蟹
Go reflect ~ DeepEqual | 迷茫的小螃蟹
https://blog.imrcrab.com/2020/09/18/Go-reflect-DeepEqual/
今天无意中看到Go101发了一个推特: 123456789101112131415161718package mainimport ( "fmt" "reflect")func p(a, b interface{}) { fmt.Print(":", reflect.DeepEqual(a, b))&#
Git GPG签署工作 | 迷茫的小螃蟹
https://blog.imrcrab.com/2020/09/02/Git-GPG%E7%AD%BE%E7%BD%B2%E5%B7%A5%E4%BD%9C/#more
GPG场景 Git 虽然是密码级安全的,但它不是万无一失的。 如果你从因特网上的其他人那里拿取工作,并且想要验证提交是不是真正地来自于可信来源, Git 提供了几种通过 GPG 来签署和验证工作的方式。 最终效果:如下图所示 安装过程windows安装地址: 点击下载 mac os为例:
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.