2020 年,嵌入式开发工程师的两大必知必会!

2020年,在嵌入式系统及硬件领域里有哪些新趋势呢?本文作者从软硬件两大点出发,详细介绍其中的新技术发展趋势,对于嵌入式系统工程师的你绝不可错过的干货知识。 学习嵌入式的第一步就是要了解嵌入式,一些免费的课程给大家分享嵌入式行业发展跟现状分析http://www.makeru.com.cn/live/1392_401.html?s=144282以下为译文:对嵌入式系统及硬件程序员而言,2020年将是振奋人心的一年。因为在服务器和台式机领域内,英特尔将发布新的 Whitley/Ice Lake 芯...阅读全文

简书 2020-05-27 19:32:48 安苒呀

go int 值范围

uint8 : 0 to 255 uint16 : 0 to 65535 uint32 : 0 to 4294967295 uint64 : 0 to 18446744073709551615 int8 : -128 to 127 int16 : -32768 to 32767 int32 : -2147483648 to 2147483647 int64 : -9223372036854775808 to 9223372036854775807 http://www.voidcn.com/li...阅读全文

简书 2020-05-27 19:32:45 allenhaozi

与BSN的链码进行通信互动

在上一节完成链码部署后,就可以与链码进行通信互动了。互动有多种方式,如通过SDK编程,也可以使用peer节点使用命令行操作完成。本节先使用后者实现预置链码包介绍通过区块链服务网络开发者手册可知,BSN提供的预置链码包提供了五个方法,我们逐一来操作处理1、增加数据(set)输入参数说明baseKey:需要保存的唯一的主键标识baseValue:保存的数据信息` 例:{"baseKey":"str","baseValue":"this is string"}` 其中 baseKey 是不能为空的字符...阅读全文

简书 2020-05-27 19:32:45 凡星_

golang实现冒泡算法

