![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
go
文章平均质量分 79
Julywhj
负责软件开发,及其系统架构设计。
展开
-
基于GoLang实现API短信网关
在消息系统中,短信网关和短信渠道的对接是最核心的功能。其中短信网关是对外提供服务的接口,所有需要发送短信的操作都需要通过短信网关分发到对应的渠道上。一旦定型,后续就很少,也很难调整。而短信渠道是接收网关的请求,调用渠道接口执行真正的发送短信操作。每个渠道的接口,传输方式都不尽相同,所以在这里,短信网关相对短信渠道模块的作用,类似设计模式模式中的wrapper,封装各个渠道的差异,对网关呈现统一的接口。而网关的功能就是为业务提供通用接口,一些和渠道交互的公共操作,也会放置到网关中。...原创 2022-07-20 19:09:48 · 803 阅读 · 0 评论 -
Golang学习路线及基础知识点梳理
大家好,今天给大家分享Go语言的学习路线,如果大家想转Go语言或者已经在使用Go语言了,那么可以根据这个学习路线进行学习和巩固。另外分享Go语言的基础知识点,分享给大家,大家可以根据这个思路去梳理下其他的语言,构建下自己的知识体系,形成自己的技能拓扑......原创 2022-06-17 21:56:51 · 563 阅读 · 0 评论 -
Golang 操作Redis五大数据类型 String、List、Hash、Set、Zset
前言使用redis首先要部署redis,载个安装包,部署下即可,本文不赘述了。redis官网:https://redis.io/接着要下载golang的redis资源包,golang官方推荐的有redisgo和go-reids,个人认为go-redis的封装更加人性化,redisgo的调用是基于命令的,go-redis是基于方法的,所以本文先来介绍go-redis的使用。2行代码来比较下2种资源包的调用方式:redisgo: client.Do("SET", "mykey", "我是数据", "EX原创 2022-05-30 12:29:59 · 2664 阅读 · 0 评论 -
Apache Pulsar部署及可视化监控部署
一、Apache Pulsar的Local模式构建1.1、启动服务Standalone Local单机本地模式, 是pulsar最简单的安装方式, 此种方式仅适用于测试学习使用, 并无法作为生产环境中使用。下载Apache Pulsar2.10 apache-pulsar-2.10.0-bin.tar.gz服务器系统要求:Currently, Pulsar is available for 64-bit macOS, Linux, and Windows. To use Pulsar, you原创 2022-05-16 12:50:36 · 3659 阅读 · 1 评论 -
Mac OS Fabric环境搭建
一、环境准备1.1、docker环境安装这里采用官方脚本自动安装:curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun安装完成后,使用一下命令启动docker服务sudo systemctl start docker1.2、Docker Compose环境安装Linux 上我们可以从 Github 上下载它的二进制包来使用,最新发行的版本地址:https://github.com/docker/com原创 2021-12-22 18:23:06 · 12900 阅读 · 0 评论 -
Go语言Elasticsearch数据清理工具
Go语言Elasticsearch数据清理工具微服务架构中收集通常大家都采用ELK进行日志收集,同时我们还采用了SkyWalking进行链路跟踪,而SkyWalking数据存储也用到了ES,SkyWalking每天产生大量的索引数据,如下:WX20211008-104751@2x这里一天大概产生了700左右个索引数据。对历史的链路数据我们不做过多的保留。这里我整理了个小工具,可以定期清理es数据。一、清理思路可以看到索引数据都是以日期结尾,我们可以根据日期去匹配索引数据,并对原创 2021-10-08 11:34:21 · 857 阅读 · 0 评论 -
Go 语言生成钱包地址
Go 语言生成钱包地址package mainimport ( "base58" "crypto/ecdsa" "crypto/elliptic" "crypto/rand" "crypto/sha256" "fmt" "golang.org/x/crypto/ripemd160")type Wallet struct { Private *ecdsa.PrivateK...原创 2019-11-19 18:22:06 · 1602 阅读 · 0 评论 -
GO语言实现rpc服务调用
RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。简单来说,就是跟远程访问或者web请求差不多,都是一个client向远端服务器请求服务返回结果,但是web请求使用的网络协议是http高层协议,而rpc所使用的协议多为TCP,是网络层协议,减少了信息的包装,加快了处理速度...原创 2019-09-08 22:00:47 · 1106 阅读 · 0 评论 -
GO语言入门-切片的基础和本质
GO语言入门-切片的基础和本质1、为什么使用切片- 数组的容量固定,不能自动拓展值传递,数组作为参数参数时,将整个的数值拷贝一份给形参。在GO语言当中,我们几乎可以在所有的场景中,使用切片替换数组。2、切片的本质不是一个数组的指针,是一种数据结构体,用来操作数组内部元素。 /runtime/slice.go切片的结构如下:type slice struct{ ...原创 2019-09-02 22:41:25 · 237 阅读 · 0 评论 -
使用GO语言实现对称加密,DES、3DES、AES
使用GO语言实现对称加密,DES、3DES、AES测试程序package mainimport ( "bytes" "crypto/aes" "crypto/cipher" "crypto/des")// 填充最后一个分组的函数// src - 原始数据// blockSize - 每个分组的数据长度func padding(src []byte, blockSize i...原创 2019-08-31 13:29:07 · 936 阅读 · 0 评论