Go语言中文网 为您找到相关结果 191

Angular 2

一年前写的文字,当时还在 偶数科技实习。记录了技术栈和学习过程。 由于我司老板钦定了前端使用Bootstrap、Angular,后端使用GoLang。我们也只好硬着头皮上。GoLang半个月前刚了解大概,就直接上马写了Monitor process和RESTful service。前几天jQuery和Bootstrap也才大概了解。就剩下Angular这个框架让人很疑惑。最开始我是跟着官网的教程一步一步来的,大概只跟了一个section就放弃了。代码编译错误不知道怎么解决,quickstart一点也不for beginner。后来Eason又找了一些AngularJS和Angular的教程,Angular JS由于是快要淘汰的产品,我就没有看,那个Angular的教程又太老了,与现在的技术落...阅读全文

博文 2018-12-25 21:34:42 SaltSoup

《Java异步编程实战》隆重上市!!!

0.1为何写作本书 异步编程是可以让程序并行运行的一种手段,其可以让程序中的一个工作单元与主应用程序线程分开独立运行,使用它有许多好处,例如可以提高应用程序的性能和响应能力。 虽然Java中不同技术域提供了相应的异步编程技术,但是对异步编程技术的描述散落到了不同技术域的技术文档中,并没有一个统一的地方对这些技术进行梳理归纳。另外这些技术之间是什么关系,各自的出现都是为了解决什么问题,我们也很难找到资料来解释。 本书的出现则是为了打破这种局面,本书旨在把Java中相关的异步编程技术进行归纳分类总结,然后呈现给大家,让大家可以有一个统一的地方来查看与探究。 0.2本书特色 本书涵盖了Java中常见的异步编程场景,这包含单JVM内的异步编程、以及跨主机通过网络通讯的远程过程调用的异步调用与异步处理...阅读全文

博文 2019-12-23 01:32:55 阿里加多

Ethereum学习笔记3--以太坊用到的加密技术

一 加密技术总结 "crypto/ecdsa":用与数字签名 "golang.org/x/crypto/sha3" "crypto/rand" "github.com/ethereum/go-ethereum/crypto/bn256/google" "github.com/ethereum/go-ethereum/crypto/bn256/cloudflare" "crypto/elliptic" "github.com/ethereum/go-ethereum/crypto/secp256k1" "crypto/pbkdf2" "crypto/aes" "crypto/cipher" "crypto/hmac "crypto/subtle" "crypto/cipher" "crypto...阅读全文

博文 2019-08-02 21:32:38 陈兴强

golang 类型本质

