蚂蚁集团去中心化的高性能存储服务 LiteIO 正式开源

1 月 25 日
阅读 5 分钟
622
LiteIO 是一款高性能、易扩展的云原生块设备服务,专为超融合架构下的 Kubernetes 设计。在蚂蚁集团内部孵化 3 年并大规模应用在生产环境,为蚂蚁集团全数据型、存储型产品提供稳定、高效、易扩展的磁盘服务。
封面图

Go Assembly 学习笔记

2017-09-04
阅读 5 分钟
12k
最近升级 go1.9,发现一个获取 goroutine id 的依赖没有支持1.9,于是手动写了一个,顺便学习一下 go assembly。希望你看完这篇文章后,对go汇编有一定的了解。

Go语言channel与select原理

2017-08-23
阅读 8 分钟
17.2k
本文会尝试解释 go runtime 中 channel 和 select 的具体实现,部分内容来自 gophercon2017。Go版本为1.8.3

Golang 与系统调用

2017-08-12
阅读 6 分钟
18.4k
系统调用是程序向操作系统内核请求服务的过程,通常包含硬件相关的服务(例如访问硬盘),创建新进程等。系统调用提供了一个进程和操作系统之间的接口。

fasthttp中的协程池实现

2017-04-20
阅读 7 分钟
9.9k
协程池可以控制并行度,复用协程。fasthttp 比 net/http 效率高很多倍的重要原因,就是利用了协程池。实现并不复杂,我们可以参考他的设计,写出高性能的应用。

如何在K8S平台部署微服务

2017-03-31
阅读 7 分钟
21k
本文将介绍如何使用 kubernetes 部署微服务,包括 服务发现,监控,路由,日志。用实际的例子来演示自动化流程。主要分为以下几个部分:

手动搭建kubernetes集群

2016-12-02
阅读 10 分钟
18.1k
探索kubernetes系列的第三篇,主要记录手动搭建k8s集群的过程,部署dashboard, 部署DNS用作服务发现。顺便记录一下k8s中的一些资源的概念。

基于容器的后端服务架构

2016-11-25
阅读 5 分钟
8.8k
在探索kubernetes的应用时,调研了几个gateway,发现fabio支持发现服务,自动生成路由,结合consul,registrator, 可以很容易的部署一套服务,比较轻量,很容易玩起来。

Flannel with Docker

2016-11-24
阅读 3 分钟
5.6k
Flannel 是用于组建容器间网络的工具,用于解决跨主机的docker containers之间的连通性问题。最近在尝试手动部署kubernetes集群,这是这个系列的第一篇。

Golang 限速器

2016-08-31
阅读 2 分钟
6k
之前看到这篇golang并发编程的两种限速方法,觉得 sleep 等待的方式不是特别好,唤醒线程的时间比较长。而且1s内的请求只能均匀的到来,如瞬间来 N 个, 那么只有一个能立刻返回,剩下的只能等待。

Golang模仿七牛图片处理API

2016-07-27
阅读 5 分钟
6.5k
之前一直在用qiniu的存储服务,生成图片的缩略图,模糊图,视频的webp,现在需要把存储移到s3上,那么这些图片,视频处理就要自己动手写了,本文梳理一下大致的思路。

PHP编程中的并发

2015-11-30
阅读 5 分钟
13.9k
周末去北京面了两个公司,认识了几位技术牛人,面试中聊了很多,感觉收获颇丰。认识到了自己的不足之处,也坚定了自己对计算机学习的信心。本文是对其中一道面试题的总结。

PHP编程中的锁

2015-11-03
阅读 6 分钟
12.4k
最近看了《理解Linux进程》这本开源书,链接。该书描述了linux中的进程概念,对锁和进程间通信(IPC)有一些总结。不过该书的描述语言是golang, 平时用的比较少,就想对应概念找找php中的接口。

Lumen如何实现类Laravel5用户友好的错误页面

2015-09-12
阅读 3 分钟
5.3k
Laravel5实现用户友好的错误页面非常简单,例如想要返回status 404,只需要在view/errors中添加一个404.blade.php文件即可。Lumen中没有默认实现这种便利,于是自己添加一个。

使用Go语言框架进行web开发笔记

2015-08-25
阅读 3 分钟
13.9k
最近需要用Instagram的api抓取其用户的图片,由于需要用oauth2验证, 所以应用必须包含一个web界面。设想能够实时返回下载数量,所以用websocket。还有需要考虑到效率问题,综合以上几点,想用一门语言开发的话,最终选择用golang进行开发,node的回调实在不喜欢。

通过Swoole Framework学习websocket协议

2015-08-07
阅读 5 分钟
8.6k
服务端的开发离不开协议,swoole的出现对于学习通信来说,无疑是非常好的教材。非常推荐大家下载 Swoole Framework,其中包含了多种协议的php实现,例如FTP,HTTP,Websocket等。本文大部分代码都是受这个项目的启发,当然学习的同时别忘了star一下这个项目。笔者本身计算机基础较弱,写这篇文章的同时也查了不少资料,...

关于Golang中database/sql包的学习笔记

2015-07-30
阅读 6 分钟
88.9k
因为最近在学习Go,所以找了revel这个框架来学习,感觉和php的面向对象有很大不同。revel没有提供db mapping的组件,所以在github上搜了很多ORM来学习,在jmoiron/sqlx中发现了一篇比较详细介绍database/sql这个包的文章,拿来和大家分享。本文并不是按字句的翻译,如果哪里表述不清楚建议阅读原文 原文地址

如何在Lumen中使用Elasticsearch

2015-07-25
阅读 2 分钟
8.3k
Lumen是基于Laravel核心组件的微框架,随着Laravel5的发布,目前版本也已经到5了。之前受到这篇为你的站点插上ElasticSearch的翅膀的启发, 就尝试在lumen中引入ES,并完成中文索引。

Laravel5.1 事件广播(Event Broadcasting)

2015-06-20
阅读 3 分钟
19.1k
Laravel 5.1 之中新加入了事件广播的功能,作用是把服务器中触发的事件通过websocket服务通知客户端,也就是浏览器,客户端js根据接受到的事件,做出相应动作。本文会用简单的代码展示一个事件广播的过程。