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

如何使用hugo搭建个人博客(三):添加follow与修改share的方式

如何使用hugo搭建个人博客(一) 如何使用hugo搭建个人博客? 按照创建步骤有: 1. 在win7上使用hugo,能够本地预览(就是本文了) 2. 修改主题:颜色,字体,布局(后续) 3. 添加follow与修改share的... justheretobe 2016-05-30 00:06 2541 如何使用hugo搭建个人博客(四):添加评论系统disqus 按照官方说法,只需要在config.toml文件中加上disqus的shortname即可让博客拥有disqus评论系统的功能。但折腾许久未能成功,现提供另一种添加disqus的方式。1.注册disq... justheretobe 2016-06-09 17:01 2181 精选:深入理解 Docker 内部原理及网络配置 网络...阅读全文

博文 2017-09-19 06:07:43 justheretobe

使用Go语言一段时间的感受

最近在忙一个Server+Client的项目,Client是Android手机,大概也就是几十的规模。Server是纯Go语言实现,没有apache或者ngix这种web server,也没有数据库,自己写了个文件管理module,处理这种小规模的服务没问题。算下来接触Go语言也有四个多月了,断断续续写了一些东西,这里记录一下心得吧。 先大概说下为什么用Go语言。我是一个对语言有洁癖的人,曾经是一个c+Python的坚定呐喊者,最常说的一句话就是,只要熟练这两种,什么情况都能应付,根本不用Java和C++(纯指我所在的领域)。核心代码用c,速度快,需要记的语言细节少;外围用Python glue,灵活,简洁,任何模块都容易上手,绝配。Java的繁琐,C++的无数无用的特性,都让我只在不得不用...阅读全文

博文 2014-10-28 19:00:00 Mr_Data_Mining

golang 内存池

一般来说,内存池都是采用预分配的方式,分为固定大小的和非固定大小块,固定大小的内存效率高,非固定大小灵活。同时,分为单线程和多线程版的,单线程不需要考虑并发问题。 一般内存池的实现思想:分配一块比较大多内存,把这块内存分成大小相等的块,即固定大小,第一块要保存必要的信息,比如nfirst(第一块可分配到块),nsize(共分配了多少),nfree(可分配块大小),pnext(若是内存池不够,分配一块growth,pnext指向下一块),p(保存第一可分配内存块的地址),同时还需要poolmanage来统一做管理。每一个内存块的头两个字节记录下一个可分配的内存块的地址,因为是固定大小的,所以可以根据p和第几块算出地址。头两个字节分配的好处就是分配之后内存可复用,注意在归还到内存池的时候头两个字...阅读全文

博文 2018-08-20 00:30:01 williamjie

Go 实现的网站链接检查器Muffet