在声明一个新类型之后,声明一个该类型的方法之前需要先回答一个问题:这个类型的本质是什么。如果这个类型增加或者删除某个值,是要创建新值还是要更改当前的值?如果是要创建一个新值,该类型的方法就是使用值传递者。如果是修改当前的值就使用指针接受者这个答案会影响程序内部传递这个类型的值得方式:是按照值传递还是按照指针传递。保持传递的一致性很重要。这个背后的原则是,不要只关注某个地方是如何处理的这个值,而是要关注这个值得(本质是什么)?。5.3.1内置类型内置类型是由语言提供的一组类型。我们已经见过这些类型,分别是数值类型,字符串类型和布尔类型。这些类型本质上都是(原始的类型)?。因此党对这些值进行增加或者删除的时候,会创建一个新的值。基于这个结论把这些类型的值传递给方法或者函数时,应该传递一个(对应的...阅读全文

博文 2017-07-06 08:07:20 我是不是小明

Golang 1.14 发布 | 云原生生态周报 Vol. 39

作者 | 陈俊、何淋波、李鹏、宋净超 业界要闻 Golang 1.14 发布 Golang Release 了 1.14 版本。该版本包含生产级别 go module,改进 defer 性能,以及 Goroutine 抢占等功能。 Cilium 1.7 版本发布 Cilium 是一款开源软件,负责以透明方式提供并保护由 Linux 容器管理平台(例如 Kubernetes)部署完成的各应用程序服务间的网络与 API 连接。 Contributor Summit Amsterdam Schedule Announced 去阿姆斯特丹 KubeCon 的同学,不要忘记注册这个难得的开发者聚会。 KubeCon + CloudNativeCon China 2020 议题提交即将结束 将于中国时间...阅读全文

博文 2020-02-28 18:32:42 阿里巴巴云原生

k8s使用Job执行任务失败了怎么办

Kubernetes 中使用 Job 和 CronJob 两个资源分别提供了一次性任务和定时任务的特性,这两种对象也使用控制器模型来实现资源的管理,我们在这篇文章来介绍Job执行如果失败了会怎么样呢? 修改job-fail.yaml,故意引入一个错误: Never 如果将 restartPolicy 设置为 Never 会怎么样?下面我们实践一下,修改job-fail.yaml后重新启动。 运行 Job 并查看状态,可以看到Never策略的job,pod失败后,重新创建: 直到重新创建7个(spec.backoffLimit默认为6,即重试6次,共7个pod)pod都失败后,认为失败,job的status里会更新为Failed 当前 Completion 的数量为 0 查看 Pod 的状态:...阅读全文

博文 2019-10-16 10:33:20 小碗汤

软件技术-零基础Golang编写文件服务器

欢迎关注我的专栏( つ•̀ω•́)つ【人工智能通识】 当用户请求一个网页的时候,如何让服务器把网页文件发送给用户? 文件服务器 首先我们要知道,用户在浏览器中看到的页面其实就是一个.html文件,就是我们上一篇文章时候撰写的...代码。 但我们最初用Golang写的服务器只是简单返回Hello world!字符串,而不是文件。所以,正确的做法是: 让Golang读取硬盘上的文件内容,然后发送给用户。 这就是文件服务器要干的事情,你要login.html页面,我就给你login.html文件。 在Golang里面,已经提供了快速建立文件服务的功能,就是http.FileServer方法,但是首先要知道我们的web文件夹放在哪里。 获取当前文件路径 在Gola...阅读全文

博文 2019-03-27 02:34:38 zhyuzh3d

BDEX知识科普之跨链的本质

本文引自《VNTChain研究院》 跨链的本质是什么? 跨链的实现是一个较为复杂的过程,目前主流的跨链技术包括:公证人模式(主要包括中心化公证人机制和多重签名公证人机制)、侧链(Sidechains)/中继(Relays)模式、哈希锁定模式,对此已有许多文章及报告进行了详细讲解,就不再和大家赘述。接下来我想着重与大家探讨跨链的本质。 1.跨链类型 从跨越的区域范围,可以分为链内跨链与链外跨链。链内跨链,即指同一区块链底层基础平台,通过跨链技术实现平台内的联盟链与联盟链、公有链与联盟链的优势融合,从而实现价值流转与信息交互,满足商业场景需求。链外跨链则是基于不同区块链底层基础平台进行跨链交互。从跨越的区块链底层基础平台类型,可以分为同构链跨链与异构链跨链。同构链通指采用同一底层协议(包括安全机...阅读全文

博文 2019-09-05 15:32:58 逗币狗

ElasticSearch5.x 删除数据

以下测试在elasticsearch5.6.10版本。 首先要说明的是ElasticSearch从2.x开始就已经不支持删除一个type了,所以使用delete命令想要尝试删除一个type的时候会出现如下错误: No handler found for uri [/dating_profile/zhenai/] and method [DELETE] 测试 假如存在一个名为dating_profile的index和zhenai的type: curl -XDELETE http://192.168.1.102:9200/dating_profile/zhenai 执行后报错如下: 所以现在如果想要删除type有两种选择: 1、重新设置index。 2、删除type下的所有数据。 如果重新设置i...阅读全文

博文 2019-10-18 10:02:52 小碗汤

用Go构建区块链——1.基本原型

本篇开始进入"用Go构建区块链"系列,主要对原文进行翻译。本篇对应原文如下: Building Blockchain in Go. Part 1: Basic Prototype 话不多说,开始进入正文。 1、介绍 区块链是21世纪最具革命性的技术之一,它仍在逐步发展中,并且其潜力还未被充分认识。本质上,区块链只是一个分布式数据库而已。但是,它的独特之处在于它不是一个私有的数据库,而是一个公共的,即每个使用它的人都拥有它的全部或部分副本。只有得到其他数据库管理员的同意,新的记录才能被加入。正因为由此区块链,才使得加密货币和智能合约成为可能。 在本系列文章中,我们将构建一个基于简单区块链实现的简单加密货币。 2、区块 我们从"区块链"的"区块"部分开始。在区块链中,它存储有价值的信息。例如,比...阅读全文

博文 2019-03-01 14:34:45 我是李小胖

如何批量删除k8s资源对象

本文首发于公众号【我的小碗汤】扫描文末二维码关注,一起交流学习 在云平台开发、中间件容器化时,经常会遇到批量删除k8s资源对象的需求,下面记录一下kubectl和golang发送删除pvc、pv、pod请求的例子,便于后续学习查阅 kubectl发送删除请求 根据label批量删除pod: kubectl delete pod -n kube-system -l "harmonycloud.cn/statefulset=redis-ll-1010-a" (/img/2019-10-10-batch-delet-k8s-resources/batch-delete-pods.png)] 根据label批量删除pvc: kubectl delete pvc -n kube-system -l "...阅读全文

博文 2019-10-16 10:33:27 aside section ._1OhGeD

云服务器使用docker搭建服务

前提:亚马逊云已经配置好启动。 安全组入站策略如下: 出站策略如下: 登陆EC2后,默认只能用ec2-user用户登陆,然后切换到root: sudo su 用yum执行安装docker提示No package docker avaible yum install docker -y 解决方法:在/etc/yum.repos.d/下加CentOS7-Base-163.repo文件: vi CentOS7-Base-163.repo # CentOS-Base.repo # # The mirror system uses the connecting IP address of the client and the # update status of each mirror to pick...阅读全文

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-12 15:49:11 kxg3030

FreeWheel招Lead/Senior大数据开发与分析工程师

Lead/Senior Software Engineer【职责描述】-面向客户的数据产品开发,测试,部署、监控,涵盖实时报表和离线报表等不同类型的数据产品;-紧密配合产品经理,理解业务需求,梳理业务流程,针对不同业务需要和应用场景,制定合理的系统架构以及实现方式,可以独立完成技术解决方案;-周期性产品迭代,持续改进现有产品,包括业务流程和系统架构,与基础架构部门配合,解决技术难题与性能瓶颈。【任职要求】-本科及其以上学历,三年以上大数据生态圈工作经验,二年以上数据产品实践经验;熟练掌握数据产品相关设计原理,对数据产品设计、交互、系统架构有深入的见解;-熟悉Spark/MapReduce/HBase/Presto等开源大数据技术,有多种业务场景下的实践经验;-有数据仓库建模、数据平台搭建、E...阅读全文

博文 2019-10-29 18:32:48 aside section._1OhGeD

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-09 12:09:07 kxg3030

Go语言可能会遇到的坑

最近在用go开发项目的过程中突然发现一个坑,尤其是对于其它传统语言转来的人来说一不注意就掉坑里了,话不多说,咱看代码: //writeToCSV func writeESDateToCSV(totalValues chan []string) { f, err := os.Create("t_data_from_es.csv") defer f.Close() if err != nil { panic(err) } w := csv.NewWriter(f) w.Write(columns) for { select { case row := <- totalValues: //fmt.Printf("Write Count:%d log:%s\n",i, row) w.Write(ro...阅读全文

博文 2019-10-18 01:32:49 aside section ._1OhGeD

FreeWheel招Lead/Senior大数据开发与分析工程师

Lead/Senior Software Engineer【职责描述】-面向客户的数据产品开发,测试,部署、监控,涵盖实时报表和离线报表等不同类型的数据产品;-紧密配合产品经理,理解业务需求,梳理业务流程,针对不同业务需要和应用场景,制定合理的系统架构以及实现方式,可以独立完成技术解决方案;-周期性产品迭代,持续改进现有产品,包括业务流程和系统架构,与基础架构部门配合,解决技术难题与性能瓶颈。【任职要求】-本科及其以上学历,三年以上大数据生态圈工作经验,二年以上数据产品实践经验;-熟练掌握数据产品相关设计原理,对数据产品设计、交互、系统架构有深入的见解;-熟悉Spark/MapReduce/HBase/Presto等开源大数据技术,有多种业务场景下的实践经验;-有数据仓库建模、数据平台搭建、...阅读全文

博文 2019-10-29 21:33:01 aside section._1OhGeD

Gitee + 区块链:基于 IPFS 的去中心化代码托管环境探索

Gitee 团队一直在探索去中心化的存储技术,甚至是建立于区块链上的完全去中心化的存储,以为开发者提供更安全、稳定的代码托管环境,为此我们一直在跟踪和研究两大核心技术问题,一是去中心化的底层存储技术,二是适用的高效共识算法。一、去中心化的底层存储协议在底层存储协议方面, Gitee 团队深入研究了 IPFS 协议,同时在探索 IPFS 协议作为底层存储技术在实现去中心化代码托管的落地可行性和优缺点。IPFS(InterPlanetary File System – 星际文件系统)是一个基于内容哈希寻址的点对点的超媒体分发协议,2014 年开始由 Protocol labs在开源社区下推动发展,目前已经提供了基于 Golang 的开源实现(详情请访问:https://github.com/ip...阅读全文

博文 2019-10-31 17:32:53 aside section._1OhGeD

软件技术-零基础编写响应式登录页面

欢迎关注我的专栏( つ•̀ω•́)つ【人工智能通识】 让网页自动适应电脑、手机等不同屏幕宽度,一套代码多重效果。 上一篇文章:软件技术-零基础Golang编写文件服务器 页面基础 我们改进login.html文件,使用Go Live按钮启动实时预览。 可能需要从Preference-Settings修改"liveServer.settings.root":"/web/",使适合你的$GOPATH下的web文件夹路径。 修改代码为: 阅读全文

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入!

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-04 14:44:01 kxg3030

用go语言爬取珍爱网 | 第一回

image 我们来用go语言爬取“珍爱网”用户信息。 首先分析到请求url为: http://www.zhenai.com/zhenghun image 接下来用go请求该url,代码如下: package main import ( "fmt" "io/ioutil" "net/http" ) func main() { //返送请求获取返回结果 resp, err := http.Get("http://www.zhenai.com/zhenghun") if err != nil { panic(fmt.Errorf("Error: http Get, err is %v\n", err)) } //关闭response body defer resp.Body.Close() if ...阅读全文

博文 2019-10-18 01:32:52 aside section ._1OhGeD

零基础学前端HTML+CSS

课程介绍 网页的本质就是超级文本标记语言HTML,我们这套课程从基础语法入门,讲解了HTML的常用标签,表单,排版等实用技术,同时深入讲解了CSS样式表的使用和如何使用DIV CSS设计网页布局。同时还介绍CSS3.0的新特性,阴影,圆角边框等实用案例。 课时列表 • 课时1:01互联网起源 • 课时2:02HTML概念 • 课时3:03标签 • 课时4:04HTML属性 • 课时5:05HTML固定基本结构 • 课时6:06第一个网页 • 课时7:07工具使用 • 课时8:08标题 • 课时9:09基本标签 • 课时10:10图像IMG标签 • 课时11:11路径概念 • 课时12:12超级链接 •...阅读全文

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-11 10:08:19 kxg3030

面试:从尾到头打印链表

题目:从尾到头打印链表 要求:输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 示例: 输入:head = [1,3,2] 输出:[2,3,1] 限制: 0 <= 链表长度 <= 10000 题解1:递归法 因为是从尾到头返回每一个节点的值,所以很容易想到如果从最后的节点将值放入数组中,然后再往前逐步将数据放入数组,最后回到头节点返回即可,可以想到递归就能轻松做到,只要注意递归函数的结束条件即可。 /** * Definition for singly-linked list. * type ListNode struct { * Val int * Next *ListNode * } */ func reversePrint(head *ListNode) []int...阅读全文

博文 2020-02-28 16:32:40 若鱼治水

爬虫性能分析及优化

前两天我们写了单任务版爬虫爬取了珍爱网用户信息,那么它的性能如何呢? 我们可以通过网络利用率看一下,我们用任务管理器中的性能分析窗口可以看到下载速率大概是保持在了200kbps左右,这可以说是相当慢了。 我们针对来通过分析单任务版爬虫的设计来看下: 从上图我们可以看出,engine将request从任务队列取出来,送到Fetcher取获取资源,等待数据返回,然后将返回的数据送到Parser去解析,等待其返回,把返回的request再加到任务队列里,同时把item打印出来。 慢就慢在了没有充分利用网络资源,其实我们可以同时发送多个Fetcher和Pareser,等待其返回的同时,可以去做其他的处理。这一点利用go的并发语法糖很容易实现。 上图中,Worker是Fetcher和Parser的合并...阅读全文

如何批量删除k8s资源对象

本文首发于公众号【我的小碗汤】扫描文末二维码关注,一起交流学习 在云平台开发、中间件容器化时,经常会遇到批量删除k8s资源对象的需求,下面记录一下kubectl和golang发送删除pvc、pv、pod请求的例子,便于后续学习查阅 kubectl发送删除请求 根据label批量删除pod: kubectl delete pod -n kube-system -l "harmonycloud.cn/statefulset=redis-ll-1010-a" 根据label批量删除pvc: kubectl delete pvc -n kube-system -l "harmonycloud.cn/statefulset=redis-ll-1010-a" 根据label批量删除pv: kubectl...阅读全文

博文 2019-10-16 10:02:43 小碗汤

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-19 09:17:12 kxg3030

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-08 10:18:25 kxg3030

Kafka两级调度实现分布式协调任务分配Golang版

背景基于Kafka消息队列的两级协调调度架构Kafka内部为了协调内部的consumer和kafka connector的工作实现了一个复制协议, 主要工作分为两个步骤:通过worker(consumer或connect)获取自身的topic offset等元数据信息,交给kafka的broker完成Leader/Follower选举worker Leader节点获取到kafka存储的partation和member信息,来进行二级分配,实现结合具体业务的负载均衡分配从功能实现上两级调度,一级调度负责将Leader选举,二级调度则是worker节点完成每个成员的任务的分配主要是学习这种架构设计思想,虽然这种方案场景非常有限基于消息队列实现分布式协调设计一级协调器设计:一级协调器主要是指的Co...阅读全文

博文 2019-05-24 06:35:39 spring太难

零基础学前端HTML+CSS

课程介绍 网页的本质就是超级文本标记语言HTML,我们这套课程从基础语法入门,讲解了HTML的常用标签,表单,排版等实用技术,同时深入讲解了CSS样式表的使用和如何使用DIV CSS设计网页布局。同时还介绍CSS3.0的新特性,阴影,圆角边框等实用案例。 课时列表 • 课时1:01互联网起源 • 课时2:02HTML概念 • 课时3:03标签 • 课时4:04HTML属性 • 课时5:05HTML固定基本结构 • 课时6:06第一个网页 • 课时7:07工具使用 • 课时8:08标题 • 课时9:09基本标签 • 课时10:10图像IMG标签 • 课时11:11路径概念 • 课时12:12超级链接 •...阅读全文

Java设计模式学习记录-模板方法模式

前言模板方法模式,定义一个操作中算法的骨架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定步骤。模板方法模式概念介绍模板方法模式,其实是很好理解的,具体理解为,定义一个操作中算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法结构即可冲定义该算法的某些特定步骤。模板方法模式是最为常见的设计模式之一,是基于继承的代码复用技术。架构师定义一套骨架,开发工程师按照骨架去实现具体的逻辑。举例在具体的项目中其实使用模板方法的场景有很多,就举我之间遇到过的一个场景吧,这是一个实际的项目,结合这个项目的中的场景可以引出模板方法模式的使用方法,在一个审批流程的项目,会有很多种的申请单,例如:出差申请单、请假申请单、采购申请单、付款申请单等等。每个申...阅读全文

博文 2018-10-22 17:19:34 Enjoyjava

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-03 16:43:27 kxg3030

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-04 09:10:11 kxg3030

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-17 15:04:47 kxg3030

软件技术-Golang零基础开发网站服务器

欢迎关注我的专栏( つ•̀ω•́)つ【人工智能通识】 如何开始一个最简单的Golang项目? 请先参照上一篇文章搭建Golang的vsCode开发环境 项目结构 在$GOPATH目录下一般都要有两个文件夹: 存放编译结果的bin, 存放代码文件的src。 而src文件夹又一般会包含两类代码文件 go get和go install安装的别人的代码,根据来源不同分为github.com和golang.org两个文件夹; 自己手写的代码,放在任意名字的文件夹,比如app文件夹。 我们编写的程序肯定要从某个代码文件开始,我们可以在自己的文件夹下创建app.go或者叫main.go都可以。 Hello World 打开app.go撰写下面内容: package main import ( "fmt" ...阅读全文

博文 2019-03-25 02:34:39 zhyuzh3d

利用golang优雅的实现单实例

平时编写代码过程中,经常会遇到对于全局角度只需运行一次的代码,比如全局初始化操作,设计模式中的单例模式。针对单例模式,java中又出现了饿汉模式、懒汉模式,再配合synchronized同步关键字来实现。其目的无非就是将对象只初始化一次,而且最好保证在用到的时候再进行初始化,以避免初始化太早浪费资源,或者两次初始化破坏单例模式的实例唯一性。 Go语言的sync包中提供了一个Once类型来保证全局的唯一性操作,其通过Do(f func())方法来实现,即使 f 函数发生变化,其也不会被执行,下面我们来看一个小例子: package main import ( "fmt" "sync" "time" ) var once sync.Once func main() { //once循环调用fir...阅读全文

博文 2019-10-18 10:02:42 小碗汤

nginx学习之模块

1、 stub_status模块: 用于展示nginx处理连接时的状态。 配置语法如下: Syntax:stub_status; Default:默认没有配置 Context:server、location 可以编辑default.conf,加上如下配置: vim /etc/nginx/conf.d/default.conf 然后检查配置的正确性: #-t 表示检查配置文件;-c表示检查指定的配置文件,默认为/etc/nginx/nginx.conf nginx -t -c /etc/nginx/nginx.conf 这里注意了,虽然修改的是default.conf,但是检查的时候始终还是加载nginx.conf,否则报错: 因为nginx.conf中include了conf.d目录下的所有...阅读全文

博文 2019-10-18 10:02:56 小碗汤

软件技术-零基础-MD5加密处理和自动跳

欢迎关注我的专栏( つ•̀ω•́)つ【人工智能通识】 如何将用户的密码加密之后再存储? MD5 加密的目的是保护用户的隐私,尤其是一些很敏感的密码,原则上这些密码的明文只能出现在用户电脑上,不能在网络上传输,更不能存储在网站服务器上。 MD5是一种不可逆的加密算法,就是说它可以把用户密码变为一串新字符,而原则上没有任何方法可以把这串新字符再变回去找到用户真实的密码。(但没有什么是绝对的,只是相对来说是这样) MD5总是生成32个英文字符和字母混合的字符串。 前端加密 实际上我们只需要在网页端将用户所有输入的密码都处理一下就可以了,不涉及后端服务器程序,因为用户密码到底是什么格式,对于服务器来说都是一样的存储、验证。 需要为前端相关页面register.html,login.html,rese...阅读全文

博文 2019-04-03 20:34:38 zhyuzh3d