Tairan's Story

2019

Aug 11

What Is Harmony OS

华为的鸿蒙操作系统寄托了无数人的希望,一经发布就引擎了中文全网的热议,但是这个鸿蒙操作系统到底是一个什么样的东西呢?除了官方的定义之外,着实让众人摸不着头脑。 鸿蒙OS,到底是又一个借壳的牛皮,等待着被打脸;还是真的牛逼,即将迎来国人甚至全球的热捧? 在华为开发者大会上,余承东着重提出了几个关键词:微内核、分布式,这几个关键词让众多搞计算机的从业人员一片哗然,似乎全世界顶尖的开发团队都是傻逼,只有华为才掌握了技术的未来。因为大家对这几个关键词的认识和余承东的介绍相差甚远,甚至颠覆了认知。 在操作系统中,微内核不是什么新鲜事,上个世纪末期,就发生过一次最著名的论战。这次论战是Linux Kernal和MINIX之间的microkernel(微内核)与monolithic(宏内核)之争。微内核和宏内核并没有谁比谁更先进,大家都是在不同的场景下做出的正确选择。随着时间的推移,当今内核界,互相学习 …
Aug 11

Getting Start Java in China

在中国国内的开发者有一项基本的技能必须要掌握,否则永远都是不入流的开发者。 是什么技能那么重要呢? 通常我会把这个技能简称为翻墙,但是这对某些来说似乎有些政治不正确,那么我们换个说法,就是如何搞定被墙的软件库。 在大企业内工作的开发者,会享受着丰富的资源,更快的带宽、已经配置好的镜像库、甚至还有自动翻墙。但是在家工作,或者那些小团队是怎么活着的? 这里记录一些Java相关开发所需要解决的问题,不完全记录。(For Windows only) Maven 国内有不少镜像,目前使用阿里的多一些,在%USERPROFILE%\.gradle\init.gradle文件中配置阿里的镜像 allprojects { repositories { def ALIYUN_REPOSITORY_URL = …

more

Aug 9

微服务要素

时至今日,微服务已经遍地开花,属于成熟的技术。一个基本合格的微服务应该是这样的: 网关 如果每个服务是业务担当的话,那么网关则是名副其实的技术担当。作为网关,它承担了诸多重任: 拒载, 当一些恶意用户或者不符合访问要求的客户端访问的时候,此时网关则对它们进行拒载 限流, 如果把互联网比作信息高速的话,当服务出现了临时故障,无法满足更多的请求,那么网关则对来访者进行限流 熔断, 当访问出现故障的时候可以立即停止响应,以免造成更大面积的损伤。 聚合, 将后端多个API合并成一个对外提供服务 认证 来者必须亮明身份,否则不提供服务 外部用户, 谨慎又谨慎的对待一切外部来访者,万一它是个坏人 内部用户, 内部用户的特点,除了在内部网络访问服务之外,也需要从互联网进行访问 服务注册与发现 微服务的特性就是将服务按照业务边界进行拆分,一个完整的商业会涉及到很多很多的服务,那么使用 …
Aug 3

Great China

不知何时起,伟大的领袖总要提出一个伟大的口号,比如Make America Great Again,现在又一位伟大的领袖提出了网路空间主权。 自从有了网路空间主权,世界各地的互联网若要进入中国,就必须要遵守中国的法律。这可让以Google、Facebook为首的不遵守中国法律的公司抓破了头皮。毕竟他们一开始的目标就是星辰大海,凡是能连上互联网的都是他们的子民。但是这种行为严重侵犯了一个具有网路空间主权的国家利益。 互联网也是有国界的,进出都要登记,跟物理世界一样,办护照,以及出入境手续。 那些星辰大海的公司,必须要改变自己的基础架构才能符合当地法律要求,无奈,成本巨大,只好一直游离在主权边界之外。 由于互联网的特性使然,还是有不少人需要交流,注意,仅是正常的工作交流,网路空间主权内外一起齐心合力解决这个难题。同样是以Google为首,纷纷提供了是所谓的各种软件信息等的中国镜像。 主权内的居 …
Jul 29

Git 最佳实践

长话短说,仓库内部采用 Git flow 模式,仓库之间采用 GitHub flow模式。 因为Git是一个分布式仓库,所谓分布式仓库就是每个仓库都是独立、平等的个体。所谓仓库内部,指的是某一个仓库内部,而仓库之间,则是指的是采用fork的方式建立的多个仓库之间。 开始之前需要先了解下什么是Git flow什么又是GitHub flow。 Git flow GitHub flow 这两个不是谁替代谁的关系,而是他们适用的场景不一样,Git flow专注的是软件发布模型,作为一个商业软件,只有一个master分支是远远不够的,因为你的用户不太可能都采用同样的版本,并且在有新版本后统一更新,即使是互联网只有服务器端的项目也会面临组织内部不同服务之间的版本依赖问题。因此,遵循Git flow的建议,辅以Git flow extensions在仓库内部维护完整的分支和Tag,如同它文档标题 …

more

Jul 28

荒岛生存

周末在家打开B站客户端,然后就停不下来了。连续看了3场荒岛生存的视频,一个老外的,一个中国小哥,一个中国小妹。 贝爷的野外生存节目名声在外,但跟普通人似乎有些遥远,总觉得贝爷的是野外生存教学片。而这三个荒岛生存的vlog,看着更接地气一些,虽然跟普通人还是有点远。 老外的名字叫信誓蛋蛋,在国内很火,节目中90%的中文对白,简直就是为中国观众打造的。在这三组节目中,信誓蛋蛋的专业技能是最好的,制作各种生存工具,除了实用之外,还很美观,编的草席,简直就是艺术品。加上钢弹的身材实力圈粉,虽然比贝爷贴近了一些人民群众,但还是有些遥远。 中国小妹是曹导导,选择了跟信誓蛋蛋同一个岛屿,不过她就是来打酱油的,带着专业的装备,但是基本上都没有发挥什么作用,各种挑战都是以失败告终,看似一个独立女性,实际则是富家子弟,来模仿一下名人,体验生活来的。中国人、女生、这几个标签还是很吸引眼球的。 中国小哥是探索兄 …
Jul 21

使用 Hugo 写作

当做一件事情的时候,若动机不纯,大概率会失败,或者坚持不下去。之前,借着学习GraphQL之名,重拾在GitHub上写作,现在放弃了。 作为一个技术爱好者,掌握了很多技能,而且还对刚出现的技术怀有热情之心,可在实际工作中会用到的确实其中一小部分。当然,高层次的技术和原理还是经常用到, 如:设计模式、架构,数据结构、算法等。但技术细节,可能在工作中永远也用不到。 最近在公司里扮演的角色是后端开发,若要用到GraphQL,则需要前端配合,若要前端配合,要说服很多人,而且还要替他们踏平日常工作中可能会遇到的坑。 太烦,于是使用Gatsby写博客之事,就搁浅了。 博客,中断了多年,但写作并没有,文字分散在微博,豆瓣,知乎,简书等各处。 近年来,国内站点使用越来越痛苦,自己的内容还是由自己来控制吧,重新回归到GitHub是必要的。 虽说互联网是有记忆的,但中国的互联网除外。 时代在进步,现在静态站 …

2012

Apr 23

使用 Octopress 写博客

Git改变了众多程序员的生活,让写代码真正的成为了生活的一部分。GitHub让团队合作变得更容易。除了代码,博客也可以如此。 Jekyll就是将博客托管到Github的一个工具,它把你的博客从Markdown或者Textile格式转成HTML页面,Github 提供的 Pages则负责了博客的发布工作。 Octopress 则是在 Jekyll 的基础上提供了显示样式和一些插件,让博客变得更美,部署更容易。 Github 支持 CNAME ,允许你将自己的独立域名解析过来。 使用 Octopress 写博客的流程通常是: 在Github上创建特定名称的仓库如 tairan.github.com 其中 tairan 是我的 Github 登录帐号, 注意: 在此仓库的管理员页面是没有 gh-page 选项的 从 octopress 把代码克隆到自己的仓库中 git clone …

more

Apr 15

使用 Go 调用 Windows API

Go 通过 cgo 可以利用现有C语言库 例如在 Windows 中使用 Go 调用 Win32 API 首先安装必要的工具 Go MingW %GOPATH% +- src +- w32api +- kernel.go +- testapp +- main.go +- bin # go install testapp +- testapp.exe +- pkg # go install w32api +- windows_386 +- testapp.exe 包装 Windows API package w32api // #define WIN32_LEAN_AND_MEAN // #include <windows.h> import "C" import "syscall" func …

more

2011

Dec 2

我的 Kindle 3

经常阅读的人应该入手一部电子阅读器,在信息时代我们的时间都已经分割成若干的碎片,阅读的场所随时都在变化,此外出门随手带上几本书也是常有的事情,如果书籍电子化了,随身带上一个小图书馆也不是什么难事。 根据自己的喜好,我选择了 Amazon 的 Kindle 3,最近 Kindle 4 touch 也出来了,如果也需要的话可以考虑入手一部。在使用 Kindle 3 的过程中我遇到了一些事情,现在记录下来。 我买的是 Kindle 3.5.1 WIFI 广告版,主要的原因是价格,虽然 Kindle 的价格已经比较低廉,但是工资有限需要用钱的地方又很多,所以选择了既能阅读又少花钱的版本。很多人担心广告版会到处铺满广告影响使用,实际上广告只会出现在2个地方:一个是待机屏幕,另一个是 Collection 的下脚,也就是所有书籍目录的下面,不是某一本书的目录。广告的内容大都是一些打折信息,曾经有人出钱 …

more

© Copyright 2019 Tairan Wang