关于xml包在Unmarshal时将\r\n重写为\n的问题

今年4月份,中国移动、中国电信、中国联通三大运营商联合举行线上发布会,发布了《5G消息白皮书》。所谓5G消息,即传统短信消息(仅能进行文本展示)的升级版,是由GSMA组织制定的RCS(Rich Communication Suite)消息规范所定义。2019年RCS UP(unified profile)更新到2.4版本,并成为了5G终端标准的一部分,该版本也是第一个具备商用能力的版本,为5G消息商用奠定了基础。中国移动计划2020.6月末正式实现5G消息的商用,目前已经在浙江和广东建立了两个5...阅读全文

Tony Bai 六月 4, 2020 bigwhite

如何0成本在github上构建CI

image 现代软件的研发流程基本上均会配备一定程度的CI/CD(这篇文章解释了为何需要在企业里实施CI/CD),整个流程主要分为CI和CD部分,这篇文章将围绕CI部分展开,并通过一个具体的例子解释如何0成本在github上构建CI。构建CI的最佳实践离不开Trunk Based Development的分支策略,感兴趣的读者可以通过这篇文章来了解什么是Trunk Based Development。在github上构建CI有2个好处:无需任何费用和有大量可以用于构建CI的模块,借助这2个好处,...阅读全文

简书 2020-06-06 11:32:44 云端漫步_2cloudlab

多个程序监听同一端口 - socket端口复用技术

对于多个程序绑定同一个端口我们遇到最多的是(Port 80 was already in use),也就是说端口被占用,不能重复绑定,但是操作系统内核支持通过配置socket参数的方式来实现多个进程绑定同一个端口。 简单示例 package main import ( "context" "golang.org/x/sys/windows" "net" "syscall" ) var listenConfig = net.ListenConfig{ Control: MyControl, } f...阅读全文

简书 2020-06-06 11:32:42 写个代码容易么

【golang】内存逃逸常见情况和避免方式

为什么要尽量避免内存逃逸? 因为如果变量的内存发生逃逸,它的生命周期就是不可知的,其会被分配到堆上,而堆上分配内存不能像栈一样会自动释放,为了解放程序员双手,专注于业务的实现,go实现了gc垃圾回收机制,但gc会影响程序运行性能,所以要尽量减少程序的gc操作。 常见内存逃逸情况 1、在方法内把局部变量指针返回,被外部引用,其生命周期大于栈,则溢出。 2、发送指针或带有指针的值到channel,因为编译时候无法知道那个goroutine会在channel接受数据,编译器无法知道什么时候释放。 3、...阅读全文

简书 2020-06-06 11:32:41 dongzaidong

CUDA 及其 golang 调用 - 从入门到放弃 - 1.初见

