《7天以太坊源码解读》— 第一天,前言、环境准备及启动

欢迎阅读《7天以太坊源码解读》系列。 >> 前言 今天是农历大年30,我本人2019年春节放假的第一天,我在杭州比特币中国上班。最近新型冠状病毒肆掠,导致很多在外工作的年轻人无法正常回家,我就是其中一个,我是湖北人,本是昨天回家的高铁(途径武汉),因为武汉市的情况,武汉市实行出入管控,所以我取消了行程,准备在杭州过完这个春节。7天假,今天是第一天假期,思考了一番,7天不能就这样潦草度过,需要做一些有意义的事情,所以有了这个《7天以太坊源码解读》系列教程,希望能帮助很多朋友了解以太坊的工作原理,以...阅读全文

简书 2020-01-25 03:32:44 pefish

Tinder迁移至Kubernetes之路

Why 大约两年前,Tinder决定将其平台移至Kubernetes。 Kubernetes为我们提供了一个通过不变的部署推动Tinder Engineering朝着容器化和少运维的方向发展的机遇。应用程序的构建,部署和基础结构将定义为代码。 我们还希望解决规模和稳定性方面的挑战。当扩展变得至关重要时,我们常常要等待几分钟才能等待新的EC2实例上线。容器在数秒而不是数分钟内调度和服务流量的想法吸引了我们。 这并不容易。在2019年初的迁移过程中,我们在Kubernetes集群中达到了临界规模,并...阅读全文

Segmentfault 2020-01-29 14:32:32 iyacontrol

TypeScript基础学习(彬哥整理)

TypeScript基础学习(彬哥整理) http://www.byteedu.com/thread-1172-1-1.html (出处: www.ByteEdu.Com) 社区交流群:221273219 Golang语言社区论坛 : www.Golang.Ltd LollipopGo游戏服务器地址: https://github.com/Golangltd/LollipopGo 社区视频课程课件GIT地址: https://github.com/Golangltd/codeclass Gola...阅读全文

简书 2020-01-23 16:32:41 Golang语言社区

用一个生产与消费例子学习go语言中goroutine,channel,select,time

近最学习了一下Go语言的 goroutine(协程),channel(通道),select,time等相关的知识,这里我通过一个例子来说一下对它们的理解与使用。 先来看一个异步任务生产与消费的例子,最后再去细看一些理论知识,这对于一个新手来说可能会更容易理解。 ## 一、队列生产与消费的例子 这里使用2个goroutine往n大小的通道中模拟任务生产。select中的case哪个可以读取则打印出数据,每隔5秒我们来看一下生产的消息还有多少没有被打印过。 ```golang ...阅读全文

Go语言中文网 2020-01-23 12:38:02 duzhenxun

golang 开源后台管理系统

go-admin go-admin是一个go语言开发的后台管理系统,该系统以角色为基础的权限管理设计(RBAC),完成了系统管理模块功能的开发(其他示例模块后续加上),采用前后端分离实现方式,服务端基于go开源gin框架,前端开源框架vue-element-admin。 设计原则 采用比较流行开源框架gin、vue-element-admin,这些项目维护和更新比较好。 尽量少修改vue-element-admin框架的代码,便于以后升级。 前后端分离,前后端可以独立开发互不影响。 走神了,忘了...阅读全文

Segmentfault 2020-01-29 13:32:33 guyan0319

java程序员的kotlin课(一):环境搭建

kotlin 出来也有些年头了,对于服务端的java程序员来讲,好多人对此并不感冒;这么多年出来的新语言多了,都说要怎么怎么样,到头来还是java稳。笔者也曾经持有这种看法,而且刚刚听说kotlin的时候,我正痴迷于学golang;所以接入kotlin的时间比一般人晚了许多。 但最近狠下心花了些时间学了一下kotlin,并强迫自己所有需要写java代码的地方都采用kotlin来做,越来越发现不想转回去写java了,这种感觉很像最开始从eclipse转到idea的时候,刚开始有点抗拒,各种快捷键也...阅读全文

简书 2020-01-23 06:32:41 青_雉

异步编程四:协程

