ZEROMAKE | keep codeing and thinking!
2019-07-30 | mac

Mac 环境配置

最近向公司申请了新的 19MacBook Pro,需要重新搭建环境,因为一些网络上的资料过时的原因,记录一下搭建流程备忘。

阅读更多 >>>
2019-04-12 | helm

修改 helm 模板支持阿里云

  1. 最近公司内部需要在 k8s 上部署一些东西,然后发现现在有了一个 helm 的工具能够快速的部署。
  2. 对于普通的 k8s 阿里云上则需要有一些特殊的操作,这边记录一下如何修改 helm 的模板以支持阿里云的部署。
阅读更多 >>>
2019-03-22 | docker

docker 容器调试新姿势

  1. 我在平时工作中经常使用 docker 来创建自己的开发环境,比如 mysql, redis 之类的。
  2. 有些时候需要把现有的容器里的服务配置进行变更,docker exec 进入容器后发现很多基础命令工具(vim, nano)都没有,这让我很苦恼。
  3. 再后来看到 @github/ayleikubectl-debug 发现了容器之间可以共享各种资源。
  4. 但是 kubectl-debug 只能够提供给 kubernetes 进行使用,所以我这边模仿了 kubectl-debug 写了一个 docker-debug
阅读更多 >>>
2019-03-09 | docker

(翻译)docker 镜像中有什么?

翻译自 whats-in-a-docker-image

这是一个很好的问题,在你知道答案之前,docker 镜像看起来很神秘。

我不仅想告诉你答案,还想告诉你我是如何找到这个答案的。

阅读更多 >>>
2019-02-28 | business

位操作的应用

  1. 最近在工作中、技术问答、开源库中常见到不少的位操作。
  2. 但是却发现蛮多人知道有位操作,但是应用于业务项目中的很少,经常是见到没有反应过来。
  3. 这里我介绍一些位操作的在业务中的使用,希望大家在见到位操作时能够想起这是什么。
阅读更多 >>>
2018-09-14 | interview

面试见闻

  1. 8 月 29 日被辞退后到 9 月 13 日之间的一些面试见闻。
  2. 这里不会写出面试的公司名字。
  3. 这里不会出现具体薪资。
  4. 具体的面试题很多都忘了,这个一个不好的事情,希望下次改变。
阅读更多 >>>
2018-08-010 | protocol

HTTP2 协议解析

最近工作都在做跟 http2 协议有关的东西,记录下协议的格式与资料。
下篇(这篇)文章中会简略的写出一个支持高并发的 golanghttp2 转发器。

阅读更多 >>>
2018-06-28 | algorithm

leetcode 1-5 算法题

最近也还是没怎么写博文,所以打算直接找个不用怎么难写的算法来写写博客。
为了加深印象,需要书写博文进行归纳,并且进行伪代码连续,以及手写算法。
这边会缓慢更新。

阅读更多 >>>
2018-05-23 | asyncio

asyncio 的流量控制

最近在研究 asyncio ,了解到对 socket 的操作以后发现读取数据与写入数据有着完全的不同。
然后发现了 asyncio 有着一套 Flow control callbacks 来控制读取写入。

阅读更多 >>>
2018-05-04 | python

python 编码

最近对 python 的编码感觉到很迷,python2python3 的 str bytes 完全不一样。
这边记录下各种方式输入的字符串编码,以及各种编码对象的转换备忘。

阅读更多 >>>
2018-03-12 | protocol

ipmsg 协议

最近看了一下 飞鸽传书(ipmsg) 突然对它的协议有了兴趣,这边找了官方的来自行翻译

阅读更多 >>>
2018-03-07 | resetful

openapi3 使用

  1. 最近一直在用业余时间写一个个人项目,其中为了学习各种 python 新特性, 使用了各种新技术其中就使用了 openapi3 来描述 api。
  2. 这篇博文就来说明和封装一套生成 openapi 配置。
  3. 这里只讲述 openapi3 的配置结构,并与官方文档统一使用 yaml 格式来说明。
  4. 由于使用 python 代码中的配置与 json 格式相同。
  5. 在阅读此文前请自行了解 json, yamlpython 生成代码部分可无视。
阅读更多 >>>
2017-11-22 | python

pipenv 使用

最近用了pipenv感觉挺不错的,写篇博文来推广一下。

阅读更多 >>>
2017-11-22 | vue

element-ui 升级 2.x 问题

最近在升级element-ui到 2.x 其中碰到一些坑标记一下。

阅读更多 >>>
2017-010-31 | deploy

ci 自动部署

很久没写博文了,最近正好公司内部需要进行 ci 自动部署,就写一篇 ci 自动部署。其中分为两种,公开项目,私有项目

阅读更多 >>>
2017-07-30 | source

preact 执行流程

@ToPeasIssue来描述下 preact 的流程。
这里决定使用我自己改过的zreact的 flow 分支,这个分支的代码不会再变。

阅读更多 >>>
2017-07-26 | source

preact 源码解读(2)

