首先介绍一下七牛的大数据的产品——Pandora,我们的目的是提供简单、高效和开放的大数据平台。图 1 是我们的工作流,提供实时计算和离线计算。我们的数据流实时进来之后可以到下游的实时数据服务,最常见的场景是提供日志搜索和机器性能监控,就是看到的仪表盘(图2),还有就是基于 spark 做一些实时数据分析。 我要晨读

已有664人晨读

通常日志由服务器生成,输出到不同的文件中,一般会有系统日志、 应用日志、安全日志。这些日志分散地存储在不同的机器上。 我要晨读

已有990人晨读

Go编程语言:支持并发、垃圾回收的编译型系统级编程语言!Go语言从语言层面上就支持了并发,这与其他语言大不一样,不像以前我们要用Thread库 来新建线程,还要用线程安全的队列库来共享数据。 我要晨读

已有556人晨读

为什么自己搭建ngrok服务呢?原因很简单,官方如果绑定域名要收费啊,自己有服务器,所以就自己搭建一个好了,要求的服务器配置又不高,说实在的树莓派IO真的惨不忍睹,我的系统装在u盘里还是卡卡卡 不管怎么说,先把树莓派扔到公网上再说 我要晨读

已有455人晨读

一个Web应用从 浏览器向服务器发送请求(Request)开始,到服务器根据请求做出相应响应(Response)结束,整个流程中服务器的控制核心无疑是:服务器从HTTP Request中提取请求路径(URL)并找到对应的处理程序(Handler)处理请求,最后返回结果。 我要晨读

已有1051人晨读

最近,我读到一些大肆宣传Go语言最新垃圾回收器的文章,这些文章对垃圾回收器的描述让我感到有些厌烦。这些文章有些是来自Go项目。他们宣称GC技术正迎来巨大突破。 我要晨读

已有586人晨读

HTTP/2被设计为解决HTTP/1.x的许多缺陷。当代网页使用了许多资源:HTML、样式表、脚本、图片等等。在HTTP/1.x中这些资源每一个都必须明确地请求。这可能是一个很慢的过程。浏览器从获取HTML开始,然后在它解析和评估页面的时候,增量地获取更多的资源。因为服务器必须等待浏览器做每一个请求,网络经常是空闲的和未充分使用的。 我要晨读

已有617人晨读

这两天用Go写了第一个项目,还在demo阶段,后续会持续记录关于Go开发的一些坑点。 项目叫做bigpipe,是为了解决服务之间异步Http调用而生的,用Go实现起来非常的简单,并发能力也很不错。 我要晨读

已有727人晨读

闭包包含自由(未绑定到特定对象)变量;这些变量不是在这个代码块内或者任何全局上下文中定义的,而是在定义代码块的环境中定义(局部变量)。“闭包” 一词来源于以下两者的结合:要执行的代码块(由于自由变量被包含在代码块中,这些自由变量以及它们引用的对象没有被释放)和为自由变量提供绑定的计算环境(作用域)——摘自百度 我要晨读

已有549人晨读

当前互联网时代,怎么少的了高并发呢?高并发和高可用一样, 已经变成各个系统的标配了,如果你的系统QPS没有个大几千上万,都不好意思跟人打招呼,虽然可能每天的调用量不超过100。 我要晨读

已有660人晨读

当开发http 接口的时候,往往我们会关心开发的server能承受多少压力,这时候一个比较常用的工具是 apache bench。一部分情况下ab工具确实能满足需求,但是很多时候并不能,需要分布式式测试工具。 我要晨读

已有879人晨读

RWMutex,读写锁,又称“读写互斥锁”。 读写锁简单来说就是可以由任意数量的读者同时使用,或者只由一个写者使用的锁。 我要晨读

已有715人晨读

讲解调度器的基本概念 go语言的作者实现的C的协程库 libtask 源码分析,以理解协程的原理 golang的调度器原理 我要晨读

已有462人晨读

在开发pgx(一个针对Go语言的PostgreSQL driver)的时候,有好几次我都需要在20多个代码分支间跳转。通常我会选用switch语句。还有个更加可读的实现方法是使用函数map。我一开始认为用switch语句进行分支跳转比一个map查找和函数调用更快。数据库驱动(database driver)的性能是一个很重要的考量,所以在做任何改动前,有必要对它们的影响做一下慎重地研究。 我要晨读

已有503人晨读