具体代码实现 /** * 冒泡算法 go 实现 */ package main import ( "fmt" "math/rand" "time" ) func main() { // 获取随机数个数 randCount := 10 randRandMax := 100 // bucketMax := randRandMax + 1 // make 创建切片,已经初始化完毕。在append的话,前面值都为0 // randList := make([]int, randCount) var ra...阅读全文

简书 2020-05-27 19:32:43 全栈运维

Go -race是啥? atomic解决了啥

介绍 go run -race xxx... -race选项用于检测数据竞争,在使用了-race的情况下,go程序跑起来之后,如果发生数据竞争,它就能检测到,它就会一层一层地把错误栈打印出来,就像打印panic一样。通常用于开发。当然开启了该选项也未必能检测出潜在的数据竞争,当你的程序跑到数据竞争的片段它就会检测出来,你的程序可能有很多模块,当程序没有执行到数据竞争的地方那直到整个程序执行结束它也检测不出来。 使用-race选项相比不开启此选项会消耗更多的cpu计算资源和内存,实际上的情况是: ...阅读全文

掘金 2020年05月27日 AnthonyDong

go模板-代码生成器

能用程序去做的事,就不要用手,编写自己的代码生成器就是用来解放你的双手,替你做一些重复性的工作。 上篇帖子写了模板的基础 go模板详说 ,有了基础就要做点什么东西,把所学到的东西应用起来才能更好的进步。于是用模板写了一个代码生成器,用于把数据库的表转换成go的struct,目前支持MySQL和PostgreSQL。这篇帖子写实现的思路和一些具体的代码实现。 Github地址: yggdrasill 看一下效果 大概的思路: 就是得到数据库下的所有的表数据。如果指定生成某几个表,只需查一下是否存在...阅读全文

掘金 2020年05月27日 compiler

Go 每日一库之 rpcx

简介 在之前的两篇文章rpc和json-rpc中,我们介绍了 Go 标准库提供的rpc实现。在实际开发中,rpc库的功能还是有所欠缺。今天我们介绍一个非常优秀的 Go RPC 库——rpcx。rpcx是一位国人大牛开发的,详细开发历程可以在rpcx官方博客了解。rpcx拥有媲美,甚至某种程度上超越gRPC的性能,有完善的中文文档,提供服务发现和治理的插件。 快速使用 本文示例使用go modules。 首先是安装: $ go get -v -tags "reuseport quic kcp zo...阅读全文

掘金 2020年05月26日 darjun

Go 每日一库之 rpcx

简介 在之前的两篇文章rpc和json-rpc中,我们介绍了 Go 标准库提供的rpc实现。在实际开发中,rpc库的功能还是有所欠缺。今天我们介绍一个非常优秀的 Go RPC 库——rpcx。rpcx是一位国人大牛开发的,详细开发历程可以在rpcx官方博客了解。rpcx拥有媲美,甚至某种程度上超越gRPC的性能,有完善的中文文档,提供服务发现和治理的插件。 快速使用 本文示例使用go modules。 首先是安装: $ go get -v -tags "reuseport quic kcp zo...阅读全文

Segmentfault 2020-05-31 12:32:34 darjun

设计模式:程序员跳不开的坑

学编程,总是逃不了要学“算法”,也总跳不开要学“设计模式”。 无论学习什么语言,设计模式始终是我们必须掌握的,这是程序员的基本功。 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。 使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。 项目中合理的运用设计模式可以完美的解决很多问题,每种模式...阅读全文

简书 2020-05-26 23:32:49 实验楼

Elasticsearch系列(三) 实时同步mysql数据到Elasticsearch

mysql 作为成熟稳定的数据持久化解决方案,广泛地应用在各种领域,但是在数据分析、全文检索方面稍有不足,而 elasticsearch 作为数据分析领域的佼佼者,刚好可以弥补这项不足,而我们要做的只需要将 mysql 中的数据同步到 elasticsearch 中即可,今天介绍使用logstash将mysql数据全量导出到es,使用go-mysql-elasticsearch将mysql实时同步到es。 添加mysql测试数据 SET NAMES utf8; SET FOREIGN_KEY_C...阅读全文

简书 2020-05-26 23:32:48 费墨c

近期IPFS项目动态大汇总

近期,IPFS项目进行的如花如茶,小编给大家汇总下IPFS最近动态。议实验室于5月7~8日举办了 IPFS Pinning Submit。由于疫情原因,这次会议是线上举行。今日得闲,看了几个视频。IPFS 0.5.0版本发布,进展很大,本文做一个简单梳理。主要内容来自IPFS Project Lead - Molly Mackinlay。IPFS生态日渐完善 IPFS生态近期有比较大的发展,从内容分享、社交网络、身份服务、区块链应用、金融电子化等等各个方面。非常重要的是,目前有比较多的浏览器开始...阅读全文

简书 2020-05-26 23:32:44 IPFS布道者博辉亚新

重新做华为的机试题

#### 重新写一道华为机试算法题 *** 很少做算法题,上次做华为算法题没准备,做的时候完全是懵的,反倒是现在想起来了,就来说说这道题怎么做. 现在也只是记住当时的大概意思,将就着理解吧: *** 就是输入两个数N,M,且N<M,找出并打印N,M两个数之间互为质数的勾股数组,例如N=1,M=10,打印的结果为3,4,5(升序),而另一组勾股数6,8,10不是互质的就不打印,如果N,M,之间没有一组这样的数就打印NA. *** 由于忘了两个数互质的条件,当时没做出来,现在...阅读全文

Go语言中文网 2020-05-26 23:23:44 MrWusenshan

LeetCode1.两数之和

问题描述: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1] 解题思路: 1.暴力法 利用两层循环查找和为目标值的两个整数,并返回下标。 2.HashMap两层循环 先将数组中的...阅读全文

Segmentfault 2020-05-30 23:32:33 xeniogd

数据库大表优化全攻略!!

作者:低至一折起来源:juejin.im/post/5b7d52afe51d453885030b91当MySQL单表记录数过大时,增删改查性能都会急剧下降单表优化除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分,拆分会带来逻辑、部署、运维的各种复杂度,一般以整型值为主的表在千万级以下,字符串为主的表在五百万以下是没有太大问题的。而事实上很多时候 MySQL 单表的性能依然有不少优化空间,甚至能正常支撑千万级以上的数据量。字段尽量使用 TINYINT、 SMALLINT、 MEDIUM_I...阅读全文

简书 2020-05-26 17:36:29 逆风_c69c

Mac下配置Go开发环境

Go(又称 Golang)是 Google 开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。Go 的语法接近 C 语言,可以进行网络编程、系统编程、并发编程、分布式编程。 下面演示如何在 Mac 电脑上搭建 Go 语言开发环境。 1,安装 Golang 的 SDK 在官网下载对应的开发工具GoLand,地址如下:https://golang.org/dl/ 2,配置环境变量 (1)在终端执行如下命令进入用户主目录: cd ~ (2)执行如下命令打开 .bash_profile...阅读全文

简书 2020-05-26 17:36:21 ShineYangGod

【用Golang实现JVM第一篇】知识准备&前言

学习JVM最好的方法,就是实现它,没有之一。 对JVM感兴趣的朋友可能会去主动寻找讲解JVM的书,比如《深入理解JVM》、《Java虚拟机规范》、《虚拟机的设计与实现》,但是这些书都是定性讲解,多数人看过以后对不少概念还是会很模糊,其根本原因就是我们无法只根据定义在脑袋里想象出具体用代码应该怎么实现,就会有一种空中楼阁的感觉。既然虚拟机规范都是公开的,为什么我们不尝试着去实现一个能跑就行的JVM呢? 方法论:将复杂问题化解为简单问题的集合 国外有一本著名的操作系统教材,叫作《Operating ...阅读全文

简书 2020-05-26 17:36:09 司青玄

Mix PHP V2.2 发布,与 go-micro 深度集成的 PHP 微服务开发框架

Mix PHP 是一个基于 Swoole 开发的高性能 PHP 框架,从 2017 年开始经过多年发展收获了很多中小型团队的支持,框架版本也经历了多个版本的迭代: V1.*: 基于 Swoole 的常驻内存型 PHP 高性能框架 V2.0: 基于 Swoole 的 FastCGI、常驻内存、协程三模 PHP 高性能框架 V2.1: 基于 Swoole 4.4+ 单线程协程 PHP 框架 V2.2: 基于 Swoole 4.4+ 单线程协程 PHP 微服务框架 ???? 微服务开发 本次版本更新主...阅读全文

简书 2020-05-26 17:36:09 撸代码的乡下人

一文带你了解Go的工程管理

大家好,我是asong,这是我的第三篇原创文章。这一篇将对Go的工程管理进行详细的介绍,学习了这些,对我们的日常项目开发有很大帮助。最后对go module的使用进行详细介绍(一定要看到最后呦!)。 一、golang中包的概念 Go语言中使用包来组织源代码的,并且通过命名空间进行管理。所以所有源代码都必须属于某个包。每个go文件中第一行都必须是以package name声明自己所在包。 在介绍包之前,我们需要了解一下Go作用域问题。Go语言的作用域有一点区别于其他语言,所以一定好好掌握这一点,要...阅读全文

简书 2020-05-26 17:33:12 sunsong1997

掌握这些Go语言特性,你的水平将提高N个档次(二)

前言: 大家好,我是asong,这是我的第二篇原创文章。上一文介绍了切片、变量声明、defer三个知识点(回顾上文,关注公众号即可进行阅读),这一文将继续介绍其他Go语言特性,废话不多说,直接上干货。 1. 指针和引用 在Go语言中只有一种参数传递的规则,那就是值拷贝,其包含两种含义: 函数参数传递时使用的值拷贝 实例赋值给接口变量,接口对实例的引用是值拷贝 我们在使用过程中会发现有时明明是值拷贝的地方,结果却修改了变量的内容,有以下两种情况: 直接传递的是指针。指针传递同样是值拷贝,但指针和指...阅读全文

简书 2020-05-26 17:33:03 sunsong1997