go

聊聊kingbus的main.go

為{幸葍}努か 提交于 2020-10-10 01:58:06
序 本文主要研究一下kingbus的main.go main.go kingbus/cmd/kingbus/main.go package main import ( "flag" "fmt" "os" "os/signal" "syscall" "github.com/flike/kingbus/config" "github.com/flike/kingbus/log" "github.com/flike/kingbus/server" ) var ( //BuildDate used for generating build date in make command BuildDate string //BuildVersion used for generating kingbus version in make command BuildVersion string ) const banner string = ` __ _ __ / /__(_)___ ____ _/ /_ __ _______ / //_/ / __ \/ __ '/ __ \/ / / / ___/ / ,< / / / / / /_/ / /_/ / /_/ (__ ) /_/|_/_/_/ /_/\__, /_.___/\__,_/____/ /____/ ` func main() {

Plan9:一个从0开始考虑分布式,分布appmodel的os设计

生来就可爱ヽ(ⅴ<●) 提交于 2020-10-09 15:16:53
本文关键字:plan9,Inferno,limbo,Plan 9 from User Space:plan9port 在《除了UNIX,我们真的有可选的第二开源操作系统吗?》中,我们讲到那些传统的os之争是集中于游戏好不好支持,桌面好不好体验,发行够不够流行,总体好不好用这些方面。而从x86 cpu从0开始的抽象全栈,他们都是一样的 ------- 换言之,某种意义上他们都是一样的OS。 这种共同点在于哪里呢?对于最终的APP和APP开发来说,它们都是基于单PC+单PC下网络程序设计的。于是在这种架构下有了我们现在处处见到的web,云,—— 我们发现,当今的集群和分布式是放在云这个普化架构来做的:集群就是好多好多的PC通过网络计算起来,附带一些PC监控节点 —— 它们还是PC,在每一台PC内部运行的APP,都是从socket开始(更抽象一点,也许还有DCOM,消息件)的“云”程序:这种程序其实还是网络程序,这种总架构下的APPDEV,以OS来看,其实本质都是单机环境下网络交互的程序。 而这些都不是究极的分布式和分布式开发设计。 在《一种开发发布合一,语言问题合一的shell programming式应用开发设想》中,我们讲到了对于任何programming的设想,其实都是一个四栈从0开始叠加的设计。每一个appmodel,都是从hardware从0抽象来的,OS是大件。———

黑客利用新型P2P僵尸网络恶意软件,将物联网设备作为目标

て烟熏妆下的殇ゞ 提交于 2020-10-09 11:45:06
近日,网络安全研究人员已经完成了一个新的僵尸网络的终结工作,该僵尸网络在野外劫持了与Internet连接的智能设备,以执行邪恶的任务,主要是DDoS攻击和非法加密货币硬币挖掘。 由奇虎360的安全团队发现的HEH僵尸网络,用Go语言编写并配备有专有的对等(P2P)协议,通过Telnet服务在端口23/2323上的强力攻击进行传播,并且可以执行任意的shell命令。 研究人员说,迄今为止发现的HEH僵尸网络样本支持多种CPU体系结构,包括x86(32/64),ARM(32/64),MIPS(MIPS32 / MIPS-III)和PowerPC(PPC)。 国际知名白帽黑客、东方联盟创始人郭盛华透露:“僵尸网络尽管处于开发的早期阶段,但它具有三个功能模块:传播模块,本地HTTP服务模块和P2P模块。” HEH示例最初是由名为“ wpqnbw.txt”的恶意Shell脚本下载并执行的,然后使用Shell脚本从网站(“ pomf.cat”)下载适用于所有不同CPU架构的恶意程序,然后最终终止许多服务进程基于它们的端口号。 第二阶段从HEH示例开始,首先启动HTTP服务器,该服务器以八种不同的语言显示《世界人权宣言》,随后初始化一个P2P模块,该模块跟踪受感染的同级物并允许攻击者运行任意的shell命令,包括通过触发自毁命令擦除受感染设备的所有数据。 尽管僵尸网络作者尚未实现“攻击”命令

2020 年最牛逼的 10 门编程语言

◇◆丶佛笑我妖孽 提交于 2020-10-09 07:02:41
先看再点赞,给自己一点思考的时间,微信搜索【 沉默王二 】关注这个有颜值却假装靠才华苟且的程序员。 本文 GitHub github.com/itwanger 已收录,里面还有我精心为你准备的一线大厂面试题。 对于很多初学编程的人来说,尤其是马上要入学的大一新生来说,选择哪门子编程语言实在是个痛苦的事。选择对了,毕业后顺利找到工作,完美走向职场;选择错了,毕业后受伤的才华无处安放,大学算是虚度光阴了。 前一段时间哈,我有个远房的亲戚,她家的小孩非要让我指导一下。然后就带了一本书来见我,看了一下封面,我惊呆了。 《易语言从入门到精通》。这是哪门子编程语言,我第一次见到!不敢怠慢,也担心亲戚说我孤陋寡闻,偷偷地搜了一下。易语言的创始人是吴涛,国内为数不多的推崇中文编程语言的程序员大佬。 郑重其事地说,我是个三观很正的人,绝没有半点虚情假意。但我实在不忍心看我这远房表弟误入歧途,毕竟易语言即便是入门了,甚至是精通了,将来也不一定能找到工作啊! 当做兴趣爱好学编程固然好,值得称赞。我这表弟虽然学习不咋滴,年纪轻轻,初中毕业,但据亲戚反馈,酷爱编程,酷爱计算机(也不确定是不是酷爱打游戏)。易语言这本书也是他自己在网上买的。 我有点担心地问他:“能看懂吗?” 表弟不假思索,信誓旦旦地回答:“能啊!” 我随手翻了翻这边书,发现书签已经夹在第 202 页,我天呐,真的有在看啊,看了将近一半了。

阿里云服务器可以用来做什么?(老司机经验之谈)

懵懂的女人 提交于 2020-10-09 00:32:17
云服务器可以用来做什么? 1、建网站。 利用著名的WordPress可以让小白和新手搭建一个网站。让小白拥有自己的网站。 2、技术编程。 现在互联网行业大爆发,衍生出来的技术岗位多不胜数,为了就业,为了拿好的待遇,你没有理由不借助云服务器来学习技术编程。优先学习Web应用开发编程,然后在云服务器上部署你的Web应用,让你所学的东西在线上环境下得到检验。爱好学习者,必须上云。 3、软件应用开发与部署。 可以把个人业余开发的开源Web应用部署到云服务器上,然后写技术教程建立个人技术品牌,未来的时代,是个人品牌的时代,有了个人品牌,你不必依靠平台吃饭。你的个人IP就能让你自食其力,持续打造自身专业的影响力。借助云技术,行动起来把。 4、运维测试。 企业应用和个人应用测试用。性能压力测试,线上环境模拟测试等测试技能 5、微服务开发。 大型互联网微服务应用已经不可能把各个服务都放在一台云服务器上,而是分散在数量庞大的云服务器上,分散访问压力。如果你要深入学习微服务,你有必要弄几台云服务器来部署你的应用,然后让别人看到你的成果。 阿里云优惠上云+ 阿里云个人上云+阿里云企业上云+阿里云学生上云 总结如下,云服务器的使用场景汇总: 1.搭建网站。个人博客,技术博客,生活随笔,产品推广等各种类型的网站。 2.编程。Java web编程+php web编程+python web编程+go

filebeat编译报错recipe for target &apos;filebeat&apos; failed,go1.13.4

孤人 提交于 2020-10-08 09:01:30
filebeat编译报错,go1.13.4 user@ecuser-desktop:~/gopath/src/github.com/elastic/beats/filebeat$ make go build -ldflags "-X github.com/elastic/beats/libbeat/version.buildTime=2020-06-23T06:51:25Z -X github.com/elastic/beats/libbeat/version.commit=0dcb3dfebef720e0b91c959eeb4d8e270501cc0e" go: 4d63.com/tz@v1.1.1-0.20191124060701-6d37baae851b: Get https://proxy.golang.org/4d63.com/tz/@v/v1.1.1-0.20191124060701-6d37baae851b.mod: unexpected EOF ../libbeat/scripts/Makefile:138: recipe for target 'filebeat' failed make: *** [filebeat] Error 1 将go版本升级到go1.13.8,编译成功 来源: oschina 链接: https://my.oschina.net/u

Js--BOM详解

回眸只為那壹抹淺笑 提交于 2020-10-08 08:56:35
Js--BOM详解 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 概念 Browser Object Model 浏览器对象模型 将浏览器的各个组成部分封装成对象 组成 Window:窗口对象 Navigator:浏览器对象 Screen:显示器屏幕对象 History:历史记录对象 Location:地址栏对象 Window:窗口对象 创建 方法 与弹出框有关的方法 : alert() 显示带有一段消息和一个确认按钮的警告框。 confirm() 显示带有一段消息以及确认按钮和取消按钮的对话框。 返回值: 如果用户点击确定按钮,则方法返回true 如果用户点击取消按钮,则方法返回false prompt() 显示可提示用户输入的对话框。 返回值: 获取用户输入的值 与打开关闭有关的方法 : close() 关闭浏览器窗口。 open() 打开一个新的浏览器窗口 返回新的Window对象 与定时器有关的方式 setTimeout() 在指定的毫秒数后调用函数或计算表达式 。 返回值:唯一标识,用于取消定时器 clearTimeout() 取消由 setTimeout() 方法设置的 timeout。 setInterval() 按照指定的周期(以毫秒计)来调用函数或计算表达式。 clearInterval()