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

为什么80%的码农都做不了架构师?

一般来说技术团队的金字塔顶尖往往是技术最牛的人做架构师(或TL)。所以架构师在广大码农中的占比大概平均不到 20%。而架构师也可以分为初级、中级、高级,江湖上真正高水平的架构师就更少了。所以,80%码农干上许多年,还是做不了架构师,正在辛苦工作的程序员们,你有没有下面几种感觉?​① 我的工作就是按时完成领导交给我的任务,至于代码写的怎样,知道有改进空间,但没时间去改进,关键是领导也不给时间啊。② 我发现我的水平总是跟不上技术的进步,有太多想学的东西要学,Swoft用的人最近比较多啊,听说最近Swoole比较火,还有微服务,听说PHP又更新了……③ 我发现虽然我工作5年了,除了不停的Coding写业务代码,Ctrl+c和Ctrl+V更熟练了,但编码水平并没有提高,还是一个普通程序员,但有人已经...阅读全文

博文 2019-06-20 12:03:47 PHPsix

微信朋友圈转疯了(golang写小爬虫抓取朋友圈文章)

很多人在朋友圈里转发一些文章,标题都是什么转疯啦之类,虽然大多都也是广告啦,我觉得还蛮无聊的,但是的确是有一些文章是非常值得收藏的,比如老婆经常就会收藏一些养生和美容的文章在微信里看。 今天就突发奇想,不如利用搜索引擎把朋友圈的文章分门别类的(当然是老婆感兴趣的类型了)抓取出来,然后把图片也Down下来,生成一个网站给朋友们看岂不是不错? 说做就做,于是就有了这个网站:朋友圈转疯了 (http://www.meijia0.com) 域名不太好,凑合着用呗。(之前其实是准备用来做美甲图片站的,后来搁置了。因为老婆在家真的是没有时间去经营这种东西)。 既然说做就做,先利其器嘛, 把落灰的GO再捡起来,顺便学习了一下七牛云存储的API(不得不说真的是很受用),写了一个spider(gocrawl/...阅读全文

博文 2014-10-04 19:26:07 forbe

golang Socket编程

Socket基础知识 通过上面的介绍我们知道Socket有两种:TCP Socket和UDP Socket,TCP和UDP 通过上面的介绍我们知道Socket有两种:TCP Socket和UDP Socket,TCP和UDP是协议,而要确定一个进程的需要三元组,需要IP地址和端口。 IPv4地址 目前的全球因特网所采用的协议族是TCP/IP协议。IP是TCP/IP协议中网络层的协议,是TCP/IP协议族的核心协议。目前IP协议的版本号是4(简称为IPv4),发展至今已经使用了30多年。 IPv4的地址位数为32位,也就是最多有2的32次方的电脑可以联到Internet上。近十年来由于互联网的蓬勃发展,IP位址的需求量愈来愈大,使得IP位址的发放愈趋严格,目前基本上IPv4的地址很少了,我们公...阅读全文

博文 2014-10-04 19:26:06 zhjih123

20 个好用的 Go 语言微服务开发框架

作者 | Peter Wayner译者 | 阿拉丁2007 年,谷歌的一个团队在调研计算机编程语言时,发现有数百种可用于开发软件的语言,但没有一种能提供谷歌真正需要的特性。有些语言太过底层,有些又太过复杂,有些特性对他们来说反而会碍手碍脚。谷歌的开发人员想要的语言要简单到可以在几个小时内学会,但又要复杂到足以应付现代互联网的信息流。他们的解决方案就是 Go 语言,这门语言对于 C 语言、Java 或 JavaScript 程序员来说——换句话说,就是所有的程序员——都很容易掌握。Go 语言提供了足够的特性来编写循环和代码块,但没有一个特性是需要很长的时间才能掌握的。内置的例程经过优化,可以从互联网获取数据和发送数据。其他的东西——即使是非常聪明的想法——都被排除在外。Go 语言是微服务开发团...阅读全文

博文 2018-12-23 21:09:25 InfoQ

Golang 中的微服务 - 第一部分

## 介绍 Golang 中的微服务系列总计十部分,预计每周更新。本系列的解决方案采用了 protobuf 和 gRPC 作为底层传输协议。为什么采用这两个技术呢?我花了相当长的时间,才想出并决定采用这个方案。这个方案对开发者来说,非常清晰而简明。我也很乐意把自己在搭建、测试和部署端到端的微服务过程中的心得,分享给想接触这块的朋友们。 在这个教程中,我们将先接触几个基础的概念和术语,然后开始搭建第一个简单的微服务模型。 本系列中,我们将会创建以下服务: - 委托 - 存货清单 - 用户 - 认证 - 角色 - 容器 整个技术栈从底至顶主要可划分为:golang、mongodb、grpc、docker、Google Cloud、Kubernetes、NATS、CircleCI、Terrafor...阅读全文

博文 2017-12-26 14:20:00 polaris

科学上网工具包 V2Ray

V2Ray 是一个科学上网工具包,用于简化和复用其它科学上网工具,加速二次开发。 “V2”来源于 [V2 火箭](https://zh.wikipedia.org/wiki/V-2%E7%81%AB%E7%AE%AD),Ray 即射线,意指新一代的科学上网工具。 ## 主要特点 * 多对多服务器支持,负载均衡 * 支持多用户 * 开放协议支持,兼容流行的科学上网工具 ## 捐赠 目前 V2Ray 还在早期开发阶段,暂时没什么可用性,也谈不上捐赠。如果你执意想捐赠,请发送 Amazon Gift Card 至 [donate@v2ray.com](mailto:donate@v2ray.com...阅读全文

开源项目 2015-09-27 16:00:00 v2ray

51cto微职位有学习的吗+jiayouya01可以交换

图片发自简书App 龙果学院从无到有构建亿级微服务秒杀系统(真实工业界案例)51cTo学院|微职位高端培训MySQL 数据库高级工程师人工智能工程师标准化课程go语言高级开发工程师7周Spring Cloud微服务架构项目实战golang从入门到精通高端 JAVA 架构课程精英培训计划优达学城纳米学位项目微信小程序开发腾讯课堂:Android开发—高级开发专题系列全套课程【动脑学院】腾讯课堂:前端高级技术专家研发课 WEB全栈架构史上最全微信项目:订阅号+小程序+小游戏视频课...阅读全文

博文 2019-06-23 16:32:39 啦啦吼

GopherChina大会视频大全

Gopher China 历届大会视频都放到这里了。 以下视频需要翻墙才能观看,请大家自行找梯子哈。 GopherChina2019(北京) 等待更新... GopherChina2018(上海) Day1 1、基于Go构建滴滴核心业务平台的实践 石松然2、Go在Grab地理服务中的实践 张志印3、 Rethinking Errors for Go 2 Marcel4、Go在区块链的发展和演进 姜家志5、Badger Fast Key Value DB in Go Manish6、Golang在阿里巴巴调度系统Sigma中的实践 李雨前7、罗辑思维Go语言微服务改造实践 方圆8、Golang打造下一代互联网 IPFS全解析 余长洪 Day2 1、Composition In Go Willi...阅读全文

博文 2019-03-18 18:34:40 如来神掌

Golang 微服务教程(一)

译文链接:wuYin/blog原文链接:ewanvalentine.io,翻译已获作者授权。 本节对 gRPC 的使用浅尝辄止,更多可参考:gRPC 中 Client 与 Server 数据交互的 4 种模式 前言 系列概览 《Golang 微服务教程》分为 10 篇,总结微服务开发、测试到部署的完整过程。 本节先介绍微服务的基础概念、术语,再创建我们的第一个微服务 consignment-service 的简洁版。在接下来的第 2~10 节文章中,我们会陆续创建以下微服务: consignment-service(货运服务) inventory-service(仓库服务) user-service(用户服务) authentication-service(认证服务) role-servic...阅读全文

博文 2018-06-01 16:34:38 wuYin

golang 下载和上传,处理多文件上传

package main import ( "net/http" "os" "io" "strconv") func main() { f, err := os.OpenFile("K:/file.mp3", os.O_RDWR|os.O_CREATE|os.O_APPEND, 0666) stat, err := f.Stat() //获取文件状态 if err != nil { panic(err) } //把文件指针指到文件末,当然你说为何不直接用 O_APPEND 模式打开,没错是可以。我这里只是试验。 url := "http://127.0.0.1:3000/assets/37-02.mp3" req,_ := http.NewRequest("GET",url,nil); re...阅读全文

博文 2014-10-04 19:26:06 ggaaooppeennngg

Go语言中的微服务

# Go语言中的微服务 ## 摘要 我最近在墨尔本 Golang 聚会上就如何开发微服务和框架做了一次演讲。在本文中,我将与您分享我的想法(此外,它对我来说是一个很好的复习)。 在这里,我要介绍以下框架: * [Go Micro](https://micro.mu/) * [Go Kit](https://gokit.io/) * [Gizmo](https://github.com/NYTimes/gizmo) * [Kite](https://github.com/koding/kite) ## 框架简介 ### Go Micro 这是我认为最受欢迎的框架之一。有很多博客文章和简单的例子可供使用参考。您可以从 [microhq](https://medium.com/microhq) 在...阅读全文

博文 2019-07-23 01:16:11 TomatoAres

14周,炼成为20k+的go开发工程师 原价7000多老男孩就业班课程 无套路免费网盘分享下载!

​​​1:《14周,炼成为20k+的go开发工程师》来自老男孩IT教育,原价2760,由猿人部落整理免费发布!猿人部落承诺,本站所有课程百分百高清,完整,原画,包含所有的视频+素材+课件+源码,官方同步体验!2:本站所有课程格式MP4格式无密 可以通过网盘在线学习也可下载到本地,方便快捷!3:官方品质,信誉保证,本站包含慕课网,腾讯课堂,网易云,饥人谷,百度教育....等上万部课程正在陆续更新,感谢同学们的信任与支持,保证让同学们满意!同类精品课程分享:1:Go语言从入门到实战——简明高效的Go语言实战指南2:高并发&高性能 Go语言开发企业级抽奖项目3:GO从0到1实战微服务版抢红包系统4:Go实战仿百度云盘 实现企业级分布式云存储系统5:Google资深工程师深度讲解Go语言14周,炼成...阅读全文

博文 2019-08-04 14:50:24 yuanren110

2020 腾讯社招Golang后端面试经验分享

技术一面 基础面试 一面是通过电话直接沟通 go的调度 go struct能不能比较 go defer(for defer) select可以用于什么 context包的用途 client如何实现长连接 主协程如何等其余协程完再操作 slice,len,cap,共享,扩容 map如何顺序读取 实现set 实现消息队列(多生产者,多消费者) 大文件排序 基本排序,哪些是稳定的 http get跟head http 401,403 http keep-alive http能不能一次连接多次请求,不等后端返回 tcp与udp区别,udp优点,适用场景 time-wait的作用 数据库如何建索引 孤儿进程,僵尸进程 死锁条件,如何避免 linux命令,查看端口占用,cpu负载,内存占用,如何发送信号...阅读全文

博文 2020-04-18 22:32:47 阿俊

微服务API网关Goku - 基于 Golang 开发的超高性能的企业级微服务API网关

A Powerful HTTP API Gateway in pure golang!Goku API Gateway (中文名:悟空 API 网关)是一个基于 Golang开发的微服务网关,能够实现高性能 HTTP API 转发、多租户管理、API 访问权限控制等目的,拥有强大的自定义插件系统可以自行扩展,并且提供友好的图形化配置界面,能够快速帮助企业进行 API 服务治理、提高 API 服务的稳定性和安全性...阅读全文

从程序员到CTO

2019年最新总结,从程序员到CTO,从专业走向卓越,大牛分享文档pdf与PPT整理 整理大牛分享文档如下,持续更新一线开发架构,技术文档见github链接:https://github.com/0voice/from_coder_to_expert 内容有: 网易蜂巢公有容器云架构之路 新浪微博redis优化历程 微博Cache架构设计实践 Go在大数据开发中的经验总结 基于Go构建滴滴核心业务平台的实践 Go in TiDB 负载均衡利器 HAProxy功能剖析及部署案例 高可用技术的实践分享 高性能存储及文件系统 个性化推荐架构设计和实践搜狐视频 工商数据中心架构创新之路 互联网对传统企业应用架构 基于Kafka-Spark Streaming的数据处理系统及测试 交互式直播推流编码器...阅读全文

博文 2019-06-08 23:32:41 耐寒

GopherChina2019(北京)大会视频大全

GopherChina2019(北京)大会视频大全 Day1 1、基于 Go 语言的大规模微服务框架设计 2、如何用Go打造高性能路径规划和ETA引擎 3、TiDB 的 Golang 实践 4、How to write testable code 5、Go 业务基础库之 Error & Context 6、Go 同步和并发设计模式 7、百度 APP Go语言实践 8、用Golang搭建实时音视频云 Tutormeet Day2 1、基于MINIO的对象存储方案在探探的实践 2、从零开始用GO实现Lexer & Parser 3、高性能高可用开发框架TarsGo的腾讯实践 4、BTC的小额支付解决方案--闪电网络 5、Go Modules in everyday life 6、用GO构建高性能...阅读全文

博文 2019-06-19 18:02:43 如来神掌

Teleport2.0 一个Golang TCP Socket的全新框架

Teleport beta2.0 实现了一个全新的Golang TCP Socket框架,它通用、高效、灵活!可被用于Peer-Peer对等通信、RPC、长连接网关、微服务、推送服务,游戏服务等领域。 teleport_server 1. 特性 服务器和客户端之间对等通信,两者API方法基本一致 底层通信数据包包含Header和Body两部分 支持单独定制Header和Body编码类型,例如JSON Protobuf Body支持gzip压缩 Header包含状态码及其描述文本 支持推,拉,回复等通信方式 支持插件机制,可以自定义认证、心跳、微服务注册中心、统计信息插件等。 无论服务器或客户端,均支持都优雅重启、优雅关闭 支持实现反向代理功能 日志信息详尽,支持打印输入、输出消息的详细信息(...阅读全文

博文 2017-08-27 09:05:14 HenryLee

今日头条Go建千亿级微服务的实践

今日头条使用 Go 语言构建了大规模的微服务架构,本文结合 Go 语言特性着重讲解了并发,超时控制,性能等在构建微服务中的实践 编者按:本文来自微信公众号“InfoQ”(ID:infoqchina),作者项超;36氪经授权发布。 今日头条当前后端服务超过80%的流量是跑在 Go 构建的服务上。微服务数量超过100个,高峰 QPS 超过700万,日处理请求量超过3000亿,是业内最大规模的 Go 应用。 Go 构建微服务的历程 在2015年之前,头条的主要编程语言是 Python 以及部分 C++。随着业务和流量的快速增长,服务端的压力越来越大,随之而来问题频出。Python 的解释性语言特性以及其落后的多进程服务模型受到了巨大的挑战。此外,当时的服务端架构是一个典型的单体架构,耦合严重,部分...阅读全文

博文 2017-06-23 10:03:31 强子哥哥

微服务GMS

# GMS 今天是2020年10月24日,一年一度的程序员节,把这个还在开发中的项目开源出来,感兴趣的朋友可以一起参与开发。如果有大神路过请多指教。 GMS是一款基于[gnet](https://github.com/panjf2000/gnet)网络框架开发的Golang RPC微服务框架。 ## 特点: **1:非常简单、学习成本极低。GMS处于初期阶段您想参与开发也非常简单。** ​ 只要您之前使用过类似Gin、beego这样的web框架。就能快速上手,使用方法和这些web框架一样简单。 **2: 不用定义proto等协议文件。** ​ 写proto文件不仅麻烦还容易出错。而且使用协议文件定义服务,最终在框架内部实现都要使用反射去调用目标方...阅读全文

开源项目 2020-10-25 10:42:08

golang实现udp接入服务器

前端通过udp与接入服务器连接,接入服务器与后端tcp服务器维持tcp连接。目录结构及后端tcp服务器代码同上一篇博客。 main.go package main import ( "lotuslib" ) const ( ip = "0.0.0.0" port = 1987 ) func main() { udplotus.UdpLotusMain(ip, port) } udplotus.go package udplotus import ( "encoding/json" "log" "net" "strconv" "time" ) const ( proxy_timeout = 5 proxy_server = "127.0.0.1:1988" msg_length = 1024 ...阅读全文

博文 2014-10-04 19:26:13 ciaos

[北京劲松][广州欢网][[15K-30K]]招聘 GOLANG 中高级研发工程师

### 岗位职责:### - 参与公司后端公共服务和微服务体系的设计和开发; - 进行微服务相关技术调研分析并在项目中实践; - 负责编制、修改项目相关的技术文档; ### 任职要求:### - 熟练掌握Golang,4年以上工作经验,2年以上Golang开发经验,有完整项目经验,同时熟练掌握Java/PHP/C++等任意一门语言者优先; - 熟练掌握Golang相关技术,熟悉web开发,熟悉Golang协程,熟悉channel和锁,对高并发、高可用架构系统有正确、深刻的理解,有分布式服务设计或开发经验者优先; - 熟悉MySQL,熟悉数据库原理和常用性能优化技术,同时熟悉其他数据库(如Redis、MongoDB等)者优先; - 熟悉微服务docker,k8s者优先; -...阅读全文

Golang 中的微服务 - 第二部分 - Docker 和 go-micro

## 简介: Docker 和 go-micro **[在上篇文章中](https://studygolang.com/articles/12060)**,我们大致介绍了如何编写一个基于 `gRPC` 的微服务。在这个部分,我们将涵盖 `Docker` 服务的基础知识,我们也将使用 [go-micro](https://github.com/micro/go-micro) 更新我们的服务,并在文本末尾引入第二个服务。 ## Docker简介 随着云计算的到来和微服务的诞生,服务在部署的时候有更多的压力,但是一次一小段代码就产生了一些有趣的新思想和新技术,其中之一就是[容器](https://en.wikipedia.org/wiki/Operating-system-level_virtua...阅读全文

博文 2018-01-03 15:53:35 polaris

linux下go的动态链接库的使用

在使用lua进行服务器端游戏逻辑开发时,发现了LUA的各种不方便的地方,不能编译检查,不能断点调试,笔误的函数和变量不提示出错等等,所以有了全部使用go来做服务器端开发的想法。 如果不需要热更新,那使用go开发服务器逻辑是很轻松的,而游戏服务器特别是页游,一般都需要支持热更新,所以我决定使用go的动态链接库方式来实现,也就是底层框架是go,上层逻辑是go的动态链接库。go原生不支持动态链接库,在查阅了很多文章之后,决定使用gccgo来实现。 经过了大约一周的时间,终于把框架搭建起来了,期间遇到了一些比较坑的问题,记录在此,以便以后不会再犯,也可以帮助其他有同样需求的同学快速搭建这样的框架。 这个例子需要了解go目录构建和环境变量的知识,如果不了解,可以先看看网上的文章,很简单的。 整个框架搭...阅读全文

博文 2014-10-04 19:25:56 xtxy

golang实现tcp接入服务器

接入服务器和后端业务服务其维持tcp连接,多个前端请求通过接入服务器访问后端业务服务器,接入服务器可以方便增加路由功能,维护多个业务服务器,根据消息ID路由到具体的业务服务器。 项目目录如下 simplelotus src lotus main.go lotuslib tcplotus.go test tcpclient.go tcpserver.go install install源码如下: #!/usr/bin/env bash if [ ! -f install ]; then echo 'install must be run within its container folder' 1>&2 exit 1 fi CURDIR=`pwd` OLDGOPATH="$GOPATH" ex...阅读全文

博文 2014-10-04 19:26:13 ciaos

为什么选择golang写手机游戏服务器

选择golang做游戏服务器开发 经过大半年的手机游戏运营、维护、后续开发,对下一个网络游戏的服务器端开发技术选型的需求如下:1. 体系成熟,有大型成功案例2. 开发效率高3. 性能高,最好是支持并行技术充分利用多cpu资源4. 代码加密发布5. 开发逻辑简单,如多线程同步、加锁、多进程同步就比较复杂6. 易学易用,如果是新技术 可选技术对比 我对可以选择的技术平台经过自己的一些分析总结如下(一己之言): 项目 nodejs python c++/ruby erlang golang 体系成熟 4 3 5 4 3 开发效率 5 5 3 3 5 性能 3 3 5 5 4 加密发布 3 0 4 3 5 逻辑简单 5 5 3 4 5 易学易用 5 5 2 1 4 跨平台 5 5 5 5 5 其实聪...阅读全文

博文 2014-10-04 19:26:08 Creak_Phone

一起学习微服务和容器2-微服务的框架

简述 前情回顾 在前面的小节中,我们大致了解了微服务体系结构的一些基本概念和理念,额外再啰嗦句,还请大家留意最重要的两点:DDD设计模型以及微服务的12原则。接下来的这篇文章将就常见的微服务的框架给大家简单介绍一下,让大家对微服务的体系结构有进一步的理解。 微服务技术栈的发展 有了前面章节的描述,相信大家也都了解,微服务很大程度来说是从SOA的体系结构演进而来的新的分布式体系结构。那SOA的相关的技术栈,在微服务的世界里面也会被继承以及迭代发展。 现下的社会是信息爆炸性发展的时代,在现下的现实社会中,特别是2000年以后这一二十年中,无论是国内还是国际上,社会的各个行业得以飞速发展,其中以金融,电信以及互联网和智能制造为代表。 行业的发展,对信息化的支撑提出了一层又一层新的要求;而信息化的发...阅读全文

博文 2019-01-07 19:34:45 cxj_hit

go-micro 入门教程1.搭建 go-micro环境

微服务的本质是让专业的人做专业的事情,做出更好的东西。 golang具备高并发,静态编译等特性,在性能、安全等方面具备非常大的优势。go-micro是基于golang的微服务编程框架,go-micro操作简单、编码高效、功能强大。但是网络上资料偏少,本系列文章定位最简单最容易上手的go-micro入门教程,所有案列来自实操,而非网络上的复制粘贴。 本章节的目的是让大家最快速搭建好go-micro环境 软件 环境 操作系统 win10 golang go 12.7/AMD64 micro micro version 1.8.4 consul consul 1.5.4 安装micro 最快速有效的方法是使用GO1.11以上版本并且设置环境变量 #linux 下 export GO111MODUL...阅读全文

博文 2019-08-19 20:02:42 非正式解决方案

Go实现的HTTP/2 Web服务器Caddy

Caddy 是一个支持 HTTP/2 的跨平台 Web 服务器,使用和配置都非常简单。Caddy 支持 HTTP/2, IPv6, Markdown, WebSockets, FastCGI, 模板等等。 一个 Caddy 配置示例: http://www.oschina.net # Your site's address ext .html # Clean URLs errors { log ../errors.log # Error log 404 error-404.html # Custom error page } fastcgi /blog localhost:9000 php # PHP bac...阅读全文

开源项目 2015-05-29 01:56:28 mholt

基于gokit的微服务项目骨架ko

前段时间发布了一个小小的web开发项目骨架morningo,性能与效率齐飞,开发速度在短暂时间熟悉go语言后应该是匹配php,ruby等这些脚本语言,而后期项目并发性能,基本并发到上千乃至上万tcp连接没问题。但从业务架构层面看,项目再发展,数据库存在瓶颈,单体项目耦合度高,可维护性差,可延展性差,存在很多问题。因而项目早期可以采用单体架构,但后期仍然推荐的是面向服务的分布式架构。分布式的架构模式虽然带来了增加的代码量,服务间沟通的成本,但整体项目更具有弹性,延展性更好。 项目地址:https://github.com/chenhg5/ko gokit介绍 go语言的优点不用赘述,那么基于go的微服务框架有吗?gokit就是一个go语言相关的微服务工具包。它自身称为toolkit,并不是fr...阅读全文

博文 2018-05-05 23:34:37 honhon

BAT架构2019年最新总结,从程序员到CTO,从专业走向卓越

2019年最新总结,从程序员到CTO,从专业走向卓越,大牛分享文档pdf与PPT整理整理大牛分享文档如下,持续更新一线开发架构,技术文档下载地址:https://github.com/0voice/from_coder_to_expert网易蜂巢公有容器云架构之路新浪微博redis优化历程微博Cache架构设计实践Go在大数据开发中的经验总结基于Go构建滴滴核心业务平台的实践Go in TiDB负载均衡利器 HAProxy功能剖析及部署案例高可用技术的实践分享高性能存储及文件系统个性化推荐架构设计和实践搜狐视频工商数据中心架构创新之路互联网对传统企业应用架构基于Kafka-Spark Streaming的数据处理系统及测试交互式直播推流编码器的设计Go在区块链的发展和演进NSQ-重塑之路Al...阅读全文

博文 2019-06-09 18:02:39 音视频高级开发

多功能微服务框架ServiceComb

ServiceComb 是华为开源的一套包含代码框架生成,服务注册发现,负载均衡,服务可靠性(容错熔断,限流降级,调用链追踪)等功能的微服务框架。 ServiceComb 是华为 FusionCloud 解决方案中 PaaS 平台的重要组成部分,内置了高可靠性运行、动态治理等运维阶段的高级能力。ServiceComb 目前已应用于华为自身 IT 的多个核心业务,帮助华为极大地提升了云原生应用的开发效率。 ServiceComb 包括应用框架代码生成,服务注册发现、服务配置管理、服务监控、服务调用追踪、多通信协议支持等功能,具有服务化契约增强、响应式编程范式及多语言 SDK 支持等优势特性。ServiceComb 基于开放的架构,不仅可以支持开发者根据自身业务需求定制业务插件,而且...阅读全文

开源项目 2017-06-21 04:00:28 网友

golang key/value 工具consul-kv

consul大家都知道,是一个分布式支持多数据中心的系统,一般用在微服务的注册/发现服务上,开箱即用。他同时集成了key/value系统,虽然对比redis的吞吐量不高,但是有着比redis更高的一致性,并且可以监测改变的数值。基于这些特点,consul也是比较适合存放服务配置的,所以写了这么一个工具,方便读取、修改、获取更新的工具...阅读全文

开源项目 2019-12-03 19:19:03

开放分布式追踪(OpenTracing)入门与 Jaeger 实现

http://click.aliyun.com/m/1000005975/应用架构开始从单体系统逐步转变为微服务,其中的业务逻辑随之而来就会变成微服务之间的调用与请求。资源角度来看,传统服务器这个物理单位也逐渐淡化,变成了看不见摸不到的虚拟资源模式。从以上两个变化可以看到这种弹性、标准化的架构背后,原先运维与诊断的需求也变得越来越复杂。为了应对这种变化趋势,诞生一系列面向 DevOps 的诊断与分析系统,包括集中式日志系统(Logging),集中式度量系统(Metrics)和分布式追踪系统(Tracing)。Logging,Metrics 和 TracingLogging,Metrics 和 Tracing 有各自专注的部分。Logging - 用于记录离散的事件。例如,应用程序的调试信息或...阅读全文

博文 2018-07-12 15:34:54 rewq123

产品级 Go 语言微服务框架Go Chassis

Go Chassis 是华为云 CSE 开源的一个用 Go 语言编写的微服务快速开发框架。借助 CSE Go Chassis 进行微服务开发可最大化地降低开发门槛,提升产品上线速度,同时可以获得微服务运行时高可靠性保证、运行时动态治理等一系列开箱即用的能力。 作为业界首款商用级别的Go语言微服务框架,Go Chassis 已具备支持企业级应用的核心特性: **可定制的通信协议**:除了现有支持的 HTTP/ Highway RPC 协议外,用户可自行扩展协议。支持 Go Chassis 开发的应用与使用 Java Chassis 开发的应用互相通信,企业在进行微服务架构选择有更大的自由。 **使微服务更加健壮**:完善的服务治理(负载均衡、限流、熔断、降级等等),保障 Go 微...阅读全文

金融级分布式架构SOFAStack

SOFAStack™(Scalable Open Financial Architecture Stack)是一套用于快速构建金融级分布式架构的中间件,也是在金融场景里锤炼出来的最佳实践。 **项目官网:[https://www.sofastack.tech](https://www.sofastack.tech/)** ![image](https://static.oschina.net/uploads/space/2019/0709/163750_2OA0_3820517.png) 特性包括: * 开放:技术栈全面开源共建、保存社区中立、兼容社区 兼容开源生态,组件可插拔, SOFAStack 组件与其它开源组件可相互集成或替换。 * 金融级:包含构建金融级云原生架构所...阅读全文

开源项目 2019-07-09 17:30:02 sofastack

golang的https服务器

先生成ssl证书 openssl genrsa -out key.pem 2048 openssl req -new -x509 -key key.pem -out cert.pem -days 1095 然后,大概这样 package main import ( "log" "net/http" ) func SayHello(w http.ResponseWriter, req *http.Request) { w.Write([]byte("Hello")) } func main() { http.HandleFunc("/", SayHello) err := http.ListenAndServeTLS(":8080", "cert.pem", "key.pem", nil) i...阅读全文

博文 2014-10-04 19:26:16 ziyouchutuwenwu

[深圳][大疆创新][15K-40K]招聘高级/中级Golang研发工程师

## 高级Golang研发工程师 ### 岗位职责: 1. 参与公司微服务架构的整体设计和开发,进行相关技术调研、选型和实践; 2. 负责编制、修改项目相关的技术文档和规范; 3. 负责新人指导和code review,技术难题研究,提升团队技术水平; 4. 参与公司开源项目的设计与开发,提高公司在业界的影响力。 ### 任职要求: 1. 熟练掌握Golang,4年以上工作经验,2年以上Golang开发经验,有完整项目经验,同时熟练掌握Java/Ruby/Python/C#等任意一门语言者优先; 2. 熟练掌握Golang相关技术,熟悉Golang协程,熟悉channel和锁,对高并发、高可用架构系统有正确、深刻的理解,有分布式服务设计或开发经验者优先; 3. 熟悉M...阅读全文

Go 语言实现的高性能微服务框架TarsGo

TarsGo 是一个 Go 语言实现的高性能微服务框架,也是微服务框架 [Tars](https://www.oschina.net/p/tars) 的 Go 语言实现版本。 多语言支持是 Tars 的一大优势,在此之前 Tars 已经推出了 C++、Java、PHP、NodeJS 版本。Go 语言的协程并发机制使它非常适用于大规模高并发后端服务器程序开发,同时随着容器化技术的飞速发展,诸如 Docker、Kubernetes 与 Etcd 等项目兴起,使得 Go 语言越来越流行,并成为云原生的首选语言。Tars 的 Go 语言版本也因此应运而生,此次 Tars-Go 的推出,在大环境整体逐渐走向云原生的当下,意义非凡。 Tars-Go 整体架构主要可以分为三个部分,如下图所示: ![...阅读全文

开源项目 2018-09-24 19:30:01 网友

Go使用grpc+http打造高性能微服务

大家可以发现,Go越来越流行,其一是目前云计算领域基本是使用Go作为底层开发语言;其二是随着区块链的火爆,引申出了其背后很多开源项目,很多都是使用Go语言进行开发;其三就是在微服务方面,Go也展示很大的优势性。那么微服务是什么,如何将其与Go做一个整合,来提升整体开发生产效率,下面会进行详细讲解。什么是微服务微服务的概念最早由 Martin Fowler 提出,在他的理论当中,微服务是一整套小的服务,其中每一个服务互相之间都是独立的,它们之间通过 lightweight 机制进行交互。图 1图 1 所示是最传统的一个应用软件架构,最顶层是 load balancer ,下面布局很多cuisine,这些cuisine共享一个数据库。图 2图 2 是微服务的架构图,由图中我们可以看出整体架构分布...阅读全文

博文 2017-11-22 09:32:26 astaxie

首提完整中台方法论,网易云全链路中台引爆产业“核聚变”升级

当前数字经济领域最受关注的技术趋势当属中台,到底中台对企业发展的意义何在,企业应当如何建设中台?7月26日,网易云在本届云创峰会上给出了完整的答案,从组织、技术、方法论的角度系统阐述了网易杭州研究院的中台实践与成果,并发布了全链路大数据产品和轻舟微服务产品,分别为企业构建数据中台和在线业务中台提供完整的技术和方法论支持。在主题演讲中,网易副总裁、网易杭州研究院执行院长汪源首次介绍了网易对中台的理解,他表示:中台的本质是业务能力的沉淀,它对于企业提高需求响应、降低定制成本、实现弹性稳定、实现系统互通、提升运营效率和降低资源成本具有独特的优势,而中台的成功建设,需要组织、技术和相应的方法论的支撑,同时由于业务的复杂性,企业往往还需要借助专业的咨询服务,才能顺利建设中台。据悉,网易是业界唯一通过设...阅读全文

博文 2019-07-26 20:32:44 网易云社区

网易云首倡中台方法论,发布全链路中台技术方案

当前数字经济领域最受关注的技术趋势当属中台,到底中台对企业发展的意义何在,企业应当如何建设中台?7 月 26 日,网易云在本届云创峰会上给出了完整的答案,从组织、技术、方法论的角度系统阐述了网易杭州研究院的中台实践与成果,并发布了全链路大数据产品和轻舟微服务产品,分别为企业构建数据中台和在线业务中台提供完整的技术和方法论支持。在主题演讲中,网易副总裁、网易杭州研究院执行院长汪源首次介绍了网易对中台的理解,他表示:“中台的本质是业务能力的沉淀,它对于企业提高需求响应、降低定制成本、实现弹性稳定、实现系统互通、提升运营效率和降低资源成本具有独特的优势,而中台的成功建设,需要组织、技术和相应的方法论的支撑,同时由于业务的复杂性,企业往往还需要借助专业的咨询服务,才能顺利建设中台。”据悉,网易是业界...阅读全文

博文 2019-07-30 21:32:39 Linux技术

golang文件传输服务

续上篇,本篇介绍一个完整的golang文件传输服务器。 完整的代码可以看服务器,客户端 网络使用的框架如上篇介绍,这里就不再复述. 首先定义3个命令码: const ( request_file = 1 file_size = 2 transfering = 3 ) request_file用于请求文件传输,附带的命令参数是文件key. file_size用于通告客户端文件的大小. transfering用于传输文件内容,附带参数是文件内容的二进制数据. 服务器的文件配置示例 ../learnyouhaskell.pdf=haskell ../golang.1.1.2.chm=golang ../NodeJS.pdf=NodeJS 上面的文件配置了3个文件可供传输=左边是文件路径,右边是请求...阅读全文

博文 2014-10-04 19:25:59 sniperHW

DDD分层架构的三种模式

引言 在讨论DDD分层架构的模式之前,我们先一起回顾一下DDD和分层架构的相关知识。 DDD DDD(Domain Driven Design,领域驱动设计)作为一种软件开发方法,它可以帮助我们设计高质量的软件模型。在正确实现的情况下,我们通过DDD完成的设计恰恰就是软件的工作方式。UL(Ubiquitous Language,通用语言)是团队共享的语言,是DDD中最具威力的特性之一。不管你在团队中的角色如何,只要你是团队的一员,你都将使用UL。由于UL的重要性,所以需要让每个概念在各自的上下文中是清晰无歧义的,于是DDD在战略设计上提出了模式BC(Bounded Context,限界上下文)。UL和BC同时构成了DDD的两大支柱,并且它们是相辅相成的,即UL都有其确定的上下文含义,而BC中...阅读全文

博文 2017-07-16 11:06:29 _张晓龙_

p2p端口映射工具 dog-tunnel

狗洞是一个高速的 P2P 端口映射工具,同时支持Socks5代理。 0.5版后开始开源,UDP底层基于开源库KCP重写,效率大大提高,在恶劣环境下优势明显。 同时提供非P2P版本(Lite版本),两端连接过程完全不依赖中间服务器,支持加密和登陆认证,自动重连,但是需要人为确保两端能正常连通(否则请使用默认的P2P版本) ![image](http://static.oschina.net/uploads/space/2014/1213/080425_bS2n_12.png) 特性: * 数据安全,P2P模式通讯时数据不经过服务端,用户可自定义访问密码 * P2P模式底层采用KCP协议,在恶劣网络环境下比TCP延迟降低 30%-40% * P2P模式支持AES加密 * P2P模式可...阅读全文

开源项目 2014-12-12 16:00:00 vzex

阿里云基于 Go 的微服务架构分享

作者介绍花名聪心,阿里云技术专家,主要负责阿里云OpenAPI,Services architectre 技术服务的实现。云产品前端架构众所周知,阿里是以 Java 开发为主,最近引用 GO 在微服务架构上面进行开发,本次分享也是围绕这个主题进行叙述。图 1图 1 所示,是我们最早期的前端微服务架构图,当时不存在API网关服务、天象全链路监控以及外部服务这几个模块,并且蓝色这部分也并没有被应用起来。因此进行了一场微服务重构过程,产生了最新的前端微服务架构图(图 2)。图 2图 2 是目前的前端微服务架构,其中,OpenAPI是前端入口;API网关目前被商业化,由它来调度内部的dubbo服务;其次是最为重要的中间件,由其支撑注册中心、控制台、阿里云日志服务、消息队列服务以及内部的天象全链路监控...阅读全文

博文 2017-10-16 03:25:24 聪心

黑马程序员Go语言与区块链在线就业班学习资料百度云百度网盘分享下载

Go语言与区块链在线就业班学习资料[课程官网]http://www.itheima.com/special/phonegozly/index.html课程简介区块链技术是21世纪的重大创新技术,它是数字化资产的分布式账本,是构建价值互联网的基石,是驱动分享经济发展的新引擎。Go语言是区块链主流编程语言,简单易学、开发速度快且并发性好。《Go语言与区块链》就业课程涵盖 go高级编程,go web开发,区块链密码学,以太坊,分布式微服务,hyperledger等技术要点,旨在打造基础扎实、知识面广、综合能力强的区块链应用层及底层技术引领者。学完收获完成服务器端程序的开发完成Web系统设计和开发完成以太坊平台Dapp应用的设计和开发完成区块链公链开发完成hyperledger fabric联盟链应...阅读全文

博文 2019-10-24 03:32:47 aside section._1OhGeD

网易轻舟微服务大升级,突破在线业务中台的异构挑战

7月26日,网易云创峰会在杭州举行。会上,网易轻舟微服务发布了支持Service Mesh、分布式事务框架GTXS、全新API网关等重大更新。网易云基础服务总经理陈谔称,此次更新将主要帮助企业应对在线业务中台建设过程中面临的挑战,帮助企业完成业务架构的进化,建成在线业务中台,支撑业务快速创新。在线业务中台建设面临两大挑战去年的云创大会,是网易一站式微服务解决方案“轻舟”的首次亮相。一年来,轻舟在业界进行了大量实践和探索。网易考拉基于轻舟微服务平台实现了核心系统的分布式改造,全面实现资源层和应用层的弹性,有效支撑了618、818、双11、黑五等电商大促活动;德邦快递基于网易轻舟微服务平台进行了系统的微服务改造,最终实现IT的全面升级,加快数字化进程;大华股份借助网易轻舟微服务平台,构建了统一的...阅读全文

博文 2019-07-26 20:32:43 网易云社区