Go语言中文网 为您找到相关结果 498

BDT平台携手区块链,打造最有价值的数字资产平台!

区块 链这一倍受热议的蓝海项目,正在全球范围内吸引着无数参与者蜂拥而至。根据区块链公司DERO的调查显示:全世界范围内有455家公司共获得了19.47亿美元的融资。仅在中国境内就有61家公司斩获融资,位列全球第二。可随着区块链+的日益发展,参与者却逐渐发现了它的诸多弊端。[if !supportLists]一、[endif]缺乏隐私性:在区块链公有链中,每一个参与者都能够获得完整的数据备份,交易数据都是公开和透明的。通过帐户和交易信息,可轻松获得参与者的财富、重要资产、商业机密等。这无疑将给参与者带来极大的隐私风险。二、相对安全性缺失:绝对的安全,代表着相对的不安全。区块链技术一大特点就是不可逆、不可伪造,但前提是私钥是安全的。私钥是用户生成并保管的,没有第三方参与。私钥一旦丢失,便无法对账...阅读全文

博文 2018-11-27 18:34:41 栗原芽笙

Kubernetes 大咖秀徐超《使用 client-go 控制原生及拓展的 Kubernetes API》

大家好,我是徐超,从事 Kubernetes 开发已经两年多了。 今天,我从一个开发者的角度来讲一讲 client-go repository,以及怎么用 client-go 搭建 Controller。同时,也给大家讲一讲开发过程中遇到的坑,希望大家在开发的时候可以绕坑而行。 另外,我还会讲一下 Kubernetes 的 API,让 controller 功能变的更加强大。 那我们现在先来讲,有哪些方法可以跟 APIserver 进行通讯。最常用的,可能就是 kubectl,以及官方支持的 UI,Kube Dashboard,这是 google 最近投入很多的一个项目。 开发过程中 debug 的时候可以直接去调用 k8s 的 Restful API,通过写脚本去实现 Controller...阅读全文

博文 2017-01-22 12:00:06 Caicloud

从坐地起价到被首批裁员,资本寒冬下只有这样的人才能留下

文章来源:火星财经(hxcj24h) 随着资本寒冬来袭,企业一边招不到合适的人,一边不得不降薪裁员。作为区块链行业一直以来的难点,人才如今似乎已上升为最大痛点之一。 7月底,我的一位区块链同行在朋友圈发了“再见”状态,所在位置是她工作的高大上大厦。第二天,这位同学发了“失业充电中”,配图是一杯咖啡。随后的半个多月里,我的朋友圈里尽是这位同学外出旅行的照片。那时候,我还有点羡慕。 最近,又看到社群里有不小伙伴把自己的备注改成了“已离职”。我心想,现在难道流行裸辞吗?后来才知道,这些小伙伴基本上都是被裁的。(有自己的原因,也有外在环境的原因) 资本寒冬,区块链项目筹集资金能力降低根据Autonomous Research的数据,整个8月区块链初创的项目公司仅募集了3.26亿美元,这是2017年5...阅读全文

19年第41周:Go语言 微信小程序获取手机号 -加密数据解密算法-AES-128-CBC

一、简介 获取手机号 获取微信用户绑定的手机号,需先调用 wx.login 接口。 因为需要用户主动触发才能发起获取手机号接口,所以该功能不由 API 来调用,需用 button 组件的点击来触发。 注意:目前该接口针对非个人开发者,且完成了认证的小程序开放(不包含海外主体)。需谨慎使用,若用户举报较多或被发现在不必要场景下使用,微信有权永久回收该小程序的该接口权限。 二、参考官方Python示例复写Golang版本 NOTE: 微信官方没有给Golang版本,但给了C++,PHP,Node,Python版本。这里选用Python来作为参考 python版本和Golang版本对比 三、参考资料 微信小程序开发指南-获取手机号 微信小程序开发指南-加密数据解密算法-官方案例下...阅读全文

博文 2019-10-07 19:32:44 aside section ._1OhGeD

Etcd client golang example code

