Go招聘-伴鱼

伴鱼少儿英语招聘WEB/GO/测试/Android/iOS等研发岗位,无论是刚毕业的还是非常资深的,统统都要哈,福利超级好哦,全额五险一金+商业险,房补1500,餐补800,还有各种小福利,双休,双休,双休,12月入职的研发小伙伴即送iPad/iPhone12,欢迎各位大佬投递简历哈,邮箱:sunanxiang7111@ipalfish.com阅读全文

Go语言中文网 2020-12-09 19:18:06 didadi

基础配置篇:建立项目,为我的博客项目制定目录层次结构

前期准备、构思已经相对比较完善了,我们在构思章节中,已经明确了我们的需求,知道我们的博客他需要有些什么功能,博客的数据库设计、博客的界面设计等信息。也大致了解到了golang的安装配置、基本语法等。这一节内容中,我们将开始进行我们最重要的一步,开始实战学习golang了。目录结构一个清晰明确的目录结构,可以让项目更清晰,更好维护和扩展。目录结构的组织,也是可以灵活变动的。它本身没有一个严格规定的格式。我们只需要做到合适、合理、清晰就可以。下面是我对博客程序设计的目录结构的设计。目录都采用一级目录...阅读全文

Segmentfault 2020-12-12 09:32:34 开发小程序的之朴

如何设计一个亿级网关(API Gateway)?

1.背景 1.1 什么是API网关 API网关可以看做系统与外界联通的入口,我们可以在网关进行处理一些非业务逻辑的逻辑,比如权限验证,监控,缓存,请求路由等等。 1.2 为什么需要API网关 RPC协议转成HTTP。 由于在内部开发中我们都是以RPC协议(thrift or dubbo)去做开发,暴露给内部服务,当外部服务需要使用这个接口的时候往往需要将RPC协议转换成HTTP协议。 请求路由 在我们的系统中由于同一个接口新老两套系统都在使用,我们需要根据请求上下文将请求路由到对应的接口。 统一...阅读全文

简书 2020-12-09 13:32:41 前端三少爷

LeetCode-Golang之【104. 二叉树的最大深度】

