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

大话设计模式(golang) 七、模版方法模式

模式特点:通过吧不变的行为搬到父类,去除子类中的重复代码。 程序实例:考试时使用同一种考卷(父类),不同学生上交自己填写的试卷(子类方法的实现) package main import ( "fmt" ) type TestPaper struct { child interface{} } func (t *TestPaper) testQuestion1() { fmt.Println("杨过得到,后来给了郭靖,练成倚天剑、屠龙刀的玄铁可能是[] a.球磨铸铁 b.马口铁 c.高速合金钥 d.碳素纤维") fmt.Println("答案:", t.child.(Answers).answer1()) } func (t *TestPaper) testQuestion2() { fmt....阅读全文

博文 2016-08-04 20:00:12 平凡之路

Golang服务程序daemon化踩坑记录

之前写习惯了C/CPP,都知道可以使用Linux上的daemon函数来方便的实现守护进程。最近切换到go上,想如法炮制,第一个想到的就是基于cgo直接调用,类似如下代码: //#include import "C" func Daemon() { C.daemon(1,0) } 上面代码确实可以成功执行,可问题随之而来。测试的时候,我发现使用了上述代码片段的程序,测试时会随机出现程序无限假死的情况,google的大部分结果都说的是golang的Scheduler和Linux的fork系统调用不兼容所致,各位如有知道个中明细,还望赐教! 没办法,之后基于Stack Overflow热心网友的解答,采用类似下述方法实现daemon化,注意使用相关命令行参数控制调用: func...阅读全文

博文 2018-05-21 01:33:05 WangRichard

go语言实现设计模式(一):策略模式

策略模式定义了算法家族,在调用算法家族的时候不感知算法的变化,客户也不会受到影响。 下面用《大话设计模式》中的一个实例进行改写。 例:超市中经常进行促销活动,促销活动的促销方法就是一个个策略,如“满一百减20”,“打八折”等。现在实现策略模式,用CashContext生产策略,并完成策略的调用。 1.首先定义所有策略的接口。 package cash type cashSuper interface { AcceptMoney(money float64) float64 } 2.定义三个子类,实现此接口 package cash //普通情况,没有折扣 type cashNormal struct { } func newCashNormal() cashNormal { instance...阅读全文

博文 2015-10-31 23:00:01 yzh900927

从游击队到正规军(三):基于Go的马蜂窝旅游网分布式IM系统技术实践

本文由马蜂窝技术团队电商交易基础平台研发工程师"Anti Walker"原创分享。 一、引言 即时通讯(IM)功能对于电商平台来说非常重要,特别是旅游电商。 从商品复杂性来看,一个旅游商品可能会包括用户在未来一段时间的衣、食、住、行等方方面面。从消费金额来看,往往单次消费额度较大。对目的地的陌生、在行程中可能的问题,这些因素使用户在购买前、中、后都存在和商家沟通的强烈需求。可以说,一个好用的 IM 可以在一定程度上对企业电商业务的 GMV 起到促进作用。 本文我们将结合马蜂窝旅游电商IM系统的发展历程,单独介绍基于Go重构分布式IM系统过程中的实践和总结(本文相当于《从游击队到正规军(一):马蜂窝旅游网的IM系统架构演进之路》一文的进阶篇),希望可以给有相似问题的朋友一些借鉴。 另外:如果你...阅读全文

博文 2020-02-19 17:32:50 JackJiang

beego作者谢大联合好雨云社区推出「beego开发者大赛」

用最拿手的语言和框架,在很棒棒的severless架构PaaS平台上做沉浸式DevOps流开发,轻松抱得大奖归! [好雨云帮开发者大赛「第二期」:Beego]剧情已写好,就差有创意、有技术、有天赋、有实力的你来参加! Programmers,开始你的表演吧! 奖项设置 ![配图.png](http://studygolang.qiniudn.com/170412/e5410e34c5cc6989b7be34eefde3248b.png) 专家评审男团(男神排名不分先后) astaxie Go基金会主席,知名Go语言专家,Gopher China 社区创始人,著名开源框架beego开发者,畅销图书《Go Web编程》作者,bat、bee等开源软件作者。国内 G...阅读全文

golang在当前执行目录创建日志文件

package main import ( "bufio" "log" "os" "os/exec" "path/filepath" "strings" "time" ) /*获取当前文件执行的路径*/ func GetCurrPath() string { file, _ := exec.LookPath(os.Args[0]) path, _ := filepath.Abs(file) splitstring := strings.Split(path, "\\") size := len(splitstring) splitstring = strings.Split(path, splitstring[size-1]) ret := strings.Replace(splitstri...阅读全文

博文 2014-10-04 19:27:13 xlplbo

【短小精悍的Go轮子】Viper(一)

前言 在我们开发过程中,像数据库信息、邮件配置和其他的第三方服务密钥等这些固定的信息都会写在配置文件中,而配置文件又有多种表现形式和格式,有 JSON, TOML, YAML各种格式,而且测试环境,开发环境和生产环境用的配置文件也不是同一份,那就让我们说说Go 中用于加载配置信息的Viper。 什么是Viper? Viper是Go应用程序的完整配置解决方案,包括12-Factor应用程序。它旨在在应用程序中工作,并可以处理所有类型的配置需求和格式。它支持: 设置默认值 从JSON,TOML,YAML,HCL和Java属性配置文件中读取 实时观看和重新读取配置文件(可选) 从环境变量中读取 从远程配置系统(etcd或Consul)读取,并观察变化 从命令行标志读取 从缓冲区读取 设置显式值 V...阅读全文

【上海游戏】招聘程序员:GO、C++、U3D、Java

程序职位 HTML5游戏研发工程师 要求:2年左右H5游戏研发经验 地点:上海/南京/合肥都可 游戏客户端开发 要求:1年以上经验 精通C++ 熟悉cocos2d或者U3D 211本科及以上学历 地点:杨树浦路 手游客户端开发工程师 要求:2年以上游戏前端经验 熟悉COCOS或者H5 地点:浦东张江 C++客户端研发工程师 要求:3年以上游戏客户端研发经验 有Lua开发经验优先 地点:静安区 U3D程序 要求:3年左右经验 熟悉热更新,开发过客户端服务端逻辑 地点:4号线大连路 Unity开发工程师 要求:3年左右游戏开发经验 做过核心模块,lua脚本整合能力较强 地点:长宁区 Web前端开发(全栈开发) 要求...阅读全文

go 语言学习历程

接触go是2012年的时候,真正开始系统的学习和开发系统是2014年了,go语言的学习也算自己2014年的重要工作之一,对go语言学习的总结,也算是年底总结之一 1.学习go的原因和动机: 1>先前做过2年Unix c开发经验, 对于C系的语言有特殊的感情,go特别适合我胃口,用过后爱不释手; 2>go语言团队太过耀眼和强大:Thompson 图灵奖获得者,unix 和C的共同发明人;Pike PLAN9操作系统的主要开发者、UTF-8发明者;Robert Griesemer 参与java的HotSpot, js v8引擎开发者; 3>国内传道者的极力推荐:许式伟兄,谢孟军兄等强力推荐及相关书籍问世; 2.学习资料: 书籍是:老许的《go语言编程》、 老谢的《go web编程》、 雨痕的《g...阅读全文

博文 2015-07-14 00:00:02 sunnyql

go 语言学习历程

接触go是2012年的时候,真正开始系统的学习和开发系统是2014年了,go语言的学习也算自己2014年的重要工作之一,对go语言学习的总结,也算是年底总结之一 1.学习go的原因和动机: 1>先前做过2年Unix c开发经验, 对于C系的语言有特殊的感情,go特别适合我胃口,用过后爱不释手; 2>go语言团队太过耀眼和强大:Thompson 图灵奖获得者,unix 和C的共同发明人;Pike PLAN9操作系统的主要开发者、UTF-8发明者;Robert Griesemer 参与java的HotSpot, js v8引擎开发者; 3>国内传道者的极力推荐:许式伟兄,谢孟军兄等强力推荐及相关书籍问世; 2.学习资料: 书籍是:老许的《go语言编程》、 老谢的《go web编程》、 雨痕的《g...阅读全文

博文 2015-01-08 10:00:01 一曲忧伤

[Golang] base64加密与解密

首先解释以下什么是base64(来自百度百科): Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范。Base64编码可用于在HTTP环境下传递较长的标识信息。例如,在Java Persistence系统Hibernate中,就采用了Base64来将一个较长的唯一标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数。在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码具有不可读性,即所编码的数据不会被人用肉眼所直接看到。 在golang里有base64库可以实现相关操作,我尝试实现了加密解密...阅读全文

博文 2016-08-07 17:00:00 vincentX

go 语言之ReadFromUDP使用

今日阅读GORTP代码的时候,发现其代码中收取UDP网络数据后总是可以认为是一个RTP包,而我一开始认为该代码逻辑存在问题,即如果对方发送的是半个RTP包,那不就存在问题?当经过修改代码验证,当接受数据的缓存缓存小于发送缓存时,ReadFromUDP就会报错。 后来,在网上查询资料得知,UDP的数据在缓存队列中是有边缘保证的,也就是说每一个udp的数据包都是游大小的,每次ReadFromUDP都会取一个完整的udp数据包上来,如果应用程序设置的缓存过小,不够一个udp数据包大小,那么ReadFromUDP就会报错。 以上问题,记录一下,以防下次忘记...阅读全文

博文 2015-12-29 21:00:02 wu2436428

上海/广州-继续招个GO(还是上次的公司,之前在这已经招到一个了,感谢贵宝地)

Go工程师(上海) 职责范围: 1. 负责应用于高并发环境下的服务器端应用程序开发。 2. 服务运维及接口开发(Go语言为主) 岗位要求: 1. 扎实的 golang 语言基础。 2. 具备良好的代码编写习惯、良好的代码结构组织能力,同时可以维护开发文档。 3. 熟悉 TDD 模式、DevOps 模式。 4. 熟悉 MySQL、MongoDB 、Redis 等存储方案。 5. 熟悉 Linux 环境。 6. 能够自我驱动,热爱技术,有强烈的上进心,善于探索和钻研 加分项: 1. 可熟练使用 Mac 2. 使用 Git 作为版本控制工具。 3. 精通C/C/+/+或 Python语言,熟悉常用的设计模式者优先 4. 有云计算、云存储,Paas平台或者其他分布式项目...阅读全文

(转载)适合SaaS的几种架构比较

SAAS成熟度模型分级LEVEL1 定制开发软硬件都由SAAS服务商提供,软件的使用者只需要按时间、用户数、空间等逐步支付租赁使用费用即可LEVEL2 可配置通过不同的配置满足不同用户的需求,而不需要为每个用户进行特定定制,以降低定制开发的成本。LEVEL3 高性能的多租户架构多租户:通过一定的策略来保证不同租户间的数据隔离,确保不同租户即能共享同一个应用的运行实例,又能为用户提供独立的应用体验和数据空间。实现方案有独立数据库、共享数据库独立数据架构、共享数据库共享数据架构。高性能:满足多租户并发访问的性能挑战。LEVEL4 可伸缩性的多租户架构解决租户数量增加因集中式数据库带来的性能瓶颈。SAAS实现阶段性成熟度推进定制开发 --> 可配置 --> 多租户 --> 高性能 --> 可伸缩方...阅读全文

Go 应该成为开发 android 的主要语言

前几天刚看到的新闻时,我就在猜想:如果 google 要摆脱 Oracle 的诉讼纠缠,那么只有一条路:就是用 go 取代 java 成为 android 的主要开发语言。这步迟早是要走的,也许谷歌已经在暗自部署了。我一直觉得手机应用开发采用VM语言或者JS是一种短视的行为,在前期也许会因为门槛低而吸引大量程序员涌入这个市场,但是很多高级应用(对速度响应要求很高)最终都难免要回到C/C++原生函数调用上来。别对我说什么C/C++门槛太高,两年前谁知道ObjectiveC,现在排行榜都到第九位了。苹果的ObjectiveC,诺基亚的C++/QT都选对了开发语言,相信Google很快会采用Go回到正轨,手机...阅读全文

go 语言学习历程

接触go是2012年的时候,真正开始系统的学习和开发系统是2014年了,go语言的学习也算自己2014年的重要工作之一,对go语言学习的总结,也算是年底总结之一 1.学习go的原因和动机: 1>先前做过2年Unix c开发经验, 对于C系的语言有特殊的感情,go特别适合我胃口,用过后爱不释手; 2>go语言团队太过耀眼和强大:Thompson 图灵奖获得者,unix 和C的共同发明人;Pike PLAN9操作系统的主要开发者、UTF-8发明者;Robert Griesemer 参与java的HotSpot, js v8引擎开发者; 3>国内传道者的极力推荐:许式伟兄,谢孟军兄等强力推荐及相关书籍问世; 2.学习资料: 书籍是:老许的《go语言编程》、 老谢的《go web编程》、 雨痕的《g...阅读全文

博文 2015-01-04 13:00:05 hittata

如何做Go的性能优化?

Go的性能优化其实总的来说和C/C++等这些都差不多,但也有它自己独有的排查方法和陷阱,这些都来源于它的语言特性和环境。 ------------------------- 1.性能优化前提——任何好的东西都是在正确的前提上 ------------------------- 代码界的很多事是和我们生活的哲学息息相关的,我们想要做好一件事,首先要保证我们能按时完成我们的任务,其次再去想如何把工作做的更好。如果一味只去要求做的尽善尽美可能会导致延期,失败,半途而废。 所以,先写正确的代码,再去考虑如何去让代码更快更好的运行;先完成基本的功能,再去想如何优化它。正确是优化的基础,没有这个基础,任何的优化都是毫无意义的。 ------------------- 2.性能优化限制——架构设计和硬件资...阅读全文

博文 2017-07-15 04:17:12 好奇还思猫

年薪45W在阿里是什么样的级别?

很多人对阿里巴巴的薪酬体系结构及级別设定不太清楚,想去面试也不了解面试什么级別的职位,那麼,年收入 45 万在阿里巴巴內部又是什么水准呢?小编整理了一些java进阶学习资料和面试题,需要资料的请加JAVA高阶学习Q群:664389243 这是小编创建的java高阶学习交流群,加群一起交流学习深造。群里也有小编整理的2019年最新最全的java高阶学习资料!​先看看阿里巴巴的级別设定:​再来看一下阿里巴巴的对应薪酬年薪:​40W 年薪 P6 级别就能获得,阿里巴巴薪资结构通常是 16 薪,因此就是说税前2.5w,年末的奖金 0-6 个月薪资,90%人可获得 3 个月,关于股票,这得要工作满 2 年才能拿,初次拿50%,四年能全都拿完。我希望大伙儿准备充分好再去阿里巴巴面试,不要浪费机会。下面再...阅读全文

博文 2019-01-09 22:40:45 javaGO007

BoltDB 一个简单的纯 Go key/value 存储 [译]

boltDB Blot Bolt 是由 Howard Chu 的 LMDB 项目启发的一个纯粹的 Go key/value数据库。 该项目的目标是为不需要完整数据库服务器(如Postgres或MySQL)的项目提供一个简单,快速和可靠的数据库。 由于 Bolt 是用来作为这样一个低层次的功能,简单是关键。 该API将是小的,只专注于获取值和设置值而已。 项目状态 Blot 稳定,API固定,文件格式固定。 使用完整的单元测试覆盖率和随机黑箱测试来确保数据库一致性和线程安全性。 Blot 目前用于高达1TB的高负载生产环境。 Shopify 和 Heroku等许多公司每天都使用 Bolt 来支持服务。 A message from the author Bolt 最初的目标是提供一个简单的纯 ...阅读全文

【腾讯云】招Golang!30K-60K!

高级后台开发工程师(golang)工作职责: 1.本科及以上学历,计算机相关专业; 2.负责云小程序云开发产品的后台开发; 3.负责开发平台业务的开发和维护; 负责部门相关业务的后台开发及维护。工作要求: 1.Unix/Linux下 Golang的开发经验; 2.熟悉Unix/Linux操作系统原理、常用工具; 3.全面并且扎实的软件知识结构(操作系统、软件工程、设计模式、数据结构、数据库系统、网络安全); 4.具备良好的分析解决问题能力,能独立承担任务和有系统进度把控能力; 5.好学、责任心强、思维缜密敏捷、良好的对外沟通和团队协作能力; 6.有海量系统开发经验优先考虑。团队:小程序云开发(给小程序开发者提供一套云的开发者语言)具体请戳: Wechat:13723737494Email:S...阅读全文

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 雨花

从0做到100,打造滴滴内置导航

本文写于2018年3月,距离今年发布已经一年有余。 从2016年11月开始,我接受了自研滴滴内置导航的任务,到今天,历时一年零四个月。最初的目标,是替换当时使用的腾讯SOSO地图内置导航,实现滴滴地图整个产品线的闭环。 当时把这个任务交给我的时候,是机遇,也是挑战。说实话之前我是没有导航语音播报的相关经验的,仅有的后台服务的经验是在高德做公交引擎。除了缺乏经验,时间也比较紧,自上而下都有比较大的压力(自研导航上线是地图这边的一个关键KPI)。 今天,回头看看这款产品的研发结果,还是取得了预期的效果。内置SDK全面替换为自研SDK,司机口碑上升,NPS上升,内置导航使用率上升。调用自研的导航诱导服务,整个过程中没有出现大的问题。没有出现过导航服务整体不可用的事故。在研发过程中,原有司机端一些隐...阅读全文

博文 2019-07-21 11:32:40 Nicolas_Li

Golang实现自动化部署工具

golang 实现自动化部署的实例 自动化部署有Jenkins为什么我还要写这篇文件,应为公司服务器太菜了,装上jenkins服务器炸了。所以想用golnag撸一了自动化部署工具 每次更新程序都scp太痛苦了 实践完成的自动化部署工具 https://github.com/dollarkill... 自动化部署的实现思路 看了这个图 大家应该发现这实践起来并不困难就是收到 请求 后去 调用 git pull 就行 下面是程序分析 # devops生成文件 请填写完成检查确认后 再 运行啊 (每次运行会重写sh模块) # 这devops系统配置 app: host: "0.0.0.0:8083" debug: true max_request: 1000 task_num: 10 # 要自动化...阅读全文

博文 2019-09-16 19:02:38 dollarkillerx

Golang GC算法

概括 Go的垃圾回收官方形容为 非分代 非紧缩 写屏障 三色并发标记清理算法。 非分代:不像Java那样分为年轻代和年老代,自然也没有minor gc和maj o gc的区别。 非紧缩:在垃圾回收之后不会进行内存整理以清除内存碎片。 写屏障:在并发标记的过程中,如果应用程序(mutator)修改了对象图,就可能出现标记遗漏的可能,写屏障就是为了处理标记遗漏的问题。 三色:将GC中的对象按照搜索的情况分成三种: 黑色: 对象在这次GC中已标记,且这个对象包含的子对象也已标记 灰色: 对象在这次GC中已标记, 但这个对象包含的子对象未标记 白色: 对象在这次GC中未标记 并发:可以和应用程序(mutator)在一定程度上并发执行。 标记清理:GC算法分为两个大步骤:标记阶段找出要回收的对象,清理...阅读全文

博文 2019-01-03 21:34:49 一剑光寒十九洲

招聘要求

一、高级GIS软件研发工程师职位描述:1.充当技术骨干角色;2.负责GIS平台(或应用系统)架构与功能设计;3.承担GIS核心功能代码的编写;4.负责与GIS数据处理工程师和三维建模工程师对接,实现多源数据接入、矢量和栅格数据处理、显示与分析、多维时空动态显示与分析、行业应用分析等功能。 基本要求:熟悉GIS专业,掌握WebGIS开发技术,熟悉.net、C#等开发环境。具有智慧城市或VR地理大数据可视化等开发经验者优先。 二、GIS平台二次开发工程师职位描述:1.作为主流GIS平台二次开发的技术骨干;2.负责GIS项目和GIS产品架构设计;3.负责GIS应用系统核心功能模块的开发工作;4.根据GIS项目和产品需求,形成产品技术文档;基本要求:具有主流GIS平...阅读全文

博文 2017-09-30 13:34:58 Mia_米阳

Golang web开发目录结构说明

通常开发项目开发时目录结构可以随意设计,但好的目录结构能让代码显得更加清晰。 Golang web 项目通用目录结构说明: projectName # 项目名称 |-- app # 应用程序目录 |---- controllers # 控制器,入参校验 |---- middleware # 中间件 |---- routers # 路由 |---- services # 业务逻辑处理 |-- config # 配置文件 |-- dao # 数据库访问 |-- models # 数据模型 |-- storage #存储 |---- cache # 缓存 |---- logs # 日志 |-- main.go # 程序入...阅读全文

博文 2018-11-27 23:34:39 野尘lxw

beego自动化部署

beego是Golang写的应用程序开源框架http://beego.me/,我使用`beego`写了一个项目小项目,golang是编译语言,需要编译之后再部署,每次部署到服务上是件很麻烦的事情。就写了一个自动打包部署到服务器的脚本,方便发布部署。 ##**项目结构**先看看beego项目的结构: beepkg |-- conf | `-- app.conf |-- controllers | `-- default.go |-- main.go |-- models |-- routers | `-- router.go |-- static | |-- css | |-- img | `-- js |-- tests | `-- default_test.go `-- views `--...阅读全文

博文 2017-02-10 14:46:23 姜家志

小米监控系统 OpenFalcon

OpenFalcon是一款小米监控系统。 功能: * **数据采集免配置**:agent自发现、支持Plugin、主动推送模式 * **容量水平扩展**:生产环境每秒50万次数据收集、告警、存储、绘图,可持续水平扩展。 * **告警策略自发现**:Web界面、支持策略模板、模板继承和覆盖、多种告警方式、支持回调动作。 * **告警设置人性化**:支持最大告警次数、告警级别设置、告警恢复通知、告警暂停、不同时段不同阈值、支持维护周期,支持告警合并。 * **历史数据高效查询**:秒级返回上百个指标一年的历史数据。 * **Dashboard人性化**:多维度的数据展示,用户自定义Dashboard等功能。 * **架构设计高可用**:整个系统无核心单点,易运维,易部署。 ...阅读全文

【币码翁】IPFS官方周报第54期 ​

​ 欢迎关注 IPFS 周报!提请注意: 请将 URL 复制/粘贴到浏览器中打开网站。感谢您的支持!星际文件系统 (IPFS) ( https://ipfs.io/ )是一种新的超媒体分布协议,通过内容和标识来寻址。IPFS 支持创建完全分布式的应用程序。它的目标是使网络更快、更安全、更开放。由于范围广大,本周刊旨在跟踪整个生态系统的开发。想参与其中?点击下面的一些链接,查看我们在 GitHub (https://github.com/ipfs ) 上的内容,或加入我们的 IRC ( https://riot.im/app/#/room/#ipfs:matrix.org )。想要更新你的收件箱吗? 订阅我们的每周通讯( https://tinyletter.com/ipfsnewslette...阅读全文

博文 2019-08-14 19:32:46 IPFS星际特工

【社招】【GrabTaxi】招聘后端工程师,iOS、Android工程师【内推】

GrabTaxi原名为MyTeksi,是两位哈佛商学院毕业生开发的一款手机打车应用软件,于2012年在马来西亚上线,可用于大马尼拉、曼谷和新加坡等地区。2013年,GrabTaxi移动应用的用户量达到50万左右,平台上出租车司机数量也达到6万人。2014年12月,日本电信公司软银集团向GrabTaxi投资2.5亿美元,2015年8月完成由寇图资本、中国投资有限责任公司、滴滴快的等联合投资的3.5亿美元融资。2016年9月完成日本软银集团(SoftBank)领投的7.5亿美元新一轮融资。2017年7月刚刚完成软银和滴滴领投的25亿美元最新一轮融资。 Grab研发总部位于新加坡,技术团队由世界各地技术精英组成,他们大多有“FLAG”公司及“常春藤”高校背景。2015年Grab先后在北...阅读全文

golang plugin热更新尝试

电视剧《萌妃驾到》即将和观众见面,剧中很多皇妃的扮演者颜值演技都在线,在电视剧《萌妃驾到》中曲碗碗扮演者尤其受关注,那么剧中曲碗碗扮演者是谁,还演过哪些电视剧? ======================================= 薇.信.关.注.工.众.号:戏说影院 点击影院入口→阅读原文→输入"片名"搜索→即可观看! ======================================= 该剧主要讲述了萌妃步萌与皇上温楼两人在一路“逗智逗勇”的过程中相恋的故事。 在宣布定档的同时,该剧还发布了定档海报,海报尽显独特“萌式美学”。《萌妃驾到》剧中女主步萌由90后人气小花旦金晨饰演,在已公布的定档海报中,步萌作为芳华宫主位,一身唐装俏皮又不失妩媚。而饰演男主温楼的全能偶像艺...阅读全文

深圳招聘Golang工程师 -互联网金融领域

深圳招聘Golang工程师,主要是负责互联网金融产品、创新性金融产品的架构设计、后台系统的开发和维护等工作。 需要具备: 1. 2年以上Golang的开发经验,或者Java/C/C++等经验3年以上且愿意尝试 golang 语言开发; 2. 熟悉数据库、缓存、MQ; 3. 对数据结构和常用算法、网络编程熟悉; 4. 对学习新技术有极大的热情。 待遇:行业内领先的薪酬,固定12个月,1~6个月的年终等;工作地点:南山 简历请投递到:chen_fangya@126.com// Wechat(微信):chenfangya002 如对岗位有疑问,可以通过回复本帖,或邮箱直接联系我,看到后会第一时间回复。 ...阅读全文

微服务架构

微服务架构·基础篇 看到最近“微服务架构”这个概念这么火,作为一个积极上进的程序猿,成小胖忍不住想要学习学习。而架构师老王(不是隔壁老王)最近刚好在做公司基础服务的微服务化研究和落地,对此深有研究。 于是成小胖马上屁颠屁颠的跑过去向老王请教:“王哥,我看微服务架构这么火,我也想学,您给我讲讲啥是微服务架构呗?” 老王笑了笑说:“要想知道什么是微服务架构,你得先知道什么系统架构设计。” 成小胖的理想是成为一名架构师,平时积累了不少知识,因此对“系统架构设计”这个概念还是很熟悉的,因此他马上就给出了答案【1】: 系统架构设计描述了在应用系统的内部,如何根据业务、技术、组织、灵活性、可扩展性以及可维护性等多种因素,将应用系统划分成不同的部分,并使这些部分彼此之间相互分工、相互协作,从而为用户提供某...阅读全文

博文 2017-10-29 15:03:58 Leo_wl

Google 为 TensorFlow 启用 tensorflow.google.cn 域名

8月31日,Google 在中国的开发者网站上提供数百份实用资源,让中国的开发者们能够更便捷地使用 TensorFlow 打造人工智能应用。所有对 TensorFlow 感兴趣的开发者、研究人员或公司都可以在 tensorflow.google.cn 上获取使用指南,在知识库中搜索现有的 API(应用程序编程接口),或是构建模型的方法。如果你是一家希望打造人工智能服务的初创公司,可以在这里清楚地了解到 TensorFlow 的使用方式,并通过实践教程进行学习,而这些资料和教程都完全免费。 Google 很重视中国的 AI 开发者? 中文官网:https://tensorflow.google.cn/ 官网:https://www.tensorflow.org...阅读全文

[Golang]设计模式实践:组合(Composite)

关于本系列这个系列首先是关于Go语言实践的。在项目中实际使用Go语言也有段时间了,一个体会就是不论是官方文档、图书还是网络资料,关于Go语言惯用法(idiom)的介绍都比较少,基本只能靠看标准库源代码自己琢磨,所以我特别想在这方面有一些收集和总结。然后这个系列也是关于设计模式的。虽然Go语言不是一门面向对象编程语言,但是很多面向对象设计模式所要解决的问题是在程序设计中客观存在的。不管用什么语言,总是要面对和解决这些问题的,只是解决的思路和途径会有所不同。所以我想就以经典的设计模式作为切入点来展开这个系列,毕竟大家对设计模式都很熟悉了,可以避免无中生有想出一些蹩脚的应用场景。本系列的具体主题会比较灵活,计划主要包括这些方面的话题:Go语言惯用法。设计模式的实现。特别是引入了闭包,协程,Duck...阅读全文

博文 2015-03-13 12:00:31 abv123456789

Gin实践 番外 Golang交叉编译

Golang交叉编译 项目地址:https://github.com/EDDYCJY/go... (快上车,支持一波) 原文地址:https://segmentfault.com/a/11... 前言 在 连载九 讲解构建Scratch镜像时,我们编译可执行文件用了另外一个形式的命令,不知道你有没有疑问? $ CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o go-gin-example . 说明 我们将讲解命令各个参数的作用,希望你在阅读时,将每一项串联起来,你会发现这就是交叉编译相关的小知识 也就是 Golang 令人心动的特性之一跨平台编译 一、CGO_ENABLED 作用: 用于标识(声明) cgo 工具是否可用 意...阅读全文

博文 2018-03-26 15:34:41 煎鱼

干货 | 国内互联网公司是如何做微服务实践的?(附PPT下载)

微服务的概念最早由Martin Fowler与James Lewis于2014年共同提出,并随着Netflix最佳实践的发布而为业界所知。如今,在国内有了大量的微服务实践案例,5月18日,网易云联合云片在武汉主办“微服务架构落地的最佳实践”活动,网易云、云片、美洽、网易云音乐等业界微服务的先行者,分享了落地实践过程中总结的干货经验。微服务在传统领域的落地实践 网易云微服务资深架构师 袁梓超 微服务是一个非常复杂的演进过程,是企业在发展过程中业务遭遇痛点、解决痛点的过程。网易云微服务资深架构师袁梓超主要分享了微服务在传统领域的落地实践以及可以帮助企业解决的问题。袁梓超认为金融行业对微服务的需求,主要源于业务的驱动。比如网易云所服务的某家证券公司,在业务转型的过程中,多个线下业务在逐渐转向线上,...阅读全文

博文 2019-05-28 21:34:44 网易云社区

今日头条广告部门招聘各种岗位(ps:最核心团队之一),待遇丰厚期权免费3餐1500房补每月

1. 关于我们: 今日头条广告系统团队,主要负责公司所有系列产品的商业变现,包括今日头条、西瓜视频、抖音、火山小视频、内涵段子等等,广告系统已经积累了几百名优秀的研发人才,打造出了海内外一流领先的信息流广告系统,每天支撑着公司数千万的稳定收入。 2. 岗位需求: -- 后台/前端研发工程师(负责国内外高并发商业平台的研发和优化) -- 算法/大数据研发工程师(研究海量数据的批量计算、实时计算) -- 投放研发工程师(广告投放平台的架构设计与优化) -- 测试开发工程师(把控广告营销平台的质量与稳定性) -- 安卓开发工程师(广告SDK的开发) 3. 待遇 今日头条待遇在国内互联网数一数二,期权,免费3餐(50元标准),每个月1500房补,过年至少几千的红包。。 ...阅读全文

Go 项目标准布局(结构)

https://github.com/golang-standards/project-layout 项目总结了 Go 项目的布局,这是Go应用程序项目的基本布局,并不是Go核心开发团队定义的官方标准;但是,这是Go生态系统中的一种常见的项目布局模式。 Go目录 /cmd 该目录用于存放 Go 项目的入口,即 main.go。一般来说,我们应该在 cmd 目录下创建子目录,子目录名称代表可执行程序的名称(例如/cmd/myapp)。上面列出的优秀开源项目基本上遵循了这一规则。 一般来说,该目录中的代码应该尽可能少。如果认为该代码可以导入并在其他项目中使用,那么它应该位于/pkg目录中。如果该代码不可重用,或者不希望其他人重用它,则将该代码放在/internal目录中。 /internal 这...阅读全文

博文 2020-03-03 15:33:24 DevilRoshan

[腾讯招聘]docker高级开发工程师

岗位职责: 负责容器云平台的架构设计与开发工作; 负责Docker等关键技术研究和开发工作; 负责Kubernetes等编排服务框架的开发工作; 岗位要求: 大学本科以上,计算机及相关专业,三年以上云计算系统架构设计、应用和开发经验; 熟悉linux下C、C++开发语言,对多进程多线程及网络编程有较深刻的理解; 熟练掌握Go语言及并发编程; 掌握 kubernetes ,mesos等编排服务框架以及能对它们进行二次开发优先; 熟悉Docker环境的网络性能调优以及网络解决方案,如Flannel等开源技术优先; 熟悉Docker的相关开源技术,掌握Docker源码者优先; 工作激情,有良好的团队协作精神,富有责任心,能承受一定强度的工作压力。 岗位在深圳,有意向...阅读全文

golang test模块

1 创建文件夹testing101 2 被测试程序 package testing101 func Sum(numbers []int) int { sum :=0 for _,n :=range numbers { sum +=n } return sum } 3 测试程序 package testing101 import ( "testing" ) func TestSum(t *testing.T) { numbers := []int{1, 2, 3, 4, 5} expected := 15 actual := Sum(numbers) if actual != expected { t.Errorf("Expected the sum of %v to be %d but in...阅读全文

博文 2018-01-05 00:30:00 peterinblog

秋招真题汇总:华为+网易+拼多多+字节跳动+360+菜鸟,你上岸没?

01 拼多多(2面技术+HR面) 一面 聊项目,很细 重解笔试题目 Mqtt,Http,WebSocket协议相关内容 C++ 多态实现 预编译保护 动态链接和静态链接 进程fork过程 C++构造函数和析构函数相关 深拷贝和浅拷贝 虚函数和内联 C++内存分配 O(logn), O(n), O(nlongn), O(n^2), O(n^logn), O(n^3)算法各举一个例子 map 和 hashMap 底层实现 hash 函数、hash冲突相关 稳定排序和不稳定排序,各种排序算法复杂度 Graphql、 Restful 题目1.给一个序列,如{1,4,6,3,8,7},然后打印相应的柱状图 题目2.给定一个函数 g(x) 可以以概率 p 产生1, 概率 1-p 产生0, 让你利用g(x...阅读全文

博文 2019-10-17 19:33:06 aside section ._1OhGeD

Golang 解决"go get xxxx"失败的问题

【问题1】 sudo go get github.com/nsf/gocode sudo: go: command not found 【解决1】 将已安装的go可执行程序链接到sudo的env路径下,例如下面的操作: sudo ln -s /usr/local/go/bin/go /usr/local/bin/ 【问题2】 sudo go get github.com/nsf/gocode sudo: cannot download, $GOPATH not set. For more details see: go help gopath 【解决2】 将GOPATH路径显式的设置并使用,例如下面的操作: sudo env GOPATH=/Users/ryan/go go get gith...阅读全文

博文 2017-01-05 02:00:01 吃一堑消化不良

Go语言,Docker和Kubernetes

载自:http://www.yinwang.org/blog-cn/2016/03/27/docker 当我嘲笑Go语言的时候,有些人跟我说,你说Go语言是垃圾,可是你看像Docker和Kubernetes之类的云计算项目,为什么是Go语言写的呢? 其实答案很简单:这些东西并不是非得用Go语言写才可以,用其他语言实现它们其实并没有什么问题,只不过它们碰巧是用Go语言写的而已。Docker和Kubernetes之类的项目,其实只依赖于操作系统的构架细节,对语言没有特别的要求,而且也没什么性能需求,所以它们其实可以用任何语言(包括Shell,Perl,Python,Ruby,C,Java……)来实现。只因为有人跟风,用Go语言写了这些东西,并不能说明Go语言是好东西。在当今混乱的IT业界,随便你...阅读全文

博文 2016-05-10 18:00:03 cytzrs

Canonical 用 Go 做了这五个超酷的项目

前不久,Google 的 Go 问鼎 TIOBE 排行榜,成为 2016 年年度编程语言。Go 因其易学性及务实性受到大家的喜爱。抛开长篇累牍的理论,Go 更注重的是实践经验,因此越来越多的用户将其应用到工业环境中。在 Canonical 中也一样!作为 Go 的支持者,我们用 Go 做了五个超酷的项目: 1、Juju Juju 堪称是“DevOps工作经验的结晶”,能使用 Charms 将应用程序体系结构部署到 EC2,OpenStack,Azure,HP 数据中心,甚至是基于 Ubuntu 的笔记本电脑。它使得开发和部署过程中团队间的对话和工作流程变得极为清晰明了。 2、Snapcraft Snapd 和 snap工具使系统能够使用 .snap 文件。 为每个 Linux 桌面,服务器,...阅读全文

博文 2017-01-24 17:00:09 编辑部的故事