LeetCode 1311. Get Watched Videos by Your Friends

链接: https://leetcode-cn.com/problems/get-watched-videos-by-your-friends/ 难度:medium 解题思路:广搜找到对应level的所有朋友,然后累加相应的video,最后排序。go语言没有啥priority queue,图简单这里排序用的直接插入排序,有点挫 Golang的数据结构支持太少了,各种都要自己写,真是麻烦。。 func watchedVideosByFriends(watchedVideos [][]string,...阅读全文

简书 2020-05-15 23:32:47 码农老姜

阿里云运维架构实践秘籍

前言2009年的阿里云,2011年的盛大云,2012年的电信天翼云,2013年的腾讯云及华为云,2015年的百度云,国内的云计算市场可谓百花齐放。>> 云端混合云、云端容器、云端监控演变、云端自动化运维、云端DevOps、云端智能化运维、云端安全、云端分布式架构八大技术架构实践。>> 云端选型篇(第1~5章)云端选型篇介绍了在云端选择什么样的云平台做战略规划部署及业务体系建设,选择什么样的云产品来架构及规划业务,选择什么样的开发语言来应对业务开发需求,选择什么样的系统技术来搭建运维架构及实施,以...阅读全文

简书 2020-05-15 23:32:47 kingleaf

阿里云运维架构实践秘籍

前言2009年的阿里云,2011年的盛大云,2012年的电信天翼云,2013年的腾讯云及华为云,2015年的百度云,国内的云计算市场可谓百花齐放。>> 云端混合云、云端容器、云端监控演变、云端自动化运维、云端DevOps、云端智能化运维、云端安全、云端分布式架构八大技术架构实践。>> 云端选型篇(第1~5章)云端选型篇介绍了在云端选择什么样的云平台做战略规划部署及业务体系建设,选择什么样的云产品来架构及规划业务,选择什么样的开发语言来应对业务开发需求,选择什么样的系统技术来搭建运维架构及实施,以...阅读全文

简书 2020-05-15 23:32:47 kingleaf

如何使用 frp 实现内网穿透

这有一个专注Gopher技术成长的开源项目「go home」 背景 作为一名程序员,家里多多少少会有一些落了灰的电脑,如果把闲置的电脑变成服务器,不仅有良好的配置,还能用来做各种测试,那就再好不过了。但是局域网的设备怎么被外网访问呢?这就靠内网穿透来实现了。 内网穿透又叫 NAT 穿透,常用的工具有很多,比如 ngrok、花生壳、frp等,因为我使用的是 frp,这也是本篇文章的主题。 <span id="nat"></span> NAT 是在 IP 数据包通过路由器或防火墙的时候重写 IP 地...阅读全文

Segmentfault 2020-05-21 21:32:41 平也

分布式链路追踪系统:Jaeger在golang中的应用

背景 随着应用容器化和微服务的兴起,借由Docker和 Kubernetes 等工具, 服务的快速开发和部署成为可能,构建微服务应用变得越来越简单。但是随着大型单体应用拆分为微服务,服务之间的依赖和调用变得极为复杂,这些服务可能是不同团队开发的,可能基于不同的语言,微服务之间可能是利用RPC, RESTful API, 也可能是通过消息队列实现调用或通讯。如何理清服务依赖调用关系,如何在这样的环境下快速debug, 追踪服务处理耗时,查找服务性能瓶颈, 合理对服务的容量评估都变成一个棘手的事情。...阅读全文

简书 2020-05-15 19:32:47 elroyGuo

Linux 命令行下搜索工具大盘点,效率提高不止一倍!

在 Linux 命令行下进行文本关键字的搜索,大家肯定第一时间会想到 grep 命令。grep 命令确实十分强大,但如果需要用到它更加灵活的功能时,可能命令就会显得十分复杂。 于是,为了简化 grep 的语句并达到同等效果,很多业内高手开发出了很多同样强大的工具,在某些程度上甚至可以替代 grep 。 下面我就给大家介绍 5 个常用的命令行搜索工具。如果你不喜欢使用编辑器或 IDE 来查找代码关键字,那么这几个工具将对你十分有帮助。 这 5 个工具有些仅适用于类 Unix 系统,但也有一些是跨平...阅读全文

