一探B站后台架构, 他山之石, 何以攻玉

4月22日,B站部分后台源代码因为某愤怒的员工,被上传至Github。不是说组件或者基础库多么的厉害,而是从整体目录分布,业务代码分布,API易用性,业务代码风格,工具的统一,上手难度上来评价。

Golang领域模型-CQRS

前言: CQRS 一词随着 DDD 一同被大众所熟悉,但是你有没有想过 CQRS 一词其实并非 DDD 独有,非 DDD 设计项目也能用,或许你正在用,但你不知道而已。

微服务之路:基于gRPC服务发现与服务治理的方案

微服务之路:基于gRPC服务发现与服务治理的方案重温最少化集群搭建,我相信很多朋友都已经搭建出来。怎么通过服务中心进行发现呢,这个过程是通过什么来实现的呢,本篇我们就来介绍这个“调用过程”。

「golang」 string和「」byte 相互转换

fmt.Printf输出:helloworld [68656c6c6f20776f726c64][]byte to stringvar bytehello []byte = []byte{‘h’, ‘e’, ‘l’, ‘l’, ‘o’, ‘ ‘, ‘w’, ‘o’, ‘r’,

Redigo – 必不可少的 Go 语言 Redis 库

Redis(REmote DIctionary Server)是一个十分常用的跨平台非关系型数据库。其使用 ANSI C 语言编写,支持网络,可基于内存、分布式、可选持久性的键值存储数据库,并提供多种语言的 API。

服务注册发现之服务注册中心设计原理与Golang实现

从单体架构转向微服务架构过程中,当服务调用其他服务时,如何找到正确的服务地址是最基础问题。今天先抛开这些开源项目,我们亲自动手来实现一个服务注册中心,深入理解其设计原理,逐行代码分析与实践。

Golang 优雅的终止一个服务

Golang 优雅的终止一个服务

python数据类型-集合set

集合是由不重复元素组成的无序容器。基本用法包括成员检测、消除重复元素。集合对象支持合集、交集、差集、对称差分等数学运算。创建集合用花括号或 set() 函数。注意,创建空集合只能用 set(),不能用 {},{} 创建的是空字典.

Docker源码分析之容器日志处理与log-driver实现

概要本文将从docker(1.12.6)源码的角度分析docker daemon怎么将容器的日志收集出来并通过配置的log-driver发送出去,并结合示例介绍了好雨云帮中实现的一个zmq-loger。阅读本文,你也可以实现适合自己业务场景的log-driver。

大白话 golang 教程-21-分布式服务框架 gRPC

gRPC 是谷歌开发的高性能、通用的开源 RPC 框架,使用 http/2 协议设计,默认基于 protobuf 序列化,gRPC 支持众多的编程语言互调。使用之前需要安装 protoc 的编译器。