go
三月神
这个作者很懒,什么都没留下…
展开
-
RSA加密解密(无数据大小限制,php、go、java互通实现)
RSA加解密中必须考虑到的密钥长度、明文长度和密文长度问题。明文长度需要小于密钥长度,而密文长度则等于密钥长度。因此当加密内容长度大于密钥长度时,有效的RSA加解密就需要对内容进行分段。这是因为,RSA算法本身要求加密内容也就是明文长度m必须0<m<密钥长度n。如果小于这个长度就需要进行padding,因为如果没有padding,就无法确定解密后内容的真实长度,字符串之类的内容问题还不...转载 2018-03-26 13:43:37 · 5906 阅读 · 1 评论 -
从Protocol Buffers 到 gRPC
从Protocol Buffers 到 gRPC标签: ProtoBuf gRPC HTTP/2我们项目中准备使用Protocol Buffers来进行服务器和客户端的消息交互,采用gRPC开源框架,服务器使用Java,客户端有Android和iOS。[TOC]一、Protocol BuffersProtocol Buffers是google的一个开源项目,它是用于结构化数据串转载 2018-01-17 15:56:28 · 1454 阅读 · 0 评论 -
Golang gRPC实践 连载三 Protobuf语法
Protobuf语法gRPC推荐使用proto3,本节只介绍常用语法,更多高级使用姿势请参考官方文档Message定义一个message类型定义描述了一个请求或相应的消息格式,可以包含多种类型字段。例如定义一个搜索请求的消息格式,每个请求包含查询字符串、页码、每页数目。syntax = "proto3";message SearchRequest { s转载 2018-01-17 15:41:59 · 3930 阅读 · 1 评论 -
grpc+etcd报错 there is no address available
猜测是异步的原因d导致的1、加etcd+grpc例子 ticker := time.NewTicker(1 * time.Second)逻辑(不过这种稍微麻烦)2、在客户端调用时:多加一个grpc.WithBlock()可以解决,conn, err := grpc.DialContext(ctx, *reg, grpc.WithInsecure(), grpc.WithBalanc原创 2017-12-29 16:37:06 · 2219 阅读 · 0 评论 -
go反射通过字符串调用方法
package mainimport "fmt"import "reflect"func MyMissionMethod(a string){ fmt.Println("hello, world, this is my mission.") fmt.Printf("and this is my params: %s \n", a)}func CallMethod(method int转载 2017-12-19 15:26:00 · 5141 阅读 · 0 评论 -
gogradle显示java.nio.file.FileSystemException: 客户端没有所需的特权
Run secpol.mscGo to Security Settings|Local Policies|User Rights Assignment|Create symbolic links(用户权限分配/创建符号链接)Add your user name.Restart your session.Win10 with UAC turned原创 2017-12-22 10:09:33 · 4561 阅读 · 0 评论 -
基于GRPC+consul通信的服务化框架
—.背景 谈论服务化框架的时候,我们首先先了解这些概念:SOA、ESB、OSGi、servicemix、微服务、Spring Boot SOA:面向服务架构,传统简单的网站系统采用MVC架构,随着系统需求不断的变化和业务不断的扩展,MVC显得很无力,MVC不断的变大,维护开发越来越困难,SOA解决的是MVC里面大而核心的功能,抽离出来做成服务提供给不断变转载 2017-12-15 14:29:14 · 1025 阅读 · 0 评论 -
consul UI用127可以访问,指定ip无法访问
./consul agent -dev -client 0.0.0.0 -ui需要加上红色这段才能指定ip访问原创 2017-12-22 02:52:20 · 11395 阅读 · 1 评论 -
golang str转json的转义问题
package mainimport "fmt"import "encoding/json"import "bytes"type Track struct { XmlRequest string `json:"xmlRequest"`}func JSONMarshal(t interface{}) ([]byte, error) { buffer := &...转载 2018-04-12 09:53:15 · 10851 阅读 · 0 评论