简书 2020-05-15 19:32:46 良许Linux

Kubernetes 基于GlusterFS+heketi的高可用动态存储管理StorageClass

说明: Kubernetes中使用GlusterFS作为持久化存储,要提供storageClass使用需要依赖Heketi工具。Heketi是一个具有resetful接口的glusterfs管理程序,作为kubernetes的Storage存储的external provisioner。 “Heketi提供了一个RESTful管理界面,可用于管理GlusterFS卷的生命周期。借助Heketi,像OpenStack Manila,Kubernetes和OpenShift这样的云服务可以动态地配置...阅读全文

简书 2020-05-15 19:32:46 Felix_Shang

Go语言(二十)日志采集项目(二)Etcd的使用

日志采集项目(二)Etcd的使用 ETCD 介绍 概念: 高可用的分布式key-value存储,实现配置共享和服务发现 类似项目: zookeeper和consul 开发语言: Go 接口: 提供restful的http接口,使用简单 实现算法: 基于raft算法的强一致性,高可用的服务存储目录 ETCD的应用场景 服务发现和注册 配置中心 分布式锁 master选举 ETCD环境搭建 下载地址:https://github.com/etcd-io/etcd/releases/download/...阅读全文

51CTO博客 2020-05-15 16:55:24 wx5b285b48ed74e

[GO语言]Golang String字符串的操作大全

字符串是不可变值类型,内部用指针指向 UTF-8 字节数组。 • 默认值是空字符串 ""。 • 用索引号访问某字节,如 s[i]。 • 不能用序号获取字节元素指针,&s[i] 非法。 • 不可变类型,无法修改字节数组。 • 字节数组尾部不包含 NULL。 使用索引号访问字符 (byte)。 package main func main() { s := "abc" println(s[0] == '\x61', s[1] == 'b', s[2] == 0x63) } 输出结果: true tr...阅读全文

简书 2020-05-15 17:38:35 小龙in武汉

[GO语言]深刻理解Golang中的String字符串

[深刻理解Golang中的string] 说到string类型,我们往往都能很熟练地对它进行各种处理,包括迭代、随机访问和匹配等等操作。然而在工作中,我发现迭代(range会自动识别成字符)一个字符串产生的字符的类型与随机访问一个字符的类型却并不相同,为什么会这么奇怪呢?于是我决定一探究竟 string 简析 在Golang中,字符串本质上看一看做一个只读的字节切片(仅比切片少了一个Cap属性)。它的底层结构我们可以查看reflect.StringHeader得到: type StringHea...阅读全文

简书 2020-05-15 17:38:33 小龙in武汉

[GO语言]深刻理解Golang中的数组Array

Golang Array和以往认知的数组有很大不同。 1. 数组:是同一种数据类型的固定长度的序列。 2. 数组定义:var a [len]int,比如:var a [5]int,数组长度必须是常量,且是类型的组成部分。一旦定义,长度不能变。 3. 长度是数组类型的一部分,因此,var a[5] int和var a[10]int是不同的类型。 4. 数组可以通过下标进行访问,下标是从0开始,最后一个元素下标是:len-1 for i := 0; i < len(a); i++ { } for i...阅读全文

简书 2020-05-15 17:38:32 小龙in武汉

[GO语言]Golang gin框架安装(go mod模式),推荐这种方式!

go mod方式安装gin,建议不要用goland ide,等用命令行安装好后再用goland进行业务开发 打开你的cmd.exe或者mac、linux中命令工具 开启go mod set GO111MODULE=on //windows export GO111MODULE=on // linux 初始化go mod 创建一个文件夹 windows系统应该都会创建文件夹吧,mac和linux系统就不说了 加入创建的文件夹是xiaolongproject cd到这个项目文件夹中 然后执行下面的命...阅读全文

简书 2020-05-15 17:38:31 小龙in武汉

面试官: 两个Redis实例怎么快速对比哪些数据不一致

问题 如上图如何能快速的从两个Redis实例怎么快速对比哪些数据不一致?什么是数据不一致key不一致相同key名 在不同实例上的数据类型不一致key 存在于源 redis 不存在目标 rediskey 存在于 目标redis 不存在源redisvalue 不一致string 类型的值,在不同实例上不一致其他类型,同key判断.工具推荐 redis-full-check是阿里云Redis&MongoDB团队开源的用于校验2个redis数据是否一致的工具,支持单节点、主从、集群版、以及多种proxy...阅读全文