Muffet 是一个 Go 实现的网站链接检查器,可递归地检查网站中的所有页面。 **具有以下特性** 速度快 彩色输出 支持不同的标签(`a`, `img`, `link`, `script`, 等) **安装** **用法示例** [](https://shady.bakery.hotland)通过 `muffet --help` 获取更多帮助信息 **运行效果** ![image](https://static.oschina.net/uploads/space/2018/0425/150129_TPCX_2720166.png...阅读全文

开源项目 2018-04-25 15:30:00 网友

使用Go语言一段时间的感受

作者 openkk 2012-03-04 18:26:58 文/Windstorm 有一段时间没更新了。最近在忙一个 Server+Client 的项目,Client 是 Android 手机,大概也就是几十的规模。Server 是纯 Golang 实现,没有 apache 或者 ngix 这种 web server,也没有数据库,自己写了个文件管理 module,handle 这种小规模的服务没问题。算下来接触 Golang 也有四个多月了,断断续续写了一些东西,这里纪录一下心得吧 先大概说下为什么用 Golang。我是一个对语言有洁癖的人,曾经是一个C+Python 的坚定呐喊者,最常说的一句话就是,只要熟练这两种,什么情况都能应付,根本不用 Java 和 C++(纯指我所在的领域)。核...阅读全文

博文 2014-12-30 22:00:02 u0mo5

大型网站的 HTTPS 实践(四)——协议层以外的实践

1 前言 网上介绍https的文章并不多,更鲜有分享在大型互联网站点部署https的实践经验,我们在考虑部署https时也有重重的疑惑。 本文为大家介绍百度HTTPS的实践和一些权衡, 希望以此抛砖引玉。 本文最早发表于百度运维部官方博客 2 协议层以外的实践工作 2.1 全站覆盖https的理由 很多刚接触https的会思考,我是不是只要站点的主域名换了https就可以?答案是不行。 https的目的就是保证传输过程的安全,如果只有主域名上了https,但是主域名加载的资源,比如js,css,图片没有上https,会怎么样? 从效果上来说,没有达到保证网站传输过程安全的目的,因为你的js,css,图片仍然有被劫持的可能性,如果这些内容被篡改/嗅探了,那么https的意义就失去了。 浏览器在...阅读全文

博文 2015-05-04 11:27:30 luocn99

Socket 网络隧道 qTunnel

qTunnel 是 getqujing.com 使用的安全套接字隧道,是 [Stunnel/stud](http://www.oschina.net/p/stud) 的替代品。qTunnel 使用 Go 编写,为了提高数据传输率,它去掉了认证设置和 SSL 握手。         使用:

$ ./bin/qtunnel -h
Usage of ./bin/qtunnel:
    -backend="127.0.0.1:6400": host:port of the backend
    -clientmode=false: if running at ...阅读全文

p2p通信协议族的结构设计

在上文的介绍中,出现了多处有关p2p通信协议的结构类型,比如eth.peer,p2p.Peer,Server等等。这里不妨对这些p2p通信协议族的结构一并作个总解。以太坊中用到的p2p通信协议族的结构类型,大致可分为三层: 第一层处于pkg eth中,可以直接被eth.Ethereum,eth.ProtocolManager等顶层管理模块使用,在类型声明上也明显考虑了eth.Ethereum的使用特点。典型的有eth.peer{}, eth.peerSet{},其中peerSet是peer的集合类型,而eth.peer代表了远端通信对象和其所有通信操作,它封装更底层的p2p.Peer对象以及读写通道等。 第二层属于pkg p2p,可认为是泛化的p2p通信结构,比较典型的结构类型包括代表远端通...阅读全文

博文 2018-07-16 00:34:45 豆瓣奶茶

TODO:Golang UDP连接简单测试慎用Deadline

TODO:Golang UDP连接简单测试慎用DeadlineUDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,IETF RFC 768是UDP的正式规范。UDP在IP报文的协议号是17。在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。在OSI模型中,在第四层——传输层,处于IP协议的上一层。UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。 1.Golang UDP服务 package main import ( “f...阅读全文

博文 2017-02-10 15:49:47 OneTODO

网站打开速度慢的解决方法

判断一个网站成功与否,可能很多人会首先从网站优化、网站布局、网站内容等方面来判定,但是判定一个网站的好与坏最基本的是网站打开的速度。再完美、再精致的网站,如果当用户访问你网站时,打开速度慢,甚至出现空白页面、打不开等情况,会在用户心中大打折扣,觉得你的网站是个不入流的网站。通过整理研究:用户打开网站,最满意的时间是2-5秒,如果超过10秒以上,98%的用户会选择直接关闭这个网站。前面小编也给大家整理出了网站打开速度慢是什么原因导致,今天给大家分析下网站打开速度慢的解决方法。 1. 测试内在原因还是外在原因导致 当你发现网站打开速度慢的时候,首先要先查明是网站的问题,还是其他因素引起的问题,这里的其他因素指的是: (1) 网络是否正常,可以浏览其他网页检测一下网络情况。 (2...阅读全文

如何指定https在传输数据过程中的加密算法?

最近在学习https,对大概有了个了解,基本都是说先采用RSA进行握手,三次握手后协商出一个对成密钥来进行对成加密,但问题是这个对成加密的算法是什么?我们怎么指定呢,比如指定用AES等等。是在openssl生成证书时配置还是自己在代码里实现阿...阅读全文

hex和base32和base64的区别与联系

基本概念 hex也称为base16,意思是使用16个可见字符来表示一个二进制数组,编码后数据大小将翻倍,因为1个字符需要用2个可见字符来表示。 base32,意思是使用32个可见字符来表示一个二进制数组,编码后数据大小变成原来的8/5,也即5个字符用8个可见字符表示,但是最后如果不足8个字符,将用=来补充。 base64,意思是使用64个可见字符来表示一个二进制数组,编码后数据大小变成原来的4/3,也即3个字符用4个可见字符来表示。 用例 看个例子: package main import "fmt" import "encoding/hex" import "encoding/base32" import "encoding/base64" func main() { s := "hell...阅读全文

博文 2017-08-28 02:35:02 因心而来

Go 语言简介

一.Go发展史 想要了解一门语言,少不了他的发展史。 这里简单的介绍一下其历史年度关键节点。 1.里程碑 Go 也叫 Golang 起源于2007年 2009年首次公开发布 2010年谷歌投入使用 2011年被Google AppEngine支持 2012年正式版Go1 2015年发布Go1.5,移除了“最后残余的C代码” 目前最新版本为Go1.10 不得不说Go是一门很年轻的语言,是一个零零后。 二.Go特点 我们学习一门语言总归是出于各种各样的原因的,他会是各式各样的原因。 那既然现在我有了一个想要了解 Go 的一个意愿,肯定要先知道该语言有那些特色,或者说有那些吸引人的地方的说。 1.效率高 — 图片来自百度 Go 被誉为“21世纪的 C 语言”。 正如 Go 语言的 Logo 这只萌...阅读全文

博文 2018-07-07 12:34:41 SeaConch

使用Go语言一段时间的感受

作者:Windstorm 来源:http://www.kunli.info/2012/03/03/golang-feeling/ 有一段时间没更新了。最近在忙一个Server+Client的项目,Client是Android手机,大概也就是几十的规模。Server是纯Golang实现,没有apache或者ngix这种web server,也没有数据库,自己写了个文件管理module,handle这种小规模的服务没问题。算下来接触Golang也有四个多月了,断断续续写了一些东西,这里纪录一下心得吧 先大概说下为什么用Golang。我是一个对语言有洁癖的人,曾经是一个c+Python的坚定呐喊者,最常说的一句话就是,只要熟练这两种,什么情况都能应付,根本不用Java和C++(纯指我所在的领域)。...阅读全文

博文 2014-10-22 02:00:00 heiyeshuwu

go语言实现markdown解析库

Blackfriday是在Go中实现的Markdown处理器。您可以安全地输入用户提供的数据,速度快,支持通用扩展(表,智能标点符号替换等),并且对于所有utf-8(unicode)都是安全的输入。 ** 文章转自go语言中文文档 [http://www.topgoer.com](http://www.topgoer.com/?from=studygolang "文章转自go语言中文文档http://www.topgoer.com") ** 当前支持HTML输出以及Smartypants扩展。 ### 使用 首先当然要引入: ``` import github.com/russross/blackfriday ``` 然后 ``` output := blackfriday.Markdown...阅读全文

博文 2020-02-03 11:20:07 lu569368

HTTP、TCP、UDP、Socket解读

1、导读 记得上大学时上过《计算机网络基础》专门课,当时真是单纯善良无知,觉得我以后又不搞网络这一块的东西,没必要好好学习计算机网络这们课程,只要考试通过就行了。但是工作后的我发现,不管是我们是不是做软件开发,都会多多少少接触接触到计算机网络,因为计算机网络无处不在。平时生活中我们要接触到路由器,交换机,dns,ping,修改dns等等这些基本的操作,作为软件开发者,我们要接触到tcp、udp、http、tcp连接三次握手,断开四次挥手、socket等等这些专业点的知识,真是这些专业点的知识真是书到用时方恨少啊,接下来我们就好好复习吧。 OSI是Open System Interconnection的缩写,意为开放式系统互联。国际标准化组织(ISO)制定了OSI模型,该模型定义了不同计算机互...阅读全文

网站打开速度慢是什么原因导致

一个网站无论优化、页面布局、各方面搭建多好,如果网站打开速度慢会导致用户流失。是什么原因导致网站打开慢?网站打开慢的原因是什么?网站打开的速度与页面的响应时间,往往是站长们所忽视的,但这个问题是导致用户流失的一个大根源。当用户访问你的网站时,打开网站速度慢或者不能打开,那在用户心里对你网站的印象会大大降低。用户的直观印象会觉得只有不正规的网站才会有这样的现象。如果用户是通过搜索关键字进入你的网站想要需求合作或者帮助,一旦你网站打开速度慢,用户就会直接认为你是一个不入流的公司或者是小公司,对于公司企业网站来讲,网站打开速度很重要。网站打开速度慢的原因有很多,可能是空间问题、网站建设问题、域名解析问题等多方面。如果是新站搭建可以用建站宝盒来进行,可以大大减少网站打开速度慢的问题。今天小编给大家分...阅读全文

udp编程的那些事与golang udp的实践

udp编程的那些事与golang udp的实践 tcp/ip大协议中,tcp编程大家应该比较熟,应用的场景也很多,但是udp在现实中,应用也不少,而在大部分博文中,都很少对udp的编程进行研究,最近研究了一下udp编程,正好做个记录。 sheepbao 2017.06.15 tcp Vs udp tcp和udp都是著名的传输协议,他们都是基于ip协议,都在OSI模型中传输层。tcp我们都很清楚,它提供了可靠的数据传输,而udp我们也知道,它不提供数据传输的可靠性,只是尽力传输。 他们的特性决定了它们很大的不同,tcp提供可靠性传输,有三次握手,4次分手,相当于具有逻辑上的连接,可以知道这个tcp连接的状态,所以我们都说tcp是面向连接的socket,而udp没有握手,没有分手,也不存在逻辑上...阅读全文

博文 2018-01-16 13:31:21 sheepbao

Go 语言使用 net 包实现 Socket 网络编程

友情提示:此篇文章大约需要阅读 10分钟12秒,不足之处请多指教,感谢你的阅读。订阅本站 此文章首发于 Debug客栈 |https://www.debuginn.cn TCP/IP TCP/IP 传输协议,即传输控制/网络协议,也叫作网络通讯协议。它是在网络的使用中的最基本的通信协议。TCP/IP 传输协议对互联网中各部分进行通信的标准和方法进行了规定。并且,TCP/IP 传输协议是保证网络数据信息及时、完整传输的两个重要的协议。TCP/IP 传输协议是严格来说是一个四层的体系结构,应用层、传输层、网络层和数据链路层都包含其中。 TCP/IP 协议簇常见通信协议 应用层:TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 等等 传输层:TCP,UDP 网络层:IP,ICM...阅读全文

博文 2020-05-25 10:32:46 Meng小羽

使用IP地址修改器助力网络推广

简单的说常见的网络推广渠道上主要有四类1.引擎类 google、baidu、yahoo等,主要形式以收费的关键字竞价,和免费的自然排名。 2.行业网站类 每个行业都有行业网站,各种黄页网站和大综合性门户网站也有行业目录,主要是登录,分为手工登录(效果好速度慢,需要专业人员) 自动登录 两种,而且自动登录又有 1登录推广网站(自动帮你登录多个网站目录)。2.推广软件(有些推广软件号称能做所有的事情,其实每个软件能力都是有限的有针对的)将网站推广到所能登录的各类目录(引擎)上。3.电子商务平台如阿里巴巴等等,这些大的电子商务平台可以很好推广效果,而且很多大站的反向链接,对你网站PR分(gooele的评分系统,这里泛指各种评分机制)作用是很大的。只有你的PR高了,你的网站自然排名才会高,自然排名高...阅读全文

博文 2019-01-21 09:57:17 xunsu10

基于UDP协议可靠传输协议QUIC协议和golang server代码和client代码

一. QUIC 的基本特点 基于UDP的多路传输(单连接下); 极低的等待时延(相比于TCP的三次握手); 快速迭代更新; 开源于Chromium项目中。 首先,QUIC为 传输层 协议,与TCP、UDP、SCTP同级。所以肯定会 在一定范围内 同现有的传输层协议构成竞争关系。 二. 为什么不用TCP TCP由于基于操作系统内核实现,发展速度极慢,现有的TCP Fast Open实现等等虽然早已存在于标准中但是实际应用情况及其落后,即便除非所有机器的操作系统都更新到最新,否则考虑到兼容性不太可能大范围采用新技术。 QUIC直接基于客户端实现,而非基于系统内核(这点有点像最新的.Net Core),可以进行快速迭代更新,不需要操作系统内核层面的更改。 (TCP的性能缺陷将在下文中说明)。 像S...阅读全文

博文 2019-02-25 15:21:20 Dende

Docker 问题 集装箱 不断更新中

本文档已经更新到GitHub上: 查看地址 docker 问题列表 Error parsing reference: "golang:alpine as builder" is not a valid repository/tag: invalid reference format 解决措施? 查看docker的版本 docker --version Docker version 1.13.1, build 94f4240/1.13.1 需要升级docker的版本 具体升级过程,可以查看007---如何升级docker的版本.md文档 Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting ...阅读全文

博文 2018-09-18 18:34:41 故新_d4ef

使用Go语言一段时间的感受

来源:http://www.open-open.com/news/view/1894f94文/Windstorm有一段时间没更新了。最近在忙一个 Server+Client 的项目,Client 是 Android 手机,大概也就是几十的规模。Server 是纯 Golang 实现,没有 apache 或者 ngix 这种 web server,也没有数据库,自己写了个文件管理 module,handle 这种小规模的服务没问题。算下来接触 Golang 也有四个多月了,断断续续写了一些东西,这里纪录一下心得吧先大概说下为什么用 Golang。我是一个对语言有洁癖的人,曾经是一个C+Python 的坚定呐喊者,最常说的一句话就是,只要熟练这两种,什么情况都能应付,根本不用 Java 和 C+...阅读全文

博文 2015-06-17 20:06:13 heiyeshuwu

hbase优化:怎么缩短查询速度

来源:http://bbs.oldboyedu.com/article-213-1.html HBase是Hadoop生态系统中的一个组件,是一个分布式、面向列的开源数据库,可以支持数百万列、超过10亿行的数据存储,因此,对HBase性能提出了一定的要求,那么如何进行HBase性能优化呢? HBase的拥有完整的支撑系统,包括底层硬件以及把硬件和操作系统、JVM、HDFS连接起来的网络之间的所有部件,这些都会对HBase性能和状态产生影响;除此之外,HBase的交互方式也会对HBase性能产生影响。 **一、HBase支撑系统优化** **1. 硬件选择** 需根据业务情况和集群规模大小选择合适的硬件。 **2. 网络配置** 由于HBase分布式系...阅读全文

golang的特性和优势

go是21世纪的C语言,也是云计算时代的C语言,它的诞生是为了有更高的开发效率,它于2009年9月加入开源语言的大家庭,2012年正式发布。 go的最大优势就是执行速度和开发效率都很出色,而且从语言级别上支持并发。执行速度快是因为go是编译型的静态语言,它在执行速度上比解释型语言具有先天的优势。生产效率高是基于go的语法和结构简明,易学易用。 go出现之前,无论汇编语言、还是动态脚本语言,在执行效率和开发效率上都不能兼备。 执行效率 execution speed: C/C++ > Java > PHP 开发效率 developing efficiency: PHP > Java > C/C++ go的不足之处就是年轻,有些方面还不够成熟和丰富,但它正在成长的道路上迅速迈进,希望在中国能今早...阅读全文

博文 2019-05-13 19:31:39 weixin_40213018

网站访问速度提升200%以上,阿里云虚拟主机支持PHP最新版本

摘要: 日前,阿里云虚拟主机推出了新功能,支持PHP的最新版本 7.0和7.1,并支持用户在多个不同PHP版本之间切换。 PHP 作为最好的Web编程语言,最新版本已经更新到了7.0和7.1。阿里云作为国内虚拟主机的领头羊,为了给用户提供更先进、选择更多的建站环境选择,推出了PHP7.0和7.1的支持。 日前,阿里云虚拟主机推出了新功能,支持PHP的最新版本 7.0和7.1,并支持用户在多个不同PHP版本之间切换。 PHP 作为最好的Web编程语言,最新版本已经更新到了7.0和7.1。阿里云作为国内虚拟主机的领头羊,为了给用户提供更先进、选择更多的建站环境选择,推出了PHP7.0和7.1的支持。 目前,国内绝大多数虚拟主机服务商目前支持的PHP最新版本还停留在PHP 5时代...阅读全文

来你是这样的Websocket--抓包分析

之前自己一个人负责完成了公司的消息推送服务,和移动端配合完成了扫码登录、订单消息推送、活动消息广播等功能。为了加深自己对Websocket协议的理解,自己通过进行抓包的方式学习了一番。现在分享出来,希望对大家能有所帮助。 Chrome控制台 (1)F12进入控制台,点击Network,选中ws栏,注意选中Filter。 (2)刷新页面会得到一个ws链接。 (3)点击链接可以查看链接详情 注意红框标出的信息,后面会详细说明。 (4)当然也可以切换到Frames查看发出和接收的消息,但是非常的简陋,只能看到消息内容,数据长度和时间 Fiddler:抓包调试利器 (1)打开Fiddler,点开菜单栏的Rules,选择Customize Rules... (2)这时会打开CustomRules.js...阅读全文

博文 2020-02-02 14:40:49 songwenjie

grep 的开源替代品 Go sift

sift 是快速强大的 [grep](http://www.oschina.net/p/gnu-grep) 开源替代品,作为一个单独的可执行程序,没有外部依赖,下载即用。sift 非常灵活,速度非常快,支持多行匹配,条件和多核。 sift 主要特性: * 速度快 * 无需安装,下载即用 * 灵活,包含 grep 所有你需要的特性 * 使用条件 示例数据:

<?xml version="1.0"?>
<catalog>
<book id="bk101">
  <author>Gam...阅读全文

国内高防虚拟主机怎样判断好坏?

了解高防虚拟主机的人都知道,高防虚拟主机与普通的虚拟主机大不相同,它属于防御性的虚拟主机,能很好防御网络中的DDoS等流量攻击,服务器虚拟化不断发展,虚拟主机更容易受网络中的DDoS攻击,从而促使消费者偏向高防虚拟主机。 而高防虚拟主机的稳定性对网站非常重要,企业在建站时对高防虚拟主机选择要注意。那么怎样去辨别国内高防虚拟主机的好坏呢? 服务器放置的虚拟主机数量 国内专业的虚拟主机提供商都有严格的规定,每台服务器上有多少台高防虚拟主机才能更大限度的保证客户的访问速度。不排除一些小服务商为赚钱,在同一台服务器上放N多高防虚拟主机,导致用户越多访问速度越慢,所以客户在购买时可选择一些大品牌的高防虚拟供应商。 服务器稳定性 虽说高防虚拟主机防御性强,但不代表稳定,普通...阅读全文

如何快速让你的网站被收录

做网站的人最重要的就是让自己的网站被很快的收录。大部分人需要大概1个月作用才会被收了,但是有的几个小时就收录,甚至十多分钟就可以,是不是很神奇。这些是很有技巧性的。下面说下简单的方法1,去搜索引擎提交自己的域名。2、申请一些分类目录网站收录,大概几分钟就可以申请几个。但也不要太多。3、去搜外,A5,落伍者论坛等发帖,留自己的链接。4,交换几个友情了链接。5、购买几个高质量的友情链接。做到上面这几点,最重要的还是你的网站主题和内容要健康积极,千万别复制网上的文章,就算复制也要稍微改下,不然搜索引擎会视为垃圾站点,没有原创内容,要么收录很迟要么完全不收了。现在不是有一种外链工具吗,可以批量的发出几千条外链。我觉得新站最好别这样做,这种外链没有什么意义,他的原理很简单,就是去各种有搜索功能的网站不...阅读全文

初识GO 语言-2019-5-8

一、前言现在是2019年5月8日1点07分就在一天前,我完成了自己学生生涯最后的一项工作。即将硕士毕业。作为一个编程菜鸟,我迫切的希望自己学习一门不那么底层的编程语言。python和Go成了我的首选。鉴于最近越来越多的人将目光放到Go上,因此我希望用接下来的1个月时间入门Go语言。随缘选取了B站韩顺平老师的视频教程https://www.bilibili.com/video/av36489007/?p=2其他学习资料容后再补充。——————————————————————————————————二、Go语言的应用领域1、区块链2、服务器-高并发,是Go语言最强大的特性之一3、分布式 云计算——————————————————————————————————三、学习规划与目标P1、P2、P3 ...阅读全文

博文 2019-05-08 03:34:57 竖琴犹奏相思苦

2019-11-6 【RCViewer】应该怎么选用应用框架

先硬广一波:RCViewer的开发启动了。虽然不能说是划时代屌炸天的技术和产品,但是对于现有被折磨的人群,我抱着最大的善意启动这一个项目,对于个人版预计全功能终身免费,并且不会做包括广告一类的商业化,只希望跟我一样被折磨的人能够在世界的各个角落,都可以不受限制的、自由的、愉快的访问放在某个场所的设备。底层的传输是在百万级节点的P2P通信网络中验证过的超高码率高性能多径传输技术----这么一说还真的是有点屌炸天了----RCViewer将基于对网络基础设施的有效利用,确保复杂网络也能带来感人的协作体验。现代码农很难想象上古时代的应用开发模式。想当年,施乐(为什么是施乐?)或者其他什么公司为了开发一款新打印机,硬件方案选型确定后,施乐将不得不从最底层的MCU微码开始,构建驱动,构建系统,最后才到...阅读全文

响应式网站个人制作教程

响应式网站制作对于公司企业与团队来讲是一件简单的事情,要么公司自行开发,要么外聘建站人员建设。但是对于个人与中小型企业来讲,想要建设一个响应式网站,但又不想投入太大。那该怎么样自己建设一个响应式网站呢?今天小编给大家讲讲响应式网站个人的制作教程。 利用工具:建站宝盒 1. 首先打开建站宝盒页面,你会看到详细的栏目。 自助建站 2. 点击电脑网站>>点击更换模板>>点击自适应网站>>选择你需要的网站模板风格>>点击安装 建站宝盒界面 建站宝盒 3. 安装完成>>进入网站编辑页面>>开始编辑(注:双击页面中的图片、栏目、文字便可自行编辑) 建站宝盒模板 (1)点击上方首页可以自己添加更改主栏目与子栏目 ...阅读全文

写了一个更易用的Golang HTTP请求库

对Golang HTTP标准库进行了封装,提供了更易用优雅的API,类似于Python-requests之于Python-urllib的封装 GitHub地址 示例代码 import ( "github.com/eddieivan01/nic" ) func main() { url := "http://example.com" resp, err := nic.Post(url, &nic.H{ JSON: nic.KV { "hello": "world", }, Headers: nic.KV{ "X-Forwarded-For": "127.0.0.1", }, }) if err != nil { fmt.Fatal(err.Error()) } fmt.Println(resp...阅读全文

博文 2019-05-17 17:35:09 Eddie_Ivan

websocket server base on go language

之前使用pusher.com提供的商业服务器,但在我的站速度慢,消息传递有丢失情况,所以自行构架 主要实现通知功能: 1. 根据每个page的 session_id来区分连接,数组方式存放,应对当一个session打开了多个page的情形 2.json格式进行通讯,数据中指定要通知的session,该session下的所有page将收到通知,session_id至少做md5处理 package main import ( "flag" "fmt" "net/http" "code.google.com/p/go.net/websocket") var port *int = flag.Int("p", 443, "Port to listen.") //创建全局map,可以为sess_id,...阅读全文

博文 2016-03-12 07:00:00 ranhuan

TODO:Golang UDP连接简单测试慎用Deadline

TODO:Golang UDP连接简单测试慎用Deadline UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,IETF RFC 768是UDP的正式规范。UDP在IP报文的协议号是17。在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。在OSI模型中,在第四层——传输层,处于IP协议的上一层。UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。 1.Golang UDP服务 package main import ( “...阅读全文

博文 2016-11-10 11:00:06 一个TODO

简单聊聊VPC和SDN/NFV

摘要: 近几年,SDN和NFV是网络界的热点,那么阿里云是如何做SDN和NFV的呢?阿里云VPC又是如何实现的呢?和SDN和NFV是什么关系呢?本文将介绍相关内容。 注:本文部分内容来自网络搜索的整合 大家都知道,目前各大云服务商都提供了VPC(Virtual Private Cloud)产品,VPC已经成为用户使用云首先需要考虑的云产品,甚至是比ECS更早需要考虑的云产品,可以说是基础中的基础。首先,我们还是来简单介绍下什么是VPC?VPC又有什么好处?再来讨论我们今天的主题,即阿里云VPC和SDN及NFV的关系。 什么是VPC 可以从下面三点来理解VPC。 首先,VPC可以认为是一个网络容器。用户可以免费开通这个容器,开通后再在这个容器中...阅读全文

初识golang

最近几天闲着无聊,老大给推荐了一门新的语言golang(对于我来说),看了一些 介绍,也写了几个小demo,马上爱上了这门语言,凭着一股“生命不止,折腾不息”的 极客精神,也写个小博客,发表一些个人见解。 本人主语言Java,如果说比较,那就拿Java和golang做个比较,比较的目的不是要 引发诸如“php是世界上最好的语言”这种无意义的语言之争,而是对语言的应用场景 有个大致的了解,以满足不同业务场景的应用,其实对我来说更是一种学习,一种思维 模式的练习。 先讲讲写golang程序的感受吧,写起来真是爽,没接触golang之前,用Java写程序 ,有IDE还好办,代码写起来也没觉得太冗长啰嗦,但用了golang就不同了,golang就 像一把瑞士军刀,小巧、精悍、锋利,瞬间感觉Java在...阅读全文

博文 2017-07-20 04:01:45 qq_24693837

想了解阿里云CDN产品介绍及使用入门,还不快点进了

课程介绍 通过CDN,可以将源站内容分发至最接近用户的节点,使用户可就近取得所需内容,提高用户访问的响应速度和成功率。解决因分布、带宽、服务器性能带来的访问延迟问题,适用于站点加速、点播、直播等场景。 本课程主要讲解阿里云CDN产品的使用方法。 课时列表 • 课时1:创建CDN并添加域名 • 课时2:利用工具合并CDN日志操作 • 课时3:通过资源监控定位CDN域名当前情况 • 课时4:CDN产品介绍 • 课时5:CDN的安全防护 • 课时6:CDN的页面优化、GZIP和range回源 • 课时7:CDN的HTTP头含义 • 课时8:CDN配置回源host及自定义404页面 • 课时9:CDN设置防盗链及使用鉴权功能 ...阅读全文

golang:reflect反射

reflect反射 1.使用场景 当一些类型未知,有多种类型需要统一处理时,考虑使用反射来做多种情况的统一判断处理。 反射读取数据: reflect常见类型 reflect.Int,reflect.Int8,reflect.Int16,reflect.Int32,reflect.Int64 reflect.Uint,reflect.Uint8,reflect.Uint16,reflect.Uint32,reflect.Uint64,reflect.Uintptr reflect.Bool reflect.String reflect.Chan,reflect.Func,reflect.Ptr,reflect.Slice,reflect.Map,reflect.Array,reflect.St...阅读全文

博文 2018-09-07 18:34:46 super大橙子

HTTP协议杂谈一

HTTP协议中方法的变更: 0.9版本的http协议中只有GET方法 1.0增加了HEAD和POST方法 1.1 增加了PUT,DELETE等方法 协议作者最初定义这些方法时是期望这些方法的请求的操作与方法名称相符。比如GET方法,应该就是个只读的请求。在遵循http协议方法定义的初衷方面,最出名的莫过于有名的REST api设计。 但是,现在很多很多公司都没有继续遵循这一点,甚至有些公司的http接口的实现基本都是采用POST方法,只有静态资源才是采用GET方法。另外由于一些公司用http服务的形式提供内部接口调用,这部分接口不直接对外,所以也基本上可以不遵循。当然最初http协议只是浏览器和web server之间进行交互的标准,公司内部提供接口调用打破了原有的使用边界。 我想协议最初的...阅读全文

博文 2020-03-22 17:32:43 golang推广大使

使用Go实现TLS 服务器和客户端

使用Go实现TLS 服务器和客户端 传输层安全协议(Transport Layer Security,缩写:TLS),及其前身安全套接层(Secure Sockets Layer,缩写:SSL)是一种安全协议,目的是为互联网通信提供安全及数据完整性保障。 SSL包含记录层(Record Layer)和传输层,记录层协议确定了传输层数据的封装格式。传输层安全协议使用X.509认证,之后利用非对称加密演算来对通信方做身份认证,之后交换对称密钥作为会谈密钥(Session key)。这个会谈密钥是用来将通信两方交换的数据做加密,保证两个应用间通信的保密性和可靠性,使客户与服务器应用之间的通信不被攻击者窃听。 本文并没有提供一个TLS的深度教程,而是提供了两个Go应用TLS的简单例子,用来演示使用G...阅读全文

博文 2019-05-14 21:34:50 VIL凌霄

JWT代码实现

在Go中可以直接使用github.com/dgrijalva/jwt-go简单实现Token的生成和有效性检验。 如果存在私密的文件,则需要使用使用密码对称加密。jwt生成的token在没有加密的情况下,需要使用https传输数据,确保数据安全。 更多请参考:JSON Web Token 入门教程。 下面是代码实现: package main import ( "errors" "fmt" "log" "time" "github.com/dgrijalva/jwt-go" ) type UserInfo struct { ID uint64 Username string } const SecrectStr string ="hello world" func CreateToken(u...阅读全文

博文 2019-12-02 23:34:15 大漠胡萝卜

建站宝盒到底有多大的威力令人为之痴迷?

建站宝盒是针对中小企业用户建站需求而打造的一款自助建站系统。用户只需通过在线申请账号和密码的方式建网站,不用自己上传源代码,只需登录网站管理系统即可选择网站模板风格、上传文字和图片内容、设置网站栏目、维护网站内容,其针对不同行业特点精心设计的网站栏目和网页风格。 此外,建站宝盒支持三种语言中文版网站、繁体版网站、英文版网站、运用功能强大的管理平台。建站宝盒大大节省建立网站的成本,极大地缩短了企业建站的时间。 ![5.jpg](https://static.studygolang.com/180427/a0738317884ddcaeebd9d5b132fd9a31.jpg) 简单易用 强大灵活 传统网站建设做出的网站管理后台功能简单,后期维护、网站建设周期长,修改...阅读全文

为什么Netty的FastThreadLocal速度快

一个监控项目有个需求,会对一批域名全国的边缘节点进行探测,这里包括,丢包率,http 响应时间,探测频率大概时间是2min 一个周期。这里的域名大概有几百个甚至上千。由于是golang 写的调度和agent, 所以,这里探测丢包率是一个有意思的问题。由于目前git 上没有一个好用的支持multi-ping 的库包,或者多ping 有bug,我自己实现了一个。 git 地址:https://github.com/caucy/batch_ping 1,icmp 协议介绍 icmp 的报文头部一共是2+2+4+4+4 个字节。 type ICMP struct { Type uint8 Code uint8 CheckSum uint16 Identifier uint16 SequenceNum...阅读全文

博文 2019-10-15 23:32:50 aside section ._1OhGeD

golang 网络编程(2)TCP

golang_real.jpg TCP(Transmission Control Protocol传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。 说到网络编程我们先理解一个术语套接字,突破这个术语,我们就向理解 TCP 迈出了一大步。简单比喻一下吧,我们彼此间通过打电话或写信的进行哪种不是面对面的交流,套接字就是我们进行这些交流工具,电话机或是邮箱,仅此而已。 我们今天用 go 语言实现一个 TCP 通讯,go 语言对 TCP 进行封装来方便我们开发 TCP 服务。 package main import( "fmt" "io" "net" "time" ) func main() { ln, err := net.Listen("tcp...阅读全文

博文 2019-04-26 19:34:40 zidea