这里是第二篇,第一篇在这里
这次讲 Component,以及它的一些轻量依赖。
顺便说下司徒正美的 preact 源码学习
感觉比我写的好多了,图文并茂,还能提出和其它如 React 的源码比较。
我唯一好点的可能就是代码几乎每行都有注释,并且使用了 typescript 添加了类型的标注。

阅读更多 >>>
2017-07-24 | source

preact 源码解读(1)

和上次说的一样这次带来preact的解读
preact 实际上把它当作是一个精简版react就好了。
这次我抄下了preact,并且改写了代码, 命名为zreact
把之前将事件,props 之类的单独放出来,这样这份zreact
可以支持 ie8,虽然并没有什么用。
这次代码解读顺序按使用 preact 的代码顺序。
这里是第一篇,createElement,也就是 vue,react 的 render 所返回的 VNode 对象。
平常则是使用 babel+jsx 来生成 createElement 调用。
vue 常用则是 template,但是通过 webpack 会做到预先转换为 render。

阅读更多 >>>
2017-07-010 | source

promise-and-co-make

  1. 上篇博客写着写着没动力,然后就拖了一个月。
  2. 现在打算在一周内完成。
  3. 这篇讲Promiseco的原理+实现。
阅读更多 >>>
2017-06-01 | vue

vue-ssr-static-blog

自上次博文又快过去一个月了,感觉之前想写的东西现在写了也没什么意义。
这回来说下我博客改造成vue服务端渲染并且生成静态html
这样就可以放到 github-pages 上了。

阅读更多 >>>
2017-05-07 | istanbul

karma 使用 webpack 的代码覆盖率测试

距离上一次博客有 2 个月了,倒不是没有可写东西就是提不起劲写。
不说这些了这次写下我使用 karma + webpack 中遇到的代码覆盖率问题。

阅读更多 >>>
2017-03-01 | middleware

为 koa 定制 webpack 的中间件

在前面的对vue-ssr改造为koaweb框架,我使用了一个第三方 npm 库。
包名为 koa2-webpack-middleware-zm 已迁移到koa-webpack-middleware-zm
这个包是我自己因为 ssr 的特殊需求github上并没有合适的包。
所以自行参考了koa-webpack-middleware后写出的包。
并且修复原有包的一些 bug。
这篇博文我将写以下内容

  • koa 中间件的编写。
  • webpack-dev-middleware这种express中间件改造为一个koa中间件。
阅读更多 >>>
2017-02-19 | vue

vue-ssr-koa2

在之前的vue-ssr中我是使用 express 来做 ssr 服务器+api 服务器。
但是有些时候可能我希望换一个 web 框架。
所以就有了这篇闲的慌系类。
vue-ssr 中使用 koa2 来替代 express

阅读更多 >>>
2017-02-18 | vue

vue-ssr

自从前端技术栈换到 mvvm 之类的以后网站的源码查看就只会有一些 js 了,对于用户是没什么问题但是却对 seo 有很大的问题。

因为百度之类的爬虫不会执行 js 来渲染所以无法得到内容。大部分主流的mvvm框架都有了 ssr(Server Side Rendering) 意为服务端渲染。
不是手游的 ssr,好像暴露了什么

阅读更多 >>>
2016-11-07 | vue

vue 不使用构建工具懒加载

公司项目都是后台管理项,肯定是导航加主显示区的方式切换,然后就想着用 vue_router 看看。
然后发现 vue_router 的 component 是同步加载的。。要是后台功能多 js 就很大了,这个就是所谓的单页应用。
但是单页应用不用 webpack 打包手动把 js 写一个也太蛋疼了。然后发现了 webpack 用 chunk 可以异步会把每个路由的 js 单独打包。
具体的原理下面也会讲解。

阅读更多 >>>
2016-11-04 | vue

vue 不使用构建工具

看到各种 vue 入门全部都是 webpack 的我表示没有什么问题。但是却发觉无法将这些 webpack 的工作流推荐给其它人。一说 npm,webpack,babel 什么的纷纷表示太麻烦。

也许他们还是更喜欢 cdn 引入,手写 js 吧。所以这个就是纯粹的 vue 不用 webpack 不用 babel。直接用我们喜欢的 es5 的 js 写。等到觉得 vue 的好再推荐他们 webpack 什么的。

然后模块化还是需要一个所有我选择了 requirejs。

阅读更多 >>>
2016-08-12 | modular

javascript 的模块化

这个些模块加载都是为了更好的管理 js 文件,以及引用其他文件更加方便,并且使每一个模块的全局域不再互相污染。模块化后可以使用npm进行管理以便分享。

阅读更多 >>>
2016-01-03 | android

Android 的 aidl 相互通信机制

原因是当我们的 Client 和 Service 不是同一个进程时是无法直接使用的,而在 android 中进程间通讯的方法有 Activity、Content Provider、Broadcast 和 Service。
其中 Activity 需要界面,隐式调用没有回调 Broadcast 的接收对象经常会重新被实例化,且以上两种都是通过 intent 传送。回调不能完成交互。
Content Provider 则只提供数据,Service 有 aidl 这门进程间调用函数的机制。

阅读更多 >>>