简书 2020-05-15 17:38:31 巨蟹胖胖

[GO语言]Golang中new和make的根本区别

new和make的根本区别 1、没有指向底层数组的区别 2、new返回指针,make返回引用实例 例子new: var p *[]int = new([]int) 或 p := new([]int) 以上分配了一个slice结构,但是结构中的应该指向底层数组的ptr指针为空,故实际不能往这个slice里面存取数据 同时分配了一个指针p,也即(在32位系统中)占4个字节并存放slice结构的地址 例子make: var v []int = make([]int, 0) v := make([]in...阅读全文

简书 2020-05-15 17:34:07 小龙in武汉

[GO语言]Golang的切片slice深入理解

需要说明,slice 并不是数组或数组指针。它通过内部指针和相关属性引用数组片段,以实现变长方案。 1. 切片:切片是数组的一个引用,因此切片是引用类型。但自身是结构体,值拷贝传递。 2. 切片的长度可以改变,因此,切片是一个可变的数组。 3. 切片遍历方式和数组一样,可以用len()求长度。表示可用元素数量,读写操作不能超过该限制。 4. cap可以求出slice最大扩张容量,不能超出数组限制。0 <= len(slice) <= len(array),其中array是slice引用的数组。 ...阅读全文

简书 2020-05-15 17:34:07 小龙in武汉

[厦门][云计算][965][14 薪起][2 年左右] Golang 后端开发工程师, 10-18k

坐标厦门软二,云计算行业 联系微信:17605087651 Golang 后端开发 Responsibilities: 1. 负责公司裸金属产品的后端开发; Requirements: 1. 一年以上 Go 服务端开发经验 2. 熟练掌握 Golang 相关技术,熟悉 Golang 协程,熟悉 channel 和锁,对高并发、高可用架构系统有正确的理解,有分布式服务设计或开发经验者优先 3. 对技术有激情,喜欢钻研,能快速接受和掌握新技术,学习能力和工作责...阅读全文

Go语言中文网 2020-05-15 15:42:09 INZAGHI-9

etcd实现服务发现

### 前言 [etcd环境安装与使用](https://bingjian-zhu.github.io/2020/05/09/etcd%E7%8E%AF%E5%A2%83%E5%AE%89%E8%A3%85%E4%B8%8E%E4%BD%BF%E7%94%A8/)文章中介绍了etcd的安装及`v3 API`使用,本篇将介绍如何使用etcd实现服务发现功能。 ### 服务发现介绍 服务发现要解决的也是分布式系统中最常见的问题之一,即在同一个分布式集群中的进程或服务,要如何才能找到对方...阅读全文

Go语言中文网 2020-05-15 15:21:19 939496716

Java代码生成器多表配置优化,增加自定义实体功能

前言   最近利用零碎的时间对代码生成器做了进一步更新:优化多表配置模块,增加自定义实体功能,美化单表和多表配置的UI界面,修复用户反馈的若干bug,一起看一下吧! 多表配置优化   新版多表配置模块使用了多模块生成模式,每个模块下可以配置不同的方法,并且摒弃了原来的Map参数类型,参数和返回值全部使用entity,虽然牺牲了一定的灵活程度,但总体来说,利大于弊。如果自己做个小项目倒无所谓,倘若多人协作开发,Map满天飞,那种绝望只有经历过的人才懂。新版多表配置界面如下: 界面   使用方法也较...阅读全文

简书 2020-05-15 14:39:28 小螺旋丸

2020整理的一些面经连接

目前整理的只有这些了,这些已经足够现在的我去研究了 牛客网上的 PHP面经 2019 PHP 社招面经 字节PHP/Golang社招面经 【字节跳动】后端开发实习面经 已拿offer 关于程序设计的一些问题 一年工作经验跳槽字节跳动社招经历分享 简书 腾讯、头条、shopee2019年底面经 知乎 知乎关于头条面试的经验阅读全文

简书 2020-05-15 14:35:40 Bomb_