给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 题解 /** * Definition for a binary tree node. * type TreeNode struct { * Val int * Left *TreeNode * Right *TreeNode * } */ func maxDepth(root *TreeNode) int { if root == nil { return 0 } return 1 + max(maxD...阅读全文

简书 2020-12-09 13:32:39 StevenChu1125

LeetCode-Golang之【5. 最长回文子串】

给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad" 输出: "bab" 注意: "aba" 也是一个有效答案。 示例 2: 输入: "cbbd" 输出: "bb" 来源:力扣(LeetCode) 题解 func longestPalindrome(s string) string { n :=len(s) dp :=make([][]int,n) for i:=0;i<n;i++{ dp[i] = make([]int,n...阅读全文

简书 2020-12-09 13:32:39 StevenChu1125

比特币经典7问题(贯穿btc区块链全部知识)

问题一:比特币系统转账交易时,对方如果不在线,会出现什么问题? 转账交易时,不需要对方是一定在线的,因为转账只是在区块链系统数记录一下,把当前的账户的比特币转到对方账户上,对方是不是当时在区块链网络里,这个是没有关系的。 问题二:假设谋个全节点接受到了转账交易, 有没有可能转账交易中接受者的收款地址是这个节点以前没有听说过的? 可能,比特币在创建账户的时候,是不需要通知其他人的。在本地产生一个公私钥对就可以了。只有在以后产生的收款地址第一次收到钱的时候,其他节点才知道这个账户的存在。 问题三:如...阅读全文

简书 2020-12-09 13:32:38 刘丹冰Aceld

influxdb 插入数据遇到的坑

参考 partial write: max-values-per-tag limit exceeded 这个问题可能会出现较早的版本,有些版本限定了tag的数目,不能超过10w。过多tag会导致的问题在前面的文章有提到过。这里需要强调的是,不同的存储策略也会导致tag的重复,所以在设计metric的时候就应该考虑清楚适当的存储时间。 partial write: points beyond retention policy dropped=2 比如写入数据的数据库的保存rp是10天,而你批量插入...阅读全文

简书 2020-12-09 13:32:38 王镇_ee87

Go API 开发环境配置

💟以下的文章是管大佬要的学习资料,分享给大家,也当一个记录。原出处,我无从寻找,非常抱歉! ———————————————————————————————————— Go 命令安装 Go 有多种安装方式,比如 Go 源码安装、Go 标准包安装、第三方工具(yum、apt-get 等)安装。本小册 API 运行在 Linux 服务器上,选择通过标准包来安装 Go 编译环境。Go 提供了每个平台打好包的一键安装,这些包默认会安装到如下目录:/usr/local/go。当然你可以改变它们的安装位置,但...阅读全文

简书 2020-12-09 13:32:38 秃头小公主

golang 和 php 的区别

在工作的项目中,我的主要开发语言是php,因需求或者为弥补php的缺陷,需要为php做各种各样的扩展,比如php本身不支持线程,没有队列,进程也不无法用于生产环境, 可以说php没有任何“程”,因而网上有较多的文章阐述如何实现php队列,多线程等等,在我的理解,与其用php本身实现这种无法保证健壮的特性,不如去发掘运用一些本身集成,且表现优异的语言go编程Go也被称为Golang,基本上是一种可用于快速机器代码编译的编程语言。它是由Google创建的。它是一种静态类型的编译语言。它提供了并发机制...阅读全文

简书 2020-12-09 13:32:38 8c0afe979257

基于wasm的openssl实践

上一篇文章分享了WebAssembly概念和基本使用,通过两个代码示例的分析对WebAssembly有了大致的了解。这一篇文章分享的是基于WebAssembly的加密工具实践,我们就以openssl的摘要算法md5和sha1为例,在Mac上编译openSSL到WebAssembly。环境Emscripten 版本 2.0.3Openssl 版本1.1.1d浏览器 版本 85.0.4183.121(正式版本) (64 位)概述在Mac上编译openSSL到WebAssembly遇到的问题总结一、在...阅读全文

Segmentfault 2020-12-11 23:32:32 Netwarps

数据结构与算法系列之散列表(一)(GO)

关于散列表的代码实现及下边实践部分的代码实现均可从我的Github获取(欢迎star^_^)散列思想概念散列表(Hash Table),也可以叫它哈希表或者Hash表散列表用的是数组支持按照下标随机访问数据的特性,所以散列表其实就是数组的一种扩展,由数组演化而来。可以说,如果没有数组,就没有散列表举例假设全校有1000名学生,为了方便记录他们的期末成绩,会给每个学生一个编号,编号从1~1000。现在如果要实现通过编号来找到具体的学生可以把这1000个学生的信息放在数组里。编号为1的学生,放到数组...阅读全文

Segmentfault 2020-12-11 16:32:34 书旅

拓展学习-golang的基础语法和常用开发工具

golang的基础语法golang的基础语法和其他语言大部分都差别不大,如果我们有学习过其他语言,比如JavaScript,php,java,python等,有其他语言的语法基础,那么我们学习golang将更容易上手。那我们直接开始介绍golang的语法吧。注释注释分单行注释和多行注释。golang的注释和其他的开发语言的注释是一样的。双斜杠表示单行注释,/**/表示多行注释。// 单行注释这么开头 /* 多行注释 */定义包名一般来说,使用开发工具的时候,包名是不需要手动输入的,开发工具会在创...阅读全文

Segmentfault 2020-12-11 15:32:34 开发小程序的之朴

思路篇:我的博客可能需应用到的技术选择和整理

我们后端的主要技术是golang。然而,往往一个系统,都不是仅靠一个技术就能完整的实现的,要不就不用叫做系统了。既然我们是要做博客网站,自然网站的相关技术少不了。下面我们来捋一捋具体需要使用到的哪些技术。htmlHTML称为超文本标记语言,是一种标识性的语言。它包括一系列标签.通过这些标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字,图形、动画、声音、表格、链接等。 就是这个意思,我们的博客需要...阅读全文

Segmentfault 2020-12-11 12:32:34 开发小程序的之朴

规则引擎

规则引擎 https://www.yuque.com/yangdakang/kb/bstdgr 规则引擎:大厂营销系统资格设计全解 https://www.infoq.cn/article/kkxmqr5wp7ihfctewdma 开源规则流引擎实践 https://developer.ibm.com/zh/technologies/artificial-intelligence/articles/os-drools/ Drools规则引擎探究以及在IOT的应用 https://www.info...阅读全文

简书 2020-12-08 23:32:40 yunfeichen119

【根据源码学编码一】go的构造函数

在go的项目中,大家编码的时候应该或多或少都看过go的一些源码或者其他开源项目的源码,不知道大家有没有感觉自己写出来的代码相对于源码有一定的差距,不管从结构定义,接口封装等方面总感觉差那么点意思。反正我一直感觉自己的编码相对于go的源码差距较大。既然有这么好的代码在面前,我们如何根据这些源码提取一些供自己学习的内容呢,这次准备根据源码好好学习一下,简单总结如下,如果后续还有心得会逐步更新。最近正好用到的两个开源代码:1、github.com/olivere/elastic/v72、google....阅读全文

Segmentfault 2020-12-11 10:32:35 laughbug

Go语言可能会遇到的坑

Go语言可能会遇到的坑点击蓝字关注 阅读本文大约需要3分钟。最近在用go开发项目的过程中突然发现一个坑,尤其是对于其它传统语言转来的人来说一不注意就掉坑里了,话不多说,咱看代码: 1//writeToCSV 2func writeESDateToCSV(totalValues chan []string) { 3 f, err := os.Create("t_data_from_es.csv") 4 defer f.Close() 5 if err != nil { 6 panic(err) 7...阅读全文

51CTO博客 2020-12-08 20:49:34 mb5fcdf2add9b6a

LeetCode-Golang之【146. LRU 缓存机制】

运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制 。 实现 LRUCache 类: LRUCache(int capacity) 以正整数作为容量 capacity 初始化 LRU 缓存 int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -1 。 void put(int key, int value) 如果关键字已经存在,则变更其数据值;如果关键字不存在,则插入该组「关键字-值」。当缓存容量达到上限时,它应该在写入新数据之...阅读全文

简书 2020-12-08 17:32:47 StevenChu1125

使用PHP的FFI调用cjieba分词的动态库

选用CJieba的原因是FFI使用的是C的调用约定,如果用Cpp,还得自己包装一下,然后extern C,让编译器生成标准C的动态库。碰到的问题段错误C变量没有初始化直接调用了C的函数,没有通过FFI 初始化后的的C对象调用非空判断 需要使用 FFI::isNull($x)指针形式的数组 不能用foreach指针形式数组的循环查看C代码发现Cut部分如下:CJiebaWord* Cut(Jieba handle, const char* sentence, size_t len) {cppjie...阅读全文

简书 2020-12-08 17:32:47 齐鲁建站