摘要:
一. 什么是命名空间 Kubernetes中提供了命名空间(Namespaces),是Kubernetes提供的一种组织资源机制,用于给集群中的任何对象组进行分类、筛选和管理。 但是如果你的团队规模比较小并且集群规模也不大,完全可以不用Namespaces而使用labels来区分不同的资源,随着项目 阅读全文
摘要:
LevelDb介绍 我们知道memcache和redis是互联网分层架构中,最常用的KV缓存。而LevelDb是Google开源的一款NOSQL存储引擎库。 官网:http://leveldb.org/ goleveldb 这里介绍的使用go语言实现的leveldb(在以太坊中使用的) github 阅读全文
摘要:
前端库与前端框架的区别 库(插件):比如Jquery,库是提供某一个小功能,对项目的侵入性较小,如果某个库无法完成某些需求,可以很容易切换到其它库实现需求。比如从Jquery 切换到 Zepto,从 EJS 切换到 art-templat都相对比较容易,切换后改动量不是很大。 框架:是一套完整的解决 阅读全文
摘要:
高可用 API 有如下衡量标准: 速度(API 响应时间) 文档(清晰简洁的文档,能够很好的描述 API) 架构和持续性(代码可维护可扩展) 阅读全文
摘要:
简介 有了swoole这样强大的扩展之后,越来越多的框架都是基于swoole被开发出来,Swoft就是其中一款不错的PHP框架。Swoft 是一款基于 Swoole 原生协程的注解式框架,自带常驻内存以及 Swoole 其它功能的封装。swoft中内置了协程客户端。同时swoft里面有了很多新的概念 阅读全文
摘要:
简介 Supervisor是用Python开发的一套通用的进程管理程序,它可以在类Unix系统中管理控制大量进程,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。 Supervisor安装 Supervisor是python开发的,所以安装环境要预先安装好pyth 阅读全文
摘要:
介绍 etcd是一款高性能的开源的分布式key-value分布式存储系统,可以用于配置共享和服务的注册与发现等功能。类似于zookeeper和consul。 etcd 诞生于 CoreOS 公司,它最初是用于解决集群管理系统中 OS 升级的分布式并发控制以及配置文件的存储与分发等问题。正如etcd官 阅读全文
摘要:
1. golang协程为什么比线程轻量? 1. go协程调用跟切换比线程效率高。 线程是内核对外提供的服务,应用程序可以通过系统调用让内核启动线程,由内核来负责线程调度和切换。线程在等待IO操作时线程变为unrunnable状态会触发上下文切换。现代操作系统一般都采用抢占式调度,上下文切换一般发生在 阅读全文
摘要:
Kubernetes集群中也有类似于反向代理的概念,在Kubernetes中被称为Service。 虽然Kubernetes中的Service可以提供类似于nginx那样的反向代理功能,但是也是有区别的,Service是一个抽象的概念,同时Service的路由和传统的反向代理到后端的路由是不一样的, 阅读全文
摘要:
我们经常在电视新闻里听见某某黑客组织对某个国家网站进行了DDOS攻击的新闻。 那么DDoS是什么, 这篇文章将聊聊DDoS攻击。 DDoS攻击概念 DoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。 阅读全文