环境: NVIDIA GeForce GTX 1050 cuda 10.2.89 windows visual studio 2017 windows SDK 10.0.14393.0 go 1.13.4 windows/amd64 我们在文件 lib.cu 中实现一个 GPU 计算的浮点数向量内积函数,以及一个 CPU 的入口函数进行数据传递和调用: __global__ void devDot(double *x, double *y, int n, double *r) { double ...阅读全文

简书 2020-06-06 05:32:39 Platanuses

策略与机制

入行至今快12年,这段时间空闲下来,思考一个问题:进入油腻之年,谈到程序,应该谈些什么?是编程语言的语法吗?这些年接触过C、C++、Golang、Java、OC,看过C#、JS、Erlang。编程语言这么多,怎么学习得过来?是语言相关的库吗?学语言必然要学相关的语言库。这就更是无究无尽,有数不尽的技术细节、编程技巧,怎么学习得过来?是学习编程框架吗?编程框架最核心的目的,提高开发效率。因为更靠近业务,Java、JS的框架尤其多。框架封装好,开发者只需要关注业务逻辑,不可或缺,但似乎也不是必需的。...阅读全文

简书 2020-06-06 05:32:39 castle_8530

基于 Go + MySQL + ES 实现一个 Tag API 服务

Tag 是一个很常见的功能,这篇文章将使用 Go + MySQL + ES 实现一个 500 多行的 tag API 服务,支持 创建/搜索 标签、标签关联到实体 和 查询实体所关联的标签列表。 初始化环境 MySQL brew install mysql 复制代码ES 这里直接通过 docker 来启动 ES: docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node"...阅读全文

掘金 2020年06月05日 3vilive

宝塔、云帮手、安全狗、AppNode、WDCP、云锁、悬镜、旗鱼云梯哪个好用?

今天这篇文章主要是为大家分析下我所用过8款服务器运维管理面板:宝塔、云帮手、安全狗、云帮手、云锁、悬镜、AppNode、WDCP、旗鱼云梯体验与感受。1、宝塔(官网)作为最近几年比较流行的面板,我就不细说,很多站长基本第一次操作linux面板就是这几个。 宝塔面板有Linux系统面板,可以安装LNMP、LAMP等环境,包括简单的备份、监控、定时计划,功能强大,用户使用反馈单机版的问题都有。没有针对新的SEO需求,做插件和功能调整.收费比较贵,基本一个waf防火墙一个月就几十元,买上几个插件基本一...阅读全文

Go语言中文网 2020-06-05 17:31:10 cloudman

难上加难!扒一扒IDC行业背后那些不为人知的心酸......

大家都说IDC行业待遇好,薪酬高,事实真的如此吗?光鲜背后的心酸和压力只有IDC人自己知道,来看看IDC从业者都是怎么描述的。 ​01 把人逼成“鬼”的IDC运维夜深人静,凌晨两点,IDC运维团队还在悄无声息的忙碌中。客户的条件越来越高,硬件更新越来越快,业务需求越来越紧急,运维的压力也越来越大。业务天亮就得上线,这一切只能在业务最少的时候进行,设备半夜2点以后才能进场......两眼紧盯屏幕,监控设备运转,为保障业务稳定运行,7X24小时运维值守已经成为习惯,脸色惨白自嘲“吸血鬼”,偶尔也产生...阅读全文

Go语言中文网 2020-06-05 17:12:47 gogogochong

Go开发中结构体 model、dto 、time格式问题

1、背景 model层不允许申明json tag, dto层又重复造轮子,一个表的字段可能20个左右,那么赋值语句难受死了。 其次就是json直接解析,model层的time.Time,完蛋格式不对,返回的数据不对。 比如 { "user_name": "xiaoli", "create_time": "2020-06-05T13:53:06.293614+08:00" } 复制代码这种情况,无法解决,就需要必须重写一个dto。 那么如何解决这个问题呢,本人思考了一段时间,最终使用Map来解决。...阅读全文

掘金 2020年06月05日 AnthonyDong

并发问题的解决思路以及Go语言调度器工作原理

上周的文章《Go并发编程里的数据竞争以及解决之道》最后留下了一个用并发解决的思考题,期间有几位同学留言说了自己的实现思路,也有两位直接私信发代码让我看的,非常感谢几位的积极参与。今天的文章我首先说一下上篇文章里的思考题的解决思路,我会给出完整可运行的代码。之后通过观察程序的运行结果里的现象简单介绍Go语言的调度器是如何对goroutine进行调度的。 回答上周的问题 先来回顾一下上周文章里思考题的题目: 假设有一个超长的切片,切片的元素类型为int,切片中的元素为乱序排列。限时5秒,使用多个go...阅读全文

掘金 2020年06月05日 kevinyan

新基建冲上风口,运维如何变革?

新基建可能是2020最热词之一。自今年3月初,中央提出要加快 5G 网络、数据中心、新能源车、充电桩等新型基础设施建设进度后,“新基建”在全社会备受关注。在前不久的两会中,不少大佬的提案中又均涉及新基建,再一次将新基建推上风口。​腾讯董事会主席兼CEO—马化腾 关键词:加快推进「云计算」等新基建、打造产业互联网“朋友圈”百度董事长—李彦宏 关键词:打造「人工智能」新基建、推进智能云工程,加速产业智能化联想集团董事长兼CEO—杨元庆 关键词:加大新基建建设「力度」、大力发展智慧经济 ......每...阅读全文

Go语言中文网 2020-06-05 11:48:50 gogogochong

又拍图片管家亿级图像之搜图系统的两代演进及底层原理

又拍图片管家亿级图像之搜图系统的两代演进及底层原理 前言 又拍图片管家当前服务了千万级用户,管理了百亿级图片。当用户的图库变得越来越庞大时,业务上急切的需要一种方案能够快速定位图像,即直接输入图像,然后根据输入的图像内容来找到图库中的原图及相似图,而以图搜图服务就是为了解决这个问题。 本人有幸独立负责并实施了整个以图搜图系统从技术调研、到设计验证、以及最后工程实现的全过程。而整个以图搜图服务也是经历了两次的整体演进:从 2019 年初开始第一次技术调研,经历春节假期,2019 年 3、4 月份第...阅读全文

Segmentfault 2020-06-08 09:32:35 rife

27. 学习 Go 协程:WaitGroup

Hi,大家好,我是明哥。 在自己学习 Golang 的这段时间里,我写了详细的学习笔记放在我的个人微信公众号 《Go编程时光》,对于 Go 语言,我也算是个初学者,因此写的东西应该会比较适合刚接触的同学,如果你也是刚学习 Go 语言,不防关注一下,一起学习,一起成长。 我的在线博客:golang.iswbm.com 我的 Github:github.com/iswbm/GolangCodingTime 在前两篇文章里,我们学习了 协程 和 信道 的内容,里面有很多例子,当时为了保证 main g...阅读全文

掘金 2020年06月05日 王一白

28. 学习 Go 协程:互斥锁和读写锁

Hi,大家好,我是明哥。 在自己学习 Golang 的这段时间里,我写了详细的学习笔记放在我的个人微信公众号 《Go编程时光》,对于 Go 语言,我也算是个初学者,因此写的东西应该会比较适合刚接触的同学,如果你也是刚学习 Go 语言,不防关注一下,一起学习,一起成长。 我的在线博客:golang.iswbm.com 我的 Github:github.com/iswbm/GolangCodingTime 在 「19. 学习 Go 协程:详解信道/通道」这一节里我详细地介绍信道的一些用法,要知道的是...阅读全文

掘金 2020年06月05日 王一白

28. 学习 Go 协程:互斥锁和读写锁

Hi,大家好,我是明哥。 在自己学习 Golang 的这段时间里,我写了详细的学习笔记放在我的个人微信公众号 《Go编程时光》,对于 Go 语言,我也算是个初学者,因此写的东西应该会比较适合刚接触的同学,如果你也是刚学习 Go 语言,不防关注一下,一起学习,一起成长。 我的在线博客:http://golang.iswbm.com我的 Github:github.com/iswbm/GolangCodingTime 在 「19. 学习 Go 协程:详解信道/通道」这一节里我详细地介绍信道的一些用法...阅读全文

Segmentfault 2020-06-08 10:32:35 Python编程时光