Gox语言中使用SQLite数据库的内存数据库模式-GX28.2

对于SQLite数据库,Gox语言中也支持DSN方式定义数据库名称,因此也可以支持内存模式的SQLite数据库,在某些场景下会比较方便,例如想把一个二维数组用SQL语句进行关联查询等。 下面就是使用内存模式的例子,与GX28.1中相关代码的区别,仅仅在于去掉了检查文件是否存在的代码,然后将sqltk.ConnectDB中的文件名改成了“file:test.db?cache=shared&mode=memory”,这是一个标准的DSN,其中文件名test.db会被忽略,mode=memory表示使...阅读全文

几种性能测试工具的总结

我们经常会谈论性能、并发等问题,但是衡量性能不是说写段代码循环几百次这么简单。最近从项目上的同事了解到了代码化的测试性能测试工具 k6,以及结合之前用过的Java 微基准测试 (JMH)、AB (Apache Benchmark) 测试、Jmeter 做一下总结。 谈性能,实际上结合实际的业务背景、网络条件、测试数据的选择等因素影响非常大,单纯的谈 QPS 等数据意义不大。 这里介绍的几个工具刚好能满足平时开发工作中不同场景下衡量性能的需求,因此整理出来。 Java 微基准测试 (JMH) 可以...阅读全文

简书 2020-11-23 18:32:49 ThoughtWorks

Golang 字符串 格式化

