avatar
Articles
40
Tags
37
Categories
0

Utopian

Utopian

Vscode Remote Connect failed
Created2020-10-05
Vscode Remote连接失败一台很久没有使用vscode remote操作过的机器,今天在调试个项目的时候发现之前配置怎么都连接不上了,一直timeout,也没有给出错误原因。花了些时间来定位,记录一下解决方法。 状态vscode remote点击”Connect to Host”无响应,过一会报connect timeout 调试方法 确认相关配置是否正常。 .ssh/config中remote Host配置是否完整 本机id_rsa.pub内容是否导入remote Host的authorized_keys文件中,否则无法免密登录成功 正常情况下应该就可以了在shell中免密登录了。 直接ssh Host发现也无法免密登录,于是登录远程主机后查看登录日志。 sudo tail -f /var/log/secure 发现错误提示: Authentication refused: bad ownership or modes for file /data/home/XXX/.ssh/authorized ...
Introduction to Go Modules
Created2020-07-02
Introduction to Go Modules原文链接 Creating a Module先创建一个package,用于测试go mod的版本管理。 $ mkdir testmod$ cd testmod$ go mod init github.com/robteix/testmod package的代码也很简单: package testmodimport "fmt" // Hi returns a friendly greetingfunc Hi(name string) string { return fmt.Sprintf("Hi, %s", name)} 将package放入仓库: $ git init $ git add * $ git commit -am "First commit" $ git push -u origin master 现在就可以通过go get将package获取到本地使用了: $ go get github.com/robteix/testmod ...
Tencent Scf Version Manage
Created2020-06-27
腾讯云函数的版本管理前段时间体验了下腾讯云的云函数,试着将一个古老的cgi迁移到云函数,由于特性比较简单,整体还算顺利。 云函数的概念比较多,新接入的开发者需要了解许多概念,如果是简单的功能接入还是挺方便的,跟着文档操作一遍就行了。但许多文档还不是很深入。比如如何在golang云函数操作HTTP Header使其返回302,这个就研究了挺久。 如果在生产环境使用腾讯云函数相关的能力来进行版本的迭代,官方并没有给出标准解决方案。大致摸索了一下云函数、云网关的相关能力,介绍如下。 云函数通常一个逻辑服务server对应一个云函数。后续相关需求的迭代,对应的逻辑服务也会有频繁的版本更新发布。 云函数版本 版本概念跟git/svn仓库类似,但默认只有$Latest版本可以重新上传代码,所以: 建议$Lastest用于开发,其他版本用于(预)发布。 当存在多人并行开发时,建议建立个人云函数,以及对应的云网关,避免相关影响。 功能特性上线时应该发布到新的版本。只能使用 $LATEST 的配置和代码生成新版本,代码版本发布后不可变更。 别名 大部分代码(云函数)的版本特性迭代,是 ...
Functional options for friendly APIs
Created2020-06-14
Written with StackEdit. Functional options for friendly APIs在一些框架代码中,比较常见的封装配置的方法是使用WithXXX()的API形态对外暴露接口,而非传统的Config配置数据结构。本文解释了配置API的集中方案。 原文地址:https://dave.cheney.net/2014/10/17/functional-options-for-friendly-apis 一个server package的列子type Server struct { listener net.Listener}func (s *Server) Addr() net.Addrfunc (s *Server) Shutdown()func NewServer(addr string) (*Server, error) { l, err := net.Listen("tcp", addr) if err != nil { return nil, er ...
gomicro-config
Created2020-06-08
go-micro配置介绍go-micro/config基础特性及用法,参考官方文档。 数据结构&流程图 核心数据结构感觉go-micro的设计理念应该是一切皆是Interface,所以除了Pluggable Sources等特性外,内部的一些数据结构上也预留了插件化的可能。几个数据结构在官网上都介绍比较清楚了,主要关注下几个核心数据结构的方法。 Config暴露给用户的对象,用于加载、读取和同步数据源。 // 动态配置的抽象接口。可以作为一个单独组建给业务使用,但框架自身依赖**DefaultConfig**实现// 将多个source聚合成一个对外的统一数据源,支持加载、同步、观测一个或多个source。type Config interface { // provide the reader.Values interface reader.Values // Init the config Init(opts ...Option) error // Options in the config Options() ...
intern-recruitment
Created2020-04-06
Written with StackEdit. 实习生招聘tips最近几周花了大量的精力在实习生的招聘上,记录过程中的一些心得,用作后续的参考。 整体感悟我厂实习生招聘的流程就是从简历库中筛选简历,然后经过初试、复试及HR面试的过程。初试根据各业务BG的需要,可能分多次。简历的筛选是一个繁重的工作,需要从数万简历库中筛选出优秀的应聘者,不仅要靠运气,也要靠大量的精力投入,因为竞争激励。个人经验一般在错峰时间(晚上或者清早)能找到优秀的简历的概率要大一些。 优秀简历的一些特点: 好的学校 个人简历的细节在个人简历中至少要有学校专业课、专业技能、(个人)项目的一些详细介绍。如果能有一些实践的经验会更好。 个人社会实践、初步职业规划等等 一些硬性指标行业的关系,一般对实习生有些基础的硬性要求。个人认为专业的基础知识是必须的,当然如果面试人有其他比较优秀的闪光点的话,这方面也可以酌情考虑比重。否则很难保证过程的客观和公正。基础考察点各有差异,个人比较偏重以下点: 后端考察点: 语言 计算机网络 操作系统、linux基础操作 数据结构与算法 数据库概念 前端考察点: 网络协议( ...
golang viper tips
Created2019-12-15
viper tips简介vipper是golang下一个配置文件的解决方案,功能强大,也被很多开源项目所引用。主要特性包括: setting defaults reading from JSON, TOML, YAML, HCL, envfile and Java properties config files live watching and re-reading of config files (optional) reading from environment variables reading from remote config systems (etcd or Consul), and watching changes reading from command line flags reading from buffer setting explicit values 具体使用方法就不copy了,主要记录下使用过程中遇到的一些小问题,避免后续再次踩坑。 如何使用配置文件的解析、使用方法有多种,简单的方法在业务代码中直接调用viper相关的API: Get(k ...
docker redis install
Created2019-11-17
记录docker-redis安装过程 流程 下载镜像docker pull redis 静态文件目录、log目录mkdir ./redis/confmdkir ./redis/data 配置文件从官方下载一份最新的redis.confcd ./redis/confwget http://download.redis.io/redis-stable/redis.conf 创建容器&启动 docker run \-p 6379:6379 \-v $PWD/data:/data \-v $PWD/conf/redis.conf:/etc/redis/redis.conf \--name myredis \-d redis redis-server /etc/redis/redis.conf \--appendonly yes appendonly为落地方案,可选。启动之后redis应该为正常状态了,可以使用docker上的redis-cli查看。 docker exec -it myredis redis-c ...
docker nginx install
Created2019-09-13
docker新手,docker nginx的安装折腾了半天,记录一下。 流程 下载镜像docker pull nginx 静态文件目录、log目录直接使用本地目录即可,因为不需要从container中copy源文件到本地,所以宿主主机本地mkdir对应的目录即可。mkdir ~/development/docker/docker-nginx/logmdkir ~/development/docker/docker-nginx/html 配置文件需要从container中的文件中copy一份到本地,作为初始配置,所以先启动一个默认container,copy文件后将其删除即可。mkdir ~/development/docker/docker-nginx/confdocker cp 525adda2ecb7:/etc/nginx/* ~/development/docker/docker-nginx&# ...
groupcache
Created2019-08-21
groupcache简介周末阅读groupcache的源码,比较简单,也总结一下。 定位groupcache虽然跟memcache是出自同一作者之手,但是定位相差挺大。memcached(简称mc)是一个独立的nosql存储服务,后台服务必须按照mc协议与之通信来实现数据缓存功能。而groupcache只是一个简单的缓存lib,定位类似于leveldb,后台服务必须继承到代码中来实现缓存的能力。 代码及功能简介 LRU支持LRU的cache实现,与传统的LRU实现没有大的差别。核心数据结构: type Cache struct { // MaxEntries is the maximum number of cache entries before // an item is evicted. Zero means no limit. MaxEntries int // OnEvicted optionally specifies a callback function to be // executed when an entry is purged f ...
1234
avatar
Alex guo
个人技术博客
Articles
40
Tags
37
Categories
0
Follow Me
Recent Post
Cache In Next.js2024-03-25
Introduct to NotionAPI2024-01-06
Architecture of Supabase2023-12-28
Introduct-to-nocoDB2023-12-08
Doploy outline without docker2023-12-06
Tags
秒杀 Microservices Architecture Governance nginx 远程开发 Golang UUID cron memberlist 分布式 memos Git Readingnotes CMS 云函数 RWMutex BaaS redis AUTH golang docker Notion Next.js libuv groupcache gossip Outline Authentication COS nocoDB Supabase HTTPS 工作流引擎 随笔 Vscode Puppeteer
Archives
  • March 20241
  • January 20241
  • December 20233
  • November 20232
  • October 20233
  • September 20232
  • March 20222
  • January 20222
Info
Article :
40
UV :
PV :
Last Update :
©2020 - 2024 By Alex guo
Framework Hexo|Theme Butterfly