书接上回,我们一起体验了reactor模式,也了解到了其解决什么场景下的问题。 我们将一同感受一下协程的魅力,基于本系列文章最开始的例子 a + ((b -c)+ d) -e -f + g, 本文将使用协程的方式来实现,并与之前的实现方式进行对比。 Kotlin协程解决方案 本节依然基于vertx,同时利用kotlin的协程,来实现 a + ((b -c)+ d) -e -f + g 。 需要读者对vertx和kotlin有一定了解,准备工作可以阅读 [vertx-lang-kotlin-cor...阅读全文

简书 2020-01-23 06:32:40 青_雉

2019年下半年阅读

19年写了5本书。《R语言数据挖掘》,《R语言数据分析案例》,《R语言数据探索与数据可视化》,《python数据挖掘》,《golang入门到实战》所以看了市面上我所写书相关主题的书,基本上都看了,这一部分就不罗列。其他值得一说的书罗列一下。《逻辑哲学论》维特根斯坦维特根斯坦对于语言的理解,我蛮赞同的。他说所有的哲学问题都是语言的误用。这句话不一定对,但是有一定道理。语言只是一个描述世界的工具,并不是世界。有一个词语,叫做文过饰非,就是说语言被我们玩坏了,人们分不清所说的和事实了。维特根斯坦很尖锐...阅读全文

【代码篇】从零开始一步步搭建自己的golang框架(五)

上篇文章讲到数据库和redis连接的初始化已经完成,接下这篇文章会比较重要一点,我们要启动一个http服务和一个rpc服务,同时抽象出一层数据处理层来封装接口。 开启http服务 老规矩,先添加配置,顺便把rpc的配置也写进去,config.json: "http_config": { "addr": ":8080" }, "rpc_config": { "addr": ":8081" } config.go: type HttpConfig struct { Addr string `json...阅读全文

51CTO博客 2020-01-22 11:39:11 wx5e1abbbb0a5e5

6. 基本数据类型的相互转换

golang属于静态强类型语言. 静态语言是指变量使用前必须声明变量的类型,一旦声明了就必须严格遵守声明的类型,不能再进行修改. 强类型语言是不同类型的变量相互操作的时候需要显示转换.而弱类型语言可以自动隐式转换. 一,数值之间的转换 基本语法: 表达式T(v)将值v转换成类型T * T就是数据类型,比如int32, int64, float32等 * v就是要转换的值 基本数据类型转换需要注意的事项 golang中,数据类型的转换可以从范围小的-->范围大的,也可以从大到小 被转换的是转换表达...阅读全文

简书 2020-01-22 20:32:52 瓦灯_c6f0

3. golang的变量整体介绍以及分类

[toc] 任何高级语言,变量都是程序最基本的组成单位. golang中的变量相当于给内存中一个数据的存储空间打一个记号,以后利用这个记号就可以很容易的找到这个存储空间里存放的数据. 一, 变量的基础知识 变量表示内存中一个存储空间 该存储空间的名称就是变量名 申请变量就是申请一个内存的存储空间 申请变量也就是申请内存的存储空间,申请的时候应该指名该存储空间的名称(变量名)以及该存储空间是用来存放什么数据类型(变量的数据类型)的,因为不同的数据类型需要的内存大小不一样,比如申请一个8位的整数的存...阅读全文

简书 2020-01-22 17:32:45 瓦灯_c6f0

4. golang的整数和浮点数以及bool类型

一, 整数 整数,就是存放整数值的,如0, -1, 800等 整数的类型: 类型 有无符号 占用存储空间 值范围 备注 int8 有 1字节 -2^7 ~ 2^-1 int16 有 2字节 -2^15 ~ 2^15 -1 int32 有 4字节 -2^31 ~ 2^31 -1 int64 有 8字节 -2^63 ~ 2^63 -1 uint8 无 1字节 0 ~ 2^8 - 1 uint16 无 2字节 0 ~ 2^16 - 1 uint32 无 4字节 0 ~ 2^32 - 1 uint64 ...阅读全文

简书 2020-01-22 17:32:44 瓦灯_c6f0

5. golang的字符类型和字符串

一, 字符类型 golang中没有专门的字符类型,存放单个ascii字符,一般用byte保存,单个汉字一般用int来保存.字符类型一般用单''包起来,""是字符串. 字符类型的使用要点: 字符类型一般用单''包起来,因为""是字符串. 声明赋值语句里如果不指名类型,默认是int类型 字符的本质是整数,直接用println输出,是输出相对应的编码值 如果想输出相应字符,用printf("字符是%c, 字符对应的码值是%d") image.png 可以使用转义字符''来将特殊字符转义成特殊字符常量,...阅读全文

简书 2020-01-22 17:32:43 瓦灯_c6f0

【代码篇】从零开始一步步搭建自己的golang框架(五)

上篇文章讲到数据库和redis连接的初始化已经完成,接下这篇文章会比较重要一点,我们要启动一个http服务和一个rpc服务,同时抽象出一层数据处理层来封装接口。 开启http服务 老规矩,先添加配置,顺便把rpc的配置也写进去,config.json: "http_config": { "addr": ":8080" }, "rpc_config": { "addr": ":8081" } config.go: type HttpConfig struct { Addr string `json...阅读全文

简书 2020-01-22 13:32:42 onepunchgo

2.通过hello,world程序展示go的入门基础知识

一, 需求 开发一个hello.go程序,输出"hello, world" 二, go语言的注释 1. 注释的意义 用于注解说明解释程序的文字就是注释,注释提高了代码的阅读性;注释是一个程序员必须要具有的良好编程习惯。将自己的思想通过注释先整理出来,再用代码去体现. 编译器编译时会忽略注释文字.因为注释是给人看的. 2. 注释的分类 行注释: 在要注释的文字前边加上//, 此行内// 之后的文字都是注释文字. 块注释, 也叫多行注释 语法: /* 注释的 内容 */ 建议使用行注释,尽量不用块注...阅读全文

简书 2020-01-22 13:32:42 瓦灯_c6f0

【Binance AMA】Cocos-BCX 年终回顾展望2020

Binance:现在AMA活动正式开始,我们首先请到 Cocos-BCX 团队发起人陈昊芝先生。欢迎陈总!陈昊芝:感谢主持人 Doris,大家好,我是 Cocos-BCX 发起人陈昊芝。Binance:再次欢迎陈总~我们请陈昊芝先生先对 Cocos-BCX 项目做个介绍。陈昊芝:大家好,我是 Cocos-BCX 发起人陈昊芝。Cocos-BCX 下一代游戏数字经济平台,目标是打造一个完整的多平台游戏运行环境,即为区块链游戏开发者提供开发过程中的便利性和完善性,同时也为区块链游戏用户带来全新的游戏...阅读全文

简书 2020-01-22 13:32:41 CocosBCX

Go Web 编程之 数据库

概述 数据库用来存储数据。只要不是玩具项目,每个项目都需要用到数据库。现在用的最多的还是 MySQL,PostgreSQL的使用也在快速增长中。 在 Web 开发中,数据库也是必须的。本文将介绍如何在 Go 语言中操作数据库,基于 MySQL。本文假定大家已经掌握了数据库和 MySQL 的基础知识。 关于 MySQL 有一个非常详细的免费教程我放在参考中了,需要的自取。 Go 语言标准库database/sql只是提供了一组查询和操作数据库的接口,没有提供任何实现。在 Go 中操作数据库只能使用...阅读全文

掘金 2020年01月22日 darjun

YurunHttp v3.5.0 & v4.0.0 发布,新增支持并发批量请求

YurunHttp 是开源的 PHP HTTP 类库,支持链式操作,简单易用。 支持所有常见的 GET、POST、PUT、DELETE、UPDATE 等请求方式,支持 Http2、WebSocket、浏览器级别 Cookies 管理、上传下载、设置和读取 header、Cookie、请求参数、失败重试、限速、代理、证书等。 git 仓库中 examples 目录里是示例代码! 鉴于功能需要,实际的 PHP 版本使用情况,现将 v3.5.0 的 PHP 版本提升为 5.5,v4.0.0 的 PHP...阅读全文

Segmentfault 2020-01-29 13:32:33 宇润

Go Web 编程之 数据库

概述 数据库用来存储数据。只要不是玩具项目,每个项目都需要用到数据库。现在用的最多的还是 MySQL,PostgreSQL的使用也在快速增长中。 在 Web 开发中,数据库也是必须的。本文将介绍如何在 Go 语言中操作数据库,基于 MySQL。本文假定大家已经掌握了数据库和 MySQL 的基础知识。 关于 MySQL 有一个非常详细的免费教程我放在参考中了,需要的自取。 Go 语言标准库database/sql只是提供了一组查询和操作数据库的接口,没有提供任何实现。在 Go 中操作数据库只能使用...阅读全文

简书 2020-01-22 09:32:42 darjun

第13章 3-性能分析

这章比较有意思,多扩展学一些 原文讲的没这么详细, 在google找到了一篇相对比较全的文章 https://cizixs.com/2017/09/11/profiling-golang-program/ 1、 离线应用程序搜集 原理: 引入runtime/pprof 包, 然后在程序运行期间调用写入数据 package main import ( "fmt" "os" "runtime/pprof" ) func main() { f1, _ := os.Create("/Users/liji...阅读全文

简书 2020-01-22 09:32:40 yezide