1. 监视某一个节点 watcher := kAPI.Watcher("workers/", &client.WatcherOptions{ Recursive: true, }) for { res, err := watcher.Next(context.Background()) if err != nil { log.Println("Error watch workers:", err) break } if res.Action == "expire" { member, ok := m.members[res.Node.Key] if ok { member.InGroup = false } } else if res.Action == "set" || res.Actio...阅读全文

博文 2016-06-12 16:00:00 htyu_0203_39

「链得得“日常吐槽”」离子链刘涛:物联网无需区块链颠覆,需要区块链去完善提升

离子链官网:ionchain.org 点开直达!本文原发于链得得app链接地址:https://baijiahao.baidu.com/s?id=1611323157833044253&wfr=spider&for=pc链得得App注:链得得《无眠吐槽大会》是一档聚焦区块链领域的高质量吐槽节目。每一期将针对区块链领域较为热门的项目/话题/现象,邀请项目负责人/话题当事人做客现场,和社群用户进行有理有据、交锋激烈的高质量辩论,理性吐槽、科学互怼。链得得旨在通过专业高质量的吐槽辩论,打造去中心化的项目评估平台,直面谎言和泡沫,为行业正本清源。同时,让主角和创造者回归给用户,让每个用户真正参与价值创造,传递知识,在“吐槽”中学习成长。共识生于质疑、盛于理解,链得得喊你来吐槽! 9月11日晚8点,离...阅读全文

博文 2018-09-12 18:34:41 IONChain离子链

压缩go build打包的可执行文件

前言 最近在写一个cli程序,习惯性的go build之后发现简简单单的几行代码打包出来就3.0+MB了,为此被做Python的同学嘲笑了很久,于是就研究了一下go build产生的可执行文件的压缩 代码示例 代码如下: package main import ( "os" "gopkg.in/urfave/cli.v2" ) const ( APP_NAME = "etcd-cli" APP_VERSION = "0.1" APP_USAGE = "etcd-cli是一个简单实用的etcd命令行客户端,帮助你彻底解脱一次又一次的输入etcdctl" ) func main() { app := new(cli.App) app.Name = APP_NAME app.Version = A...阅读全文

博文 2017-08-17 17:05:04 gwpp

游戏分布式mmo游戏服务器

gonet 游戏服务器架构,mmo架构,分布式snowflake64为整形uuid,ai行为树,配置data,游戏大部分都在内存运算,分布式缓存redis,增加db模块读取blob数据。 设计之初,建立在actor模式下的;rpc,以及消息驱动,rpc无需注册,支持通用数据(int,[]int,[3]int),map数据,以及struct数据,rpc性能测试如下;sql封装简单的orm(orm支持pb结构体做mysql blob,orm支持结构体做mysql json类型)具体看demo websocket模式下,要在net,websocket注视掉如下代码,在netgateserver里面注释回//websocket这段 代码除了mysql,protobuf,redis,...阅读全文

开源项目 2019-08-26 16:31:42

golang xlsx读写

func TestRequest_LoadFromRemote2(t *testing.T) { xlsxfile2, err := xlsx.OpenFile("E:/apihub/1数据核查/信息核查数据.xlsx") if err != nil{ fmt.Println( err) return } for _, sheet := range xlsxfile2.Sheets { for indexr, row := range sheet.Rows { if indexr < 2 { continue } //if indexr >= 3{ // break //} fmt.Print(fmt.Sprint(indexr)+"姓名:",strings.Trim(row.Cells[1...阅读全文

博文 2018-06-21 15:34:38 Feng_Sir

深入浅出Docker(六):像谷歌一样部署你的应用

【编者按】Docker是PaaS供应商dotCloud开源的一个基于LXC 的高级容器引擎,源代码托管在 GitHub 上, 基于Go语言开发并遵从Apache 2.0协议开源。Docker提供了一种在安全、可重复的环境中自动部署软件的方式,它的出现拉开了基于云计算平台发布产品方式的变革序幕。为了更好的促进Docker在国内的发展以及传播,我们决定开设《深入浅出Docker》专栏,邀请Docker相关的布道师、开发人员、技术专家来讲述Docker的各方面内容,让读者对Docker有更深入的了解,并且能够积极投入到新技术的讨论和实践中。另外,欢迎加入InfoQ Docker技术交流群交流Docker的最佳实践,QQ群号:124378115。 1.概述 谷歌发起的开源项目从来都是广受技术圈的关注...阅读全文

博文 2015-03-29 19:53:02 肖德时

购买国内虚拟主机怎样选择机房?需要注意什么?

购买了国内虚拟主机,怎样选择机房,成了大家头疼的事情,毕竟没有好的机房去辅助,再好的虚拟主机也不能很好的发挥。 国内虚拟主机机房的选择主要考虑是速度,安全等,另外举例网站访客的物理位置靠近,举例越短访问速度快而且稳定。 分两方面考虑,地理位置和是否备案 从地理位置上。一般情况下我们建议选择离自己目标用户所在地域最接近的数据中心,这样可以进一步提升用户访问速度。比如:华北用户推荐选北京和青岛地域,华东用户选杭州地域,华南地域用户可选广州和深圳地域。机房越近,你搭建的网站就经常有秒开的刺激。与自己的电脑本地搭建的服务器相近。 从备案与否。无论是华北机房用户,还是其他国内机房,国内机房都需要按照工信部的要求来操作,对网站进行备案,域名有备案号则可直接购买主机使用。如购买的国...阅读全文

闲谈Kubernetes 的主要特性和经验分享

主要介绍 Kubernetes 的主要特性和一些经验。先从整体上看一下Kubernetes的一些理念和基本架构, 然后从网络、 资源管理、存储、服务发现、负载均衡、高可用、rolling upgrade、安全、监控等方面向大家简单介绍Kubernetes的这些主要特性。 我们先从整体上看一下Kubernetes的一些理念和基本架构, 然后从网络、 资源管理、存储、服务发现、负载均衡、高可用、rolling upgrade、安全、监控等方面向大家简单介绍Kubernetes的这些主要特性。 当然也会包括一些需要注意的问题。主要目的是帮助大家快速理解 Kubernetes的主要功能,今后在研究和使用这个具的时候有所参考和帮助。 ##1.Kubernetes的一些理念: 1...阅读全文

alpha—go

LOL心得:你必须知道的100件事 闪现是个智能施法,鼠标点哪里,它就闪哪里,所以别把鼠标放在自己脚下闪现,你会华丽丽的留在原地。 治疗术有DEBUFF,放完一个下一个会减少一半的治疗量,所以最好别一起用掉很多个治疗。 CTRL加某个技能的按键是升级此技能,比如CTRL+Q就是升级Q技能。所以你看到视频里的大神们都不用鼠标加点。 车子和超级兵都有个BUFF减少防御塔的伤害,所以防守时先把车子打掉。 防御塔会越打越痛,所以不要抗太久塔。 法伤对于攻击建筑有物理加成,例如500法伤的死歌,他只有100的攻击,但是打塔可能是200的伤害。 除非你们人数领先或者你妈妈喊你回家吃饭,对面五人在高地守着你们最好还是先拿外塔。 顺风血剑逆风无尽,虽然不是百分之百完美的打法,但是所有ADC几乎都可以这么出装...阅读全文

除痛指南 | P2P公司贷前风控福利贴

最近,随着数据宝的壮大和业务多样化 (骄傲脸)宝妹接到了很多case, 宝妹发现了一些相同的烦恼 临近年末,P2P公司生意火爆, 后台提出了各式各样的烦恼或需求 但细心的宝妹还是做了一个针对性的总结; 借此,宝妹还申请到了这次的专场福利, P2P公司-李先生 宝妹,我们在核查客户信息时经常碰到盲点, 被一些假身份、假号码糊弄,求帮助! 您的问题,宝妹已经在后台收到了呢, 对于这位P2P小伙伴的烦恼, 我们为您推荐以下接口 给您一面“照妖镜”助您让假身份无所遁形, 精准辨别借贷身份真实性。 ![1..jpg](http://studygolang.qiniudn.com/161124/f46f67d68ff96fab7cd54524a96379fb...阅读全文

centos下安装UPX+压缩golang可执行程序

centos安装upx wget -c http://ftp.tu-chemnitz.de/pub/linux/dag/redhat/el7/en/x86_64/rpmforge/RPMS/ucl-1.03-2.el7.rf.x86_64.rpm rpm -Uvh ucl-1.03-2.el7.rf.x86_64.rpm yum install ucl wget -c http://ftp.tu-chemnitz.de/pub/linux/dag/redhat/el7/en/x86_64/rpmforge/RPMS/upx-3.91-1.el7.rf.x86_64.rpm rpm -Uvh upx-3.91-1.el7.rf.x86_64.rpm yum install upx #upx压缩...阅读全文

博文 2017-08-25 09:03:27 雨花

数字货币招商中心-致力打造一站式服务平台

数字货币招商中心-致力打造一站式服务平台 咨询V:psweiweixiao 加盟QQ:315-479-1797对于币安链未来的生态是如何规划的?会有哪些计划来吸引开发者?用比特币支付仅是开始,星巴克在区块链上布局原来这么多核财经 ·05月07日热度: 2506不管技术细节如何实现,但用加密货币购买星巴克咖啡,将不再是一个遥远的梦想。00:00--:-- 据科技新闻网站GeekWire 5月6日报道,总部位于美国的咖啡连锁店星巴克将采用科技巨头微软的Azure区块链服务来跟踪咖啡生产。白话区块链问: 对于币安链未来的生态,币安是如何考虑的?会有哪些计划来吸引开发者? CZ答: 目前,币安链会基于投融资、发币、二级市场交易形成未来的生态圈。所有项目方可以直接在链上发币,申请上币经由节点投票通过后...阅读全文

博文 2019-05-07 13:35:14 数字货币一站式服务

数据宝Top10最优配API已为您选好!

数据宝专注做您数据接口版的“右先生”,实实在在为您提供多种多样的一手直连数据,贴心定制专属折扣,配备专属的一站式服务团队。 $_$宠爱三生三世,约“惠”仅此一次!更有充值¥10000送¥800活动为您奉上~~ ※ 用户画像、精准营销、个人征信必须の~~乘机人价值评估&全国运营商详单&个人银行卡消费报告 ※ 助力020、电商平台个人信息验证、反欺诈の~~个人实名认证&手机号反套利 ※ 相亲、招聘等社交网站信息核查必须の~~学历查询&身份证照片查询 ※ 网约车、网贷等资金交易平台,核实信息、降低运营风险必备の~~银行卡四元素信息验证&手机在网时长查询&风险清单查询 ※ 请注意:以上接口均需要授权方可查询应用! $_$ 还在等什么?现在注册认证即可获享免费...阅读全文

golang 通过 Redis GEO 实现 LBS 功能

LBS 基于位置的服务(Location Based Services,LBS),是利用各类型的定位技术来获取定位设备当前的所在位置,通过移动互联网向定位设备提供信息资源和基础服务。LBS首先读者可利用定位技术确定自身的空间位置,随后读者便可通过移动互联网来获取与位置相关资源和信息。LBS服务中融合了移动通讯、互联网络、空间定位、位置信息、大数据等多种信息技术,利用移动互联网络服务平台进行数据更新和交互,使用户可以通过空间定位来获取相应的服务。 redis 中关于 GEO 的方法 geoadd:增加某个位置的坐标。 geopos:获取某个位置的坐标。 geohash:获取某个位置的geohash值。 geodist:获取两个位置的距离。 georadius:根据给定位置坐标获取指定范围内的位...阅读全文

博文 2020-03-17 15:32:53 hwholiday

深圳羚羊极速科技有限公司 招聘golang开发工程师

go语言开发工程师 岗位职责: 1. 负责分布式系统设计与实现 2. 负责云存储系统的维护和优化 任职要求: 1. 3年以上 Linux 操作系统下的 C/C++项目的开发经验 2. 有分布式存储开发、设计、架构经验,深刻理解分布式存储原理 3. 精通linux IO系统、网络系统,精通高性能系统者优先 4. 有RabbitMQ开发经验者优先 5. 有go语言开发经验者优先 6. 具备良好的分析解决问题能力,能独立承担任务和有系统进度把控能力 7. 有良好的团队合作能力,富有工作激情,善于沟通,热爱开发事业 工作地址 深圳市南山区软件产业基地后海大道2388号怡化金融科技大厦1301 联系电话: 0755-26651282 kelly.wa...阅读全文

使用Golang利用ectd实现一个分布式锁

http://blog.codeg.cn/post/blog/2016-02-24-distrubute-lock-over-etcd/ By zieckey · 2016年02月24日 · 1205 Words · ~3min reading time | 编辑这个页面 | Tags: Golang etcd 分布式 本文 http://blog.codeg.cn/post/blog/2016-02-24-distrubute-lock-over-etcd/ 是作者zieckey在研究和学习相关内容时所做的笔记,欢迎广大朋友指正和交流! 版权所有,欢迎转载和分享,但请保留此段声明。 etcd是随着CoreOS项目一起成长起来的,随着Golang和CoreOS等项目在开源社区日益火热, et...阅读全文

博文 2016-06-22 02:00:01 diegodu

traefik简介

traefik(https://traefik.io/)是一款开源的反向代理与负载均衡工具。它最大的优点是能够与常见的微服务系统直接整合,可以实现自动化动态配置。目前支持Docker, Swarm, Mesos/Marathon, Mesos, Kubernetes, Consul, Etcd, Zookeeper, BoltDB, Rest API等等后端模型。 traefik的具体模型如下: 为什么选择traefik? 事实上在之前我对LB的选择一直更倾向于使用HAProxy。但是选择traefik主要是有以下特点让我们决定使用: Golang编写,单文件部署,与系统无关,同时也提供小尺寸Docker镜像。 支持Docker/Etcd后端,天然连接我们的微服务集群。 内置Web UI,管...阅读全文

博文 2017-02-10 15:44:47 kevin

alpha—go

LOL心得:你必须知道的100件事 闪现是个智能施法,鼠标点哪里,它就闪哪里,所以别把鼠标放在自己脚下闪现,你会华丽丽的留在原地。 治疗术有DEBUFF,放完一个下一个会减少一半的治疗量,所以最好别一起用掉很多个治疗。 CTRL加某个技能的按键是升级此技能,比如CTRL+Q就是升级Q技能。所以你看到视频里的大神们都不用鼠标加点。 车子和超级兵都有个BUFF减少防御塔的伤害,所以防守时先把车子打掉。 防御塔会越打越痛,所以不要抗太久塔。 法伤对于攻击建筑有物理加成,例如500法伤的死歌,他只有100的攻击,但是打塔可能是200的伤害。 除非你们人数领先或者你妈妈喊你回家吃饭,对面五人在高地守着你们最好还是先拿外塔。 顺风血剑逆风无尽,虽然不是百分之百完美的打法,但是所有ADC几乎都可以这么出装...阅读全文

【北京】滴滴golang开发工程师急招

滴滴出行社招—平台技术HR直招-- Golang开发工程师—北京 岗位职责: 1. 参与滴滴基础服务平台的设计、研发工作,提升滴滴产品稳定性; 2. 与产品经理尝试沟通产品需求; 3. 进行相关产品的技术文档编写,方案设计; 4. 学习研究业界先进技术,保持技术进步。 任职要求: 1. 本科及以上学历,计算机相关专业,两年以上服务端研发经验; 2. 深入理解计算机原理,有扎实的数据结构和算法基础; 3. 深入理解linux系统及其原理,熟悉TCP/IP、HTTP协议以及网络编程; 4. 良好的编码和文档习惯,对代码美感的追求孜孜不倦; 5. 精通Go/C/C++/Python等至少一门语言,有Go开发经验者优先; 6. 熟悉常用的sql、nosql(非关系型数据库)数...阅读全文

聚合支付公司独立研发的聚合支付服务平台

第四方支付是相对第三方而言的,作为对第三方支付平台服务的拓展。第三方支付介于银行和商户之间,而第四方支付是介于第三方支付和商户之间,没有支付许可牌照的限制。 第四方支付集中了各种三方支付平台的接口,也就是说集合了各个第三方支付的优势,能够根据商户的需求进行个性化定制,形成支付通道资源互补优势,满足商户需求,提供适合商户的支付解决方案。 总体来讲,第四方支付属于支付服务集成商,具有第三方支付无可比拟的灵活性,便捷性和支付服务互补性。而且第四方支付比第三方支付更具中立性优势,可以一定程度上调和目前第三方支付恶意竞争的状况,保证支付行业健康发展。 现在市面上的支付系统太多了,价钱不一、开发语言多种多样,什么JAVA、.NET、PHP、GOLANG等等。每个公司都打着自己的支付系统才是真正好的系统,...阅读全文

博文 2019-03-23 12:34:41 qq3201809208

微信中继服务器wx_relay_server

wx_relay_server是一款微信公众号第三方平台中继服务器,用于刷新公众号平台自身的token和托管的公众号token。 **目的:** 其他服务采用拉服务模式,通过rpcx进行rpc通信,获取相关微信token. 用户微信公众号第三方平台刷公众号平台和托管的公众号appid的相关token, 该服务不能停超过10分钟. 主要刷公众号第三方平台的component_access_token和preauthcode, 公众号的authorizer_access_token和authorizer_refresh_token **存储方式:** etcd存储rpc服务地址和微信公众号平台和公众号token, 使用etcd的ttl特性,并watch并刷新 **新增服务的可靠性措施*...阅读全文

开源项目 2017-03-09 17:00:47 1046102779

美团云老板和老板娘去度假,员工任性!5折券再送5天!!!

【活动介绍】值双11来临之际,美团云特别推出云主机,网络,数据库,负载均衡等产品的5折优惠券,以及对象存储3折优惠券。同时还推出“买就返享5折”,“以及分享得返利”等特惠活动,欲知详情,就请戳下方的活动链接吧! 悄悄告诉你~大老板和老板娘去度假了!我们任性的将活动延期5天! 【领券地址】: https://mos.meituan.com/activity1510?site=golang&location=homepage&campaign=20151026sales ![5tian.jpg](http://studygolang.qiniudn.com/151109/b3eeebbde478e6396d00b2c095365dc3.jpg) 【活动时间】10月26日至...阅读全文

1.Golang介绍

Go 语言是谷歌为充分利用现代硬件性能又兼顾开发效率而设计的一种全新语言。 Go 是一种跨平台(Mac OS、Windows、Linux 等)静态编译型语言。拥有媲美 C 语言的强大性能,支持静态类型安全,在普通计算机上能几秒内快速编译一个大项目,开发效率跟动态语言相差无几。 Go 语言在国内拥有非常活跃的社区、不仅大公司的 Go 项目越来越多,中小公司也都在考虑 Go 的应用。当前 Go 语言主要应用于后端服务的开发,未来随着 Go 项目的完善,在系统、游戏、UI界面、AI、物联网等领域,都将被广泛使用。 当然 Go 语言有优点也有一些缺点,完美的东西毕竟太少,如果看好 Go 的未来发展,那么不如抛开成见先来体验一番...阅读全文

博文 2018-10-30 05:34:41 野尘lxw

掌游天下 广告平台招聘 Golang 开发工程师 欢迎感兴趣的小伙伴加入

岗位职责 开发adexchange广告交易平台 任职要求: 1、工作经验3年以上,并且作为骨干程序员参与过二个以上产品(或项目)的开发; 2、 熟练掌握Go语言或者有多年C/C++/Erlang/Python/Ruby开发经验; 3、 有多年使用Mysql或PostgreSQL等其他关系型数据库经验; 4、熟悉MongoDB 、Redis 等NoSQL数据库; 5、熟练使用Github、TDD; 6、英语阅读能力良好。 简历投递邮箱:wangmingjing@zplay.com 职位咨询电话:010-5339167...阅读全文

Golang老男孩Go语言第一期

微信号:new_video qq号码:2381392963资料来源网络,仅供学习使用,请勿传播。如有侵权,请联系删除。 课程介绍: Go语言是谷歌推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗布派克(RobPike)说:我们之所以开发Go,是因为过去10...课程截图...阅读全文

博文 2019-08-20 16:02:57 天天向上学习

Etcd 架构与实现解析

前一段时间的项目里用到了 Etcd, 所以研究了一下它的源码以及实现。网上关于 Etcd 的使用介绍的文章不少,但分析具体架构实现的文章不多,同时 Etcd v3的文档也非常稀缺。本文通过分析 Etcd 的架构与实现,了解其优缺点以及瓶颈点,一方面可以学习分布式系统的架构,另外一方面也可以保证在业务中正确使用 Etcd,知其然同时知其所以然,避免误用。最后介绍 Etcd 周边的工具和一些使用注意事项。 阅读对象:分布式系统爱好者,正在或者打算在项目中使用Etcd的开发人员。 Etcd 按照官方介绍 Etcd is a distributed, consistent key-value store for shared configuration and service discovery 是...阅读全文

博文 2017-02-09 19:54:39 jolestar

go基于grpc构建微服务框架-服务注册与发现

概述 grpc 是谷歌开源的rpc框架,基于http2实现,并支持跨语言,目前基本涵盖了主流语言.跨语言的实现主要得益于protobuf,通过编写proto文件,通过protobuf工具生成对应语言的类库进行使用. 对于go这样一门新生语言来说,生态链还处于发展阶段,微服务框架也是如此,下面将基于grpc-go版本搭建一个微服务通讯框架. 1.服务注册与发布的机制 1.1 解决的问题 服务注册与发布主要解决的服务依赖问题,通常意义上,如果A服务调用B服务时,最直接的做法是配置IP地址和端口.但随着服务依赖变多时,配置将会是否庞杂,且当服务发生迁移时,那么所有相关服务的配置均需要修改,这将十分难以维护以及容易出现问题.因此为了解决这种服务依赖关系,服务注册与发布应运而生. 1.2 机制 服务注...阅读全文

博文 2018-04-20 15:34:58 沐风

Golang 通过 Consul 实现分布式锁

Consul 是什么 Consul 是一个支持多数据中心分布式高可用的服务发现和配置共享的服务软件,由 HashiCorp 公司用 Go 语言开发, 基于 Mozilla Public License 2.0 的协议进行开源. Consul 支持健康检查,并允许 HTTP 和 DNS 协议调用 API 存储键值对. 命令行超级好用的虚拟机管理软件 vgrant 也是 HashiCorp 公司开发的产品. 一致性协议采用 Raft 算法,用来保证服务的高可用. 使用 GOSSIP 协议管理成员和广播消息, 并且支持 ACL 访问控制. Consul 的使用场景 docker 实例的注册与配置共享 coreos 实例的注册与配置共享 vitess 集群 SaaS 应用的配置共享 与 confd ...阅读全文

博文 2017-07-11 11:04:05 徐学良

Golang 读取写入Etcd数据库

文出处:个人博客地址:http://www.damonyi.cc/?p=194 项目中用到Etcd数据库来存储容器的信息和应用的域名信息,将操作Etcd的golang代码整理了一下 1、将Container信息写入到指定目录 c, err := common.GetEtcdClient() if err != nil { beego.Error("get etcd client failed") return } kapi := client.NewKeysAPI(c) key := getSkyDnsDomain(domainEtcd.Domain) value, _ := json.Marshal(domainEtcd) var etcderr error common.HaproxyT...阅读全文

博文 2016-07-01 17:00:01 wangdk789

理解Kubernetes网络之Flannel网络

第一次采用kube-up.sh脚本方式安装的Kubernetes cluster目前运行良好,master node上的组件状态也始终是“没毛病”: # kubectl get cs NAME STATUS MESSAGE ERROR controller-manager Healthy ok scheduler Healthy ok etcd-0 Healthy {"health": "true"} 不过在第二次尝试用kubeadm安装和初始化Kubernetes cluster时遇到的各种网络问题还是让我“心有余悸”。于是趁上个周末,对Kubernetes的网络原理进行了一些针对性的学习。这里把对Kubernetes网络的理解记录一下和大家一起分享。 Kubernetes支持Flanne...阅读全文

博文 2017-02-06 03:21:36 bigwhite

[Unity 3d] tabtoy - 跨平台的高性能便捷电子表格导出器 - GitHub

Excel 导表工具,其二! GitHub 上的工程多如繁星,有些好的仓库,但凡不经意间错过了就很难找回,故稍作采撷,希望能帮助到有心人。 本文集以一个小的功能点为单位行文,也便于拾取罢! 简介: 笔者今天推荐的仓库叫 tabtoy。 这个可谓是一个导表神器了。 功能: 编写电子表格, 导出. 只需2步, 即可导出数据! 跨平台运行, 无第三方依赖, 无需任何的vbs,vba,dll 支持文件格式最多的导出器(json, lua, C#+二进制, protobuf text, proto, golang) 一次设置, 自动生成索引代码, 支持lua, C# 单元格字段列顺序随意调整, 自动检查错误, 精确报错位置 强类型, 导出时自动类型检查, 提前暴露表格错误 支持中文枚举值, 中文结构体...阅读全文

博文 2019-07-15 22:02:41 雨落随风

猎头职位-区块链开发-Go

我是合伙猫的合伙人Kevin,从事研发人才服务10年。合伙猫是专注于区块链人才服务的猎头供应商,目前跟国内最专业的区块链人才服务商,合作客户涉及数字货币交易平台、公链底层研究、联盟链底层研究、钱包开发、区块链运用开发等,岗位涉及城市:北京、上海、杭州、深圳。目前大量招聘Go语言扎实,对区块链感兴趣的同学,如果满足以下条件的同学欢迎随时勾搭: ** 1、为开源组织长年做出重大贡献者 2、熟练掌握golang python 3、3年以上工作经验 名牌大学毕业(状元之类的)或者数学家 4、算法、密码学、博弈论、控制论、量子计算超强的 5、熟练掌握分布式系统、AI、GAN、大数据、集群、量化交易、云计算的 6、算法爱好者 ** 勾搭方式,**邮箱:ke...阅读全文

golang的etcd

etcd 是由CoreOS开发,用于可靠地存储集群的配置数据的一种持久性,轻量型的,分布式的键-值数据存储。表示在任何给定时间点处的集群的整体状态。其他组件在注意到存储的变化之后,会变成相应的状态。 etcd 有golang 编写 kubernets体系中主要用于 服务注册 + 服务发现. // 以下为俺们封装的grpc调用 etcd的调用逻辑. 服务端. 注册服务. client端. 发现服务. 使用服务. 2.1 导入 invoker 包 main.go -> service.Init() -> 相关grpc的初始化. -> 导入 git.dz11.com/vega/invoker 包. 2.2 invoker包的init函数执行. 在 invoker/register.go 中. in...阅读全文

博文 2019-02-21 21:34:42 个00个

分布式任务调度平台-forest

# 分布式任务调度平台 > 演示地址:http://122.51.106.217:6579 ## 前言 在企业系统开发过程中难免少不了一些定时任务来进行定时触发执行任务,对于非分布式环境系统中,我们只需要在对应系统中内部集成一些调度库进行配置定时触发即可。 比如:使用Spring框架集成quartz,只需要进行一些简单的配置就能定时执行任务了。但是随着企业的系统越来越多、逐步从单一应用慢慢演变为微服务集群。 在分布式集群系统中主要面临出如:任务的重复执行、没有统一定时任务配置、任务节点故障转移、任务监控&报警等一些列的功能都是要在分布式系统中进行解决。 此分布式的定时任务调度平台,它非常轻量小巧,使用简单,后端以中心服务器为调度核心,负责集群中各种任务的动态分配和调度执行。 在平台前端支持W...阅读全文

博文 2019-10-23 11:27:45 busgo

Go语言开发分布式任务调度 轻松搞定高性能Crontab

第1章 课程介绍本章中将介绍一下本课程的基本内容,包括:我们要做什么、要求什么基础、将学会哪些工具、收获哪些独家干货,以及课程具体安排。第2章 如何执行shell命令执行"定时任务"其实就是执行"shell命令"。在本章中,将首先带大家区分"程序"与"命令",接着了解bash命令解释器的2种工作模式,并图示分析shell执行任务的底层原理与涉及的系统调用。最后,我们使会用Go语言的Command标准库,实现任务的执行,输出捕获,杀死任务等重要功能。 ...第3章 如何解析cron表达式cron表达式是配置定时任务执行周期的核心工具。在本章中,将首先分析cron表达式的构成以及解析逻辑,并利用开源项目cronexpr解析cron表达式并计算任务的下次调度时间。之后,我们将利用其实现任务并发调度...阅读全文

博文 2019-03-14 01:34:41 18304356293

10分钟将你的Go工程转换为Go Module模式

引言自从在Go 1.11和更高版本中引入了Go的新的依赖管理系统以来,GoLang开发人员已经接受了包版本控制解决方案。这样做的用户可以使用GoCenter存储库中的不可变公共Go 模块,并通过更健壮、更可靠的Go Pipeline获得更快的构建速度。 但是,将现有的项目转换为使用Go Module并不总是很容易,尤其是如果该项目已经尝试过GoLang的其他包管理解决方案时。 为了帮助GoLang社区正确地使用Go Module,我们将使用开源的etcd项目(Kubernetes使用的键值数据存储)作为示例。这是一个最佳实践的实际示例,因为它足够复杂,可以展示一些常见的实践 PS:在上一篇关于Go语言开发的的文章中(传送门:Go 语言依赖管理的优势),我们介绍了Go 依赖管理的发展历史以及G...阅读全文

博文 2019-09-17 11:33:19 JFrog中国

ABS是啥,为什么区块链可以与它完美结合?

链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 房地产市场在各方调控下终于进入新的平稳期,但租房市场近日来却是水涨船高。抛开传统的租售比概念不谈,今天小编想和大家谈谈ABS模式是如何改变传统租房市场,以及区块链技术将给ABS带来哪些机遇。 如果你是一个金融小白,肯定连ABS是什么都不知道。事实上,所谓ABS,也就是资产证券化,它指的是将缺乏流动性、但具有可预期收入的资产进行打包,通过在资本市场上发行证券的方式予以出售,以最大化提高资产的流动性。 注意!重点来了:“提高资产流动性”。这对于金融行业来说意味着利润乃至生死。可是,这和租房市场有什么关系呢?以长租公寓为例,如果租房人和中介签订的是租房消费分期贷款产品,那么这笔消费分期贷款就是一个缺乏流动性、但具有可预...阅读全文

博文 2019-09-18 16:32:39 链客

海量数据实时在线分析Quick BI入门

课程介绍 Quick BI 专为云上用户量身打造的新一代智能BI服务平台,本课程主要介绍Quick BI的基础用法。 产品优势如下: 无缝集成云上数据:支持多种数据源:RDS、ADS、MaxCompute;ECS自建Mysql、SqlServer;本地文件等。 快速搭建数据门户:拖拽式操作、强大的数据建模、丰富的可视化图表、快速搭建数据门户。 灵活嵌入第三方系统:仪表板可嵌入到自有系统,直接在自有系统访问报表, 并实现免登。 安全管控数据权限:内置组织成员管理,支持行级数据权限,满足同一份报表,不同人看不同的数据。 学习入口:[请点击这里](http://click.aliyun.com/m/27918/) 课程目标 学习阿里云Qui...阅读全文