pyihe / pyihe.github.io Goto Github PK
View Code? Open in Web Editor NEWmy site
my site
前言这是一篇译文,网上有很多关于这篇文章的翻译,但这并不影响自己想自己翻译这篇文章的的愿望,毕竟自己看重的是自己实践翻译这样一件事情,并且从中得到收获。
加密算法简介加密算法就是加密的方法,在密码学中,加密是将明文信息隐藏起来,使之缺少特殊信息时不可读。加密算法可以分为两类:
前言不知道有没有朋友发现,在Mac系统中的有些文件的属性中包含@符号,如下图所示: 注意: 通过命令ls -l可以查看文件属性 图中@符号表示的是Mac OS系统中文件的附加属性,出现该符号表示此文件或者目录具有扩展属性;为什么会出现这个属性?
Gitalk介绍gitalk是一个通过为每篇文章创建issue作为博客评论的开源插件。
赫夫曼树在树这种数据结构中,从树中的一个结点到另一个结点之间的分支构成这两个结点之间的路径,路径上分支的数目叫做路径长度,从根结点到每个结点的路径长度之和叫做树的路径长度。如果
前言Bitmap实际上并不是一种数据类型,而是定义在String类型上的面向位的操作。因为String是二进制安全的并且最大长度为512MB,所以String可以建立2^32个不同的位。
https://pyihe.github.io/2020/06/11/Golang%E5%B8%B8%E8%A7%84%E5%8A%A0%E5%AF%86%E7%AE%97%E6%B3%95/
前言为了使平时工作更加高效,自己使用golang对常规加密算法进行了封装,方便在以后的工作中直接使用。
Redis为k-v形式的内存数据库,其v对应多种数据结构存储形式,String就是其中一种,一起来学习String的各种命令吧!
https://pyihe.github.io/2022/06/24/Redis%E7%B3%BB%E5%88%97%E7%AC%AC%E4%BA%94%E7%AF%87%E4%B9%8BGeo/
前言在Redis Commands页面中,Redis还提供了一种名为Geospatial indices的命令,该命令是用于地理空间索引,目的是为了方便在给定的地理半径内查找位置。调用方可以通过GEOADD添加地理位置,通过GEORADIUS命令来查找指定半径范围内的位置。
https://pyihe.github.io/2020/11/17/Golang%E9%80%83%E9%80%B8%E5%88%86%E6%9E%90/
前言本文翻译自 Alysha Gardner 的一篇博文Golang escape analysis 由于原博客创作时间较早,文中的一些编译显示结果可能存在出入,请参照最新的Go版本编译结果。
https://pyihe.github.io/2020/06/11/%E5%8A%A0%E5%AF%86%E7%AE%97%E6%B3%95%E4%B9%8B%E8%AF%81%E4%B9%A6/
公钥传输问题?我们知道,通过用非对称加密对对称加密的密钥进行加密然后在网络中传输,解决了对称加密密钥的不安全传输问题,而非对称加密的公钥是不需要保密的,即
前言2019年之后,对于Apple App来说,如果要支持第三方登录,则必须同时支持苹果的第三方登录,即Sign in With Apple, 本文主要介绍如何使用Go语言实现Sign in With Apple时服务端的验证, 即Generate and Validate Tokens。或者不支持第三方登录, 直接使用电话号码或者账号密码的方式进行注册以及登录。
为什么需要?日常开发过程中经常遇到需要判断某个slice(或者array)中是否包含某个item的情况,比如判断10是否在[]int{1,2,3}中
前言本文是关于如何集成Twitter第三方登录。与Google等不同的是,Twitter的第三方登录采用的是OAuth 1.0开放授权标准,所以在向授权服务器发送请求的时候需要注意了。
Go语言中的方法方法用于给指定数据类型(非内置数据类型)添加新的行为,方法实质上也是函数,与函数不同的是,每个方法包含了一个方法的作用对象参数,即:接收者。定义方法的语法为:
https://pyihe.github.io/2022/06/13/Redis%E7%B3%BB%E5%88%97%E7%AC%AC%E4%B8%89%E7%AF%87%E4%B9%8BHash/
前言Redis的Hash是字符串类型的字段和字符串类型的值之间的映射,所以Hash是用于表示对象的完美数据类型(比如表示拥有名字、姓、年龄等的用户):
树结构 树 树结构是由一个父节点以及若干个子节点,然后子节点又是其他子节点的父节点,由此而形成的一种结构即是树。其中节点的子节点的子节点叫做该节点的孙节点。如下所示:
https://pyihe.github.io/2020/09/06/%E7%BA%A2%E9%BB%91%E6%A0%91/
红黑树红黑树是每个节点都带有颜色属性(红色或黑色)的二叉查找树。红黑树也属于自平衡二叉查找树。
非对称加密对称加密有两个属性: 加密和解密使用相同的密钥。 加密函数和解密函数非常类似。 与此同时带来的缺点有:
https://pyihe.github.io/2020/06/24/Go-Channels/
前言继《[译]Go语言如何优雅地关闭channel》之后的另一篇译文。
副本集什么是副本集?顾名思义,副本集是一个集合,即MongoDB实例的集合,集合中的每个成员拥有相同的数据集合;一个副本集包含多个数据节点和一个可选的仲裁节点,在数据节点中,只有一个可以作为主节点(Primary Node),其他节点只能是第二节点(Secondary Nodes)。
前言一个完整的日志库不仅仅涵盖日志记录功能,还要包括日志level、行号、文件切分,甚至包含统计与分析等,Go语言中的日志库也是很多,其中知名度比较高的有:
https://pyihe.github.io/2022/02/24/Golang-%E5%BC%82%E6%AD%A5%E6%97%A5%E5%BF%97%E5%BA%93/
一、前言在 Go 社区中有很多优秀的开源日志框架(如: zap, logrus 等), 它们不仅功能丰富, 而且性能很好, 能够满足绝大数应用场景! 但是
问题描述通过supervisor启动etcd,配置文件配好后,start etcd时报错: unknown error making dispatchers for ‘etcd’: EACCES,截图如下:
前言在Redis Commands页面中,Redis还提供了一种名为Geospatial indices的命令,该命令是用于地理空间索引,目的是为了方便在给定的地理半径内查找位置。调用方可以通过GEOADD添加地理位置,通过GEORADIUS命令来查找指定半径范围内的位置。
前言Redis客户端使用被称为RESP(Redis序列化协议)的协议与Redis服务器进行通讯。虽然该协议是专门为Redis设计的,但它同样可以被用于其他客户端/服务器的软件项目。
前言关于使用Google第三方登录服务端如何进行登录验证。Google登录流程中,服务器的主要工作为验证用户信息以确保此次登录为有效登录,然后让当前登录的用户进行应用服务器的相应流程。另一方面,用户在授权登录后,应用服务器可以通过用户的授权获取到access_token,以便后续访问Google的其他API。
Hash函数Hash函数计算的是一个消息的摘要,并且这个摘要是一个非常短、长度固定的位字符串。对某个特定的消息而言,
问题描述客户端发起的HTTP POST请求, 到达服务器后请求方法莫名其妙变成了GET请求, 导致客户端收到的是404。
什么是Go?Go(也叫Golang)是由Google开发的一款开源的编程语言。它是一款静态编译型语言。Go支持并发编程, 即它允许多个进程同时运行, 这是通过使用通道、协程等实现。Go有垃圾回收机制,它自己实现内存管理并且允许函数的延迟执行。
前言继关于服务端如何接入Apple, Google 的第三方登录之后,这里介绍在整合Facebook 和Instagram 的第三方登录时服务端的验证工作。
https://pyihe.github.io/2020/09/09/Redis%E5%88%86%E5%B8%83%E5%BC%8F%E9%94%81/
前言在分布式架构中因为节点之间存在共享资源的竞争,所以在并发的情况下会带来的数据不一致的问题,而分布式锁则成为了一种解决方案。分布式锁的实现一般分为四种:
https://pyihe.github.io/2020/06/30/Golang%E8%B7%B3%E8%A1%A8/
跳表简介相信大家都知道排行榜,在很多场景里都需要用到排行榜功能,尤其是游戏中!之前在了解排行榜实现机制的时候,在网上看得最多的答复便是使用redis的有序集合实现。于是深入了解了一下redis中的有序集合。
介绍利用Etcd的Lease租约特性来实现定时功能,同时通过Watch机制来实现多节点情况下只有一个节点执行该任务。通过定时任务库Cron的时间字符串解析器Parser来解析任务执行时间。
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.