golang format在 Go 语言中,fmt.Sprintf(), fmt.Printf(), fmt.Fprintf(), Log.Printf(), log.Panicf() 等函数常常会用字符串格式化参数,这一篇文章带你熟悉所有参数。参数介绍 实战例子 package mainimport "fmt"import "os"type point struct { x, y int}func main() { // Go 为常规 Go 值的格式化设计提供了多种打印方式。例 // 如,这里...阅读全文

简书 2020-11-23 18:32:49 也许会了

一个隐藏在方法集和方法调用中且易被忽略的小细节

来自公众号:新世界杂货铺作为一个长期从事Go语言开发的程序猿,笔者不敢说自己是老油条但也勉强算一个小油条。然而就在今天,笔者研究TLS/SSL握手源码的时候,突然灵光一闪,想到了一个和自己认知不符的现象,于是赶紧写了一个例子验证一番,结果当头一棒直到码这篇文章时依旧懵逼。话不多说,上锤!不好意思,不是这个锤,是下面这个:type set interface { set1(s string) set2(s string) } type test struct { s string } func (...阅读全文

Segmentfault 2020-11-24 02:32:37 新世界杂货铺

深圳shopee急招1年以上工作经验后台、大数据、前端、测试各类岗位

工作地点:广东深圳(主要工作地点)、上海有部分岗位、新加坡 学历背景要求:统招本科以上,有大厂经验更佳 福利待遇:1075工作制,薪资对标BAT(应届工资更是远超BAT),免费零食饮料茶水无间断供应 想看具体岗位详情可联系我的微信:smile_runze5阅读全文

Go语言中文网 2020-11-23 17:45:54 runze555

LeetCode069-x的平方根-easy

标签:二分 题目:x的平方根 题号:69 题干:实现 int sqrt(int x) 函数。计算并返回 x 的平方根,其中 x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去 示例1: 输入: 4输出: 2 示例2: 输入: 8 输出: 2 解释: 8的平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去原题比较简单,因此这里做简单的变形,求x的平方根,要求可以获取指定精度的结果示例: 输入:8 0.000001 输出:2.828427 说明:0.000...阅读全文

Segmentfault 2020-11-24 02:32:37 书旅

关于M1芯片 MacBook Pro/Air 软件兼容性如何!

苹果终于发布了第一款自主研发、基于ARM架构的Mac平台处理器,定名为“M1”,也就是此前所说的Apple Silicon。苹果M1采用最新的台积电5nm工艺制造,集成多达160亿个晶体管,而且是一颗完整的SoC,集成所有相关模块,并采用苹果自创的封装方式。。那么对于我们来说关于M1最重要的是什么呢?当然是M1 芯片 MacBook Pro/Air 软件兼容性和它是否值得我们去购买! 下面小编和大家分享一下关于M1芯片 MacBook Pro/Air 软件兼容性如何!1.苹果自家的软件都是原生A...阅读全文

简书 2020-11-23 12:32:39 88的阿裔

后端学习之路

如何学习编程-后端篇? v:ititit111222333 Java架构师体系课:跟随千万级项目从0到100全过程高效成长 Laravel重构企业级电商项目 新RabbitMQ精讲,提升工程实践能力,培养架构思维 SpringCloud分布式微服务实战,养成应对复杂业务的综合技术能力 Java实操避坑指南业务代码-整合框架-存储-缓存常见错误详解 基于SpringCloud+Kubernetes,微服务的容器化持续交付实战 SpringCloud+Vertx+Disruptor金融业撮合交易系统...阅读全文

简书 2020-11-23 12:32:38 ititit111222333

Go语言快速入门笔记(番外篇二)

本篇开始相当于go语言的面象对象部分,官方说,yes or no,可是可不是1:给结构体添加行为方法时,传指针可以不复制数据 func (s Student) String() string func (s *Student) String1() string 2.Go倡导更小的接口,很多接口只包含一个方法,大接口可以由多个小接口组成3.os.exit不会调用defer函数,panic会调用defer4.如果不想panic导致程序失败,打印信息,可以使用recoverdefer func() {...阅读全文

Segmentfault 2020-11-24 02:32:37 彩笔梳子

型模式

6.1. 模式动机 原型模式用于创建重复的对象。当一个类在创建时开销比较大时(比如大量数据准备,数据库连接),我们可以缓存该对象,当下一次调用时,返回该对象的克隆。 6.2. 模式定义 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。通过实现克隆clone()操作,快速的生成和原型对象一样的实例。 6.3. 代码分析 package prototype //Cloneable 是原型对象需要实现的接口 type Cloneable interface { Clone() Clon...阅读全文

简书 2020-11-23 10:32:40 nodeadbird

Golang学习-第一篇 Golang的简单介绍及Windows环境下安装、部署

序言这是本人简书第一篇文章,写的不到位之处,希望各位看客们谅解。本人一直从事.NET的开发工作,最近在学习Golang,所以想着之前学习的过程中都没怎么好好的将学习过程记录下来。深感惋惜!现在将Golang的学习点滴记录分享,废话到此,下面进入正文。注:此文及以后所有内容中的开发平台为:Windows开发工具为:JetBrains Gogland x64版本官方下载地址为:www.jetbrains.com/go/download/#section=windowsGolang版本为:Go1.8....阅读全文

简书 2020-11-23 08:32:39 赢阡

03. 从零开始学Go语言:五种变量创建的方法

对于只有 Python 语言经验的朋友,也许会不太理解声明这个过程,在 Python 中直接拿来就用,也不用声明类型啥的。Go 语言是静态类型语言,由于编译时,编译器会检查变量的类型,所以要求所有的变量都要有明确的类型。变量在使用前,需要先声明。声明了类型,就约定了你这个变量只能赋该类型的值。声明一般有以下五种方法,其中前面两种同样也可用于定义常量,只需把关键字 var 变成 const 即可。第一种 :一行声明一个变量var <name> <type>其中 var 是关键字(固定不变),nam...阅读全文

51CTO博客 2020-11-20 20:05:27 py编程时光

02. 从零开始学Go语言:VS Code环境的搭建

在上一篇文章里,讲了如何搭建 Go的开发环境,其中使用的是 Goland 这个IDE,不用像 VS Code 去搞各种配置,装各种插件,省了很多力气。说实在的,我不习惯使用 VS Code,打开的次数真的很少很少,尽管很多人觉得它真的好用。昨天的评论区里还有人求 VS Code 的教程,想到仍然有很多使用 VS Code 做开发。就有了这篇文章。由于白天比较忙,导致晚上8点才有时间写这篇文章,错过了每天的发文时间(19:00),不过好在还是搞完了。晚上我也折腾了一下,对比 Goland 不是一般...阅读全文

51CTO博客 2020-11-20 20:06:50 py编程时光

Go语言标准库

Go语言标准库archive tar tar包实现了tar格式压缩文件的存取. zip zip包提供了zip档案文件的读写服务.bufio bufio 包实现了带缓存的I/O操作.builtin builtin 包为Go的预声明标识符提供了文档.bytes bytes包实现了操作[]byte的常用函数.compress bzip2 bzip2包实现bzip2的解压缩. flate flate包实现了deflate压缩数据格式,参见RFC 1951. gzip gzip包实现了gzip格式压缩文件...阅读全文

Segmentfault 2020-11-24 02:32:37 摘下满天星

用 React.js+Egg.js 造轮子 全栈开发旅游电商应用

​用 React.js+Egg.js 造轮子 全栈开发旅游电商应用能造好轮子,是对技术深度理解+灵活应用能力的表现;全栈开发,是全局性思维+综合解决能力的代名词。如果,你既能造好用的轮子,又能进行全栈开发,那绝对是企业“急需”的“高薪”人才。 本课程将带你在解锁 React.js 和 Egg.js 的高阶玩法的同时,完成轮子的构建过程,再用造好的轮子开发一个全栈项目。你将在掌握全栈技能的同时,获取如何拆解复杂业务、如何造好轮子、如何优化性能等诸多“高手”必备的实用技能。适合人群符合技术储备要求的...阅读全文

Go语言中文网 2020-11-22 17:10:53 anyingjingling

服务器不允许上网并且需要跳板机才能访问?学会使用这个工具,轻松让服务器使用yum。

前言你是否遇到过这样的场景,服务器不能上网,但是又需要安装某个软件,面对如蛛网般杂乱的rpm包依赖关系,放弃或许是最好的选择,这样你就不必再为无法完成工作而痛苦又懊恼。但是今天,你有了一个更好的选择。4DNAT4DNAT取名源自4和DNAT。这个工具工作在OSI模型的第四层传输层,同时4和for谐音,意为专门为目标地址转换而服务的工具。4DNAT使用go语言开发,具有天然的跨平台性,并且完全使用go标准库开发,没有任何的第三方依赖,编译之后只有一个二进制可执行文件。它有4种工作模式:转发模式接受...阅读全文

Segmentfault 2020-11-24 02:32:36 我在对面的角落

Go 学习笔记 04 | 数组、切片

一、数组 数组长度指定之后,不可修改。[...] 会自行推断数组长度。 var arr = [...]int{1,2,4} 指定索引值来初始化数组。 arr := [...]int{0: 1, 1: 10, 2: 20, 5: 50} 输出: [1 20 20 0 0 50] 基本数据类型和数组都是值类型,& 是引用类型。 二、切片 Golang 中申明切片之后,切片默认值就是 nil。 len() 取长度,cap() 求切片的容量。 定义切片的时候,把数组长度去掉。 var arr []int...阅读全文