自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1881)
  • 论坛 (1)
  • 收藏
  • 关注

原创 2020最新JAVA学习路线-教程视频-JAVA面试题
原力计划

学过了Java基础教程,相信你一定对Java已经有了一定的了解,度过了初入Java世界的难关,经历了最难的开始,供你你成功进阶,万事开头难,熬过了开头,成功还会远吗?分享下Java学习路线图,为你助攻!文末有惊喜~1.1 Java学习总体方向对于刚学习Java的同学,了解Java学习的大致结构。当然你能在Orace Java的主页上看到还有如Java FX、Java DB...

2020-04-14 16:19:30 250 2

转载 GO语言:微服务简介--解决复杂问题

许多大公司如阿里巴巴,腾讯,微博,滴滴等,已经采用现在所谓的微服务架构模式解决了我们前文所提到的单体应用遇到的种种问题。主要的思路:将应用程序分解成一套较小的互连服务。一、微服务解决方案一个服务通常实现了一组不同的特性或功能,例如订单管理、客户管理等。每一个微服务都是一个小型迷你应用,在需要依赖的地方,通过REST API连接其他所需要的服务之星业务逻辑。微服务架构 一些微服务会向外暴露一组供其他模块访问和使用的API。其他微服务实现了自己的业务逻辑,在必要时,可以通过API进行业务逻辑访问。

2020-11-06 10:46:50 75

转载 GO语言:微服务简介--走向单体地狱

上节课我们讲了,我们在进行开发一个新的应用时,可以构建一个整体的应用系统,我们称之为单体应用。当我们的应用刚开始起步,业务功能少,代码量可控时,我们还能正常的开发。局限性但是,随着系统业务的不断增长,代码量不断增加,我们维护创建的单体应用系统的性能和维护成本都会受到限制,限制了我们继续新增新业务的能力。单体应用发展趋势成功的应用有一个趋势,整个项目随着时间推移会变得越来越臃肿。而开发团队在每个迭代开发周期中都要实现更多的用户需求,这意味着需要添加许多行代码。当原来的单体引用运行维护几年之后,

2020-11-06 10:41:47 48

转载 GO语言:微服务简介--构建单体应用

互联网技术发展迅速的今天,微服务倍受关注:文章、博客、社交媒体讨论和会议演讲都在谈论。与此同时,也有持怀疑态度的软件社区人员认为微服务没什么新鲜可言。反对者声称它的思想只是面向服务架构的重塑。然而,无论是炒作还是怀疑,不可否认,微服务架构模式具有非常明显的优势 —- 特别是在实施敏捷开发和复杂的企业应用迭代开发方面。从本篇文章开始,我们来开学了解学习微服务的相关知识。单体应用我们先不问微服务是什么?微服务该如何实现?让我们从我们原本最熟悉的创建一个应用和一个普通的项目开始说起。打车系统我

2020-11-06 10:38:20 13

转载 程序员的思考:用函数还是用复杂表达式

程序员的思考:用函数还是用复杂表达式Perl语言的原作者Larry Wall曾经说过,伟大的程序员都有三个优点:懒惰、暴躁和自负。乍一看这三个词语没有一个是褒义词,但在程序员的世界里,这三个词有不同的意义。首先,懒惰会促使程序员去写一些省事儿的程序来辅助自己或别人更好的完成工作,这样我们就无需做那些重复和繁琐的劳动;同理能够用3行代码解决的事情,我们也绝不会写出10行代码来。其次,暴躁会让程序员主动的去完成一些你还没有提出的工作,去优化自己的代码让它更有效率,能够3秒钟完成的任务,我们绝不能容忍1分钟的

2020-11-06 10:36:19 8

转载 几个技巧让你的Python代码更专业

几个技巧让你的Python代码更专业最近几年时间,国内的Python开发者越来越多,但是很多开发者都是从其他编程语言转换阵营来到Python的。正是因为这样的原因,很多Python开发者的代码中都保留了其他语言的编程习惯,这样的代码看起来就显得很不专业,非常的不”Pythonic“。其实Python语言有很多专属的“编程惯例”,”惯例“这个词按照词典上的解释就是“习惯的做法,常规的办法,一贯的做法”。作为一个Python开发者,尤其是”跨界程序员“,如果能够掌握这些惯例,就可以写出“Pythonic

2020-11-06 10:32:38 14

转载 爬虫到底违法吗?你离违法还有多远?

最近,国家依法查处了部分编写爬虫程序,盗取其他公司数据的不良企业。一时间风声鹤唳,关于爬虫程序是否违法的讨论遍布程序员圈子。那么到底编写爬虫程序是否违法呢?其爬虫下载数据,一般而言都不违法,因为爬虫爬取的数据同行也是网站上用户打开页面能够看到的数据,但是如果符合下列条件的网站进行强行数据采集时,会具有法律风险。采集的站点有声明禁止爬虫采集时。2. 网站通过Robots协议拒绝采集时。Robots协议(也称为爬虫协议、机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion

2020-11-05 16:30:15 12

转载 一个小例子助你彻底理解协程

一个小例子助你彻底理解协程协程,可能是Python中最让初学者困惑的知识点之一,它也是Python中实现并发编程的一种重要方式。Python中可以使用多线程和多进程来实现并发,这两种方式相对来说是大家比较熟悉的。事实上,还有一种实现并发的方式叫做异步编程,而协程就是实现异步编程的必要方式。所谓协程,可以简单的理解为多个相互协作的子程序。在同一个线程中,当一个子程序阻塞时,我们可以让程序马上从一个子程序切换到另一个子程序,从而避免CPU因程序阻塞而闲置,这样就可以提升CPU的利用率,相当于用一种协作的

2020-11-05 16:27:11 8

转载 如何快速搭建自己的博客平台

如何快速搭建自己的博客平台对于一个程序员来说,搭建一个属于自己的博客平台是非常有意义的事情。首先,博客可以记录自己的成长历程,也是对自己一段时间学习和工作的总结和沉淀;其他,通过博客可以营销自己,增强自己在互联网或行业内的影响力,为将来更好的职业生涯打一个坚实的基础。前几年有一本名为《软技能 - 代码之外的生存指南》的畅销书,我记得书中有这么一段话:“流行乐队的音乐才华可能并不比夜店驻场乐队高多少,他们为什么就可以在全世界巡回演出,创造一个又一个白金记录?……你的营销做得越好,你的才华才能表现得淋漓尽致

2020-11-05 16:23:44 28

转载 GO语言:Protobuf简介

RPC 通信对于单独部署,独立运行的微服务实例而言,在业务需要时,需要与其他服务进行通信,这种通信方式是进程之间的通讯方式(inter-process communication,简称IPC)。前文已经描述过,IPC有两种实现方式,分别为:同步过程调用、异步消息调用。在同步过程调用的具体实现中,有一种实现方式为RPC通信方式,远程过程调用(英语:Remote Procedure Call,缩写为 RPC)。远程过程调用(英语:Remote Procedure Call,缩写为RPC)是一个计算机

2020-11-05 16:14:50 7

转载 GO语言:微服务简介--定义和标准

前面几节课程我们向大家讲了从单体应用如何发展到微服务架构的项目架构的转变,以及单体应用和微服务架构各自的优缺点。本节课,我们来看一看微服务的定义和标准,以及在实践中解决的问题。微服务的定义结合我们之前所了解到的文章和相关知识,并结合相关资料。我们借鉴微服务之父Martin先生给微服务的定义:将一个单体应用拆分成一组微小的服务组件,每个微小的服务组件运行在自己的进程上,组件之间通过如RESTful API这样的轻量级机制进行交互,这些服务以业务能力为核心,用自动化部署机制独立部署,另外,这些服务可以用

2020-11-05 16:10:07 20

转载 GO语言:Protobuf协议语法及原理

Protobuf 协议语法message:Protobuf中定义一个数据结构需要用到关键字message,这一点和Java的class,Go语言中的struct类似。 标识号:在消息的定义中,每个字段等号后面都有唯一的标识号,用于在反序列化过程中识别各个字段的,一旦开始使用就不能改变。标识号从整数1开始,依次递增,每次增加1,标识号的范围为1~(2^99)-1,其中[19000-19999]为Protobuf协议预留字段,开发者不建议使用该范围的标识号;一旦使用,在编译时Protoc编译器会报出警告。

2020-11-04 16:13:16 13

转载 GO语言:Protobuf协议Go语言实践 Davie

Go语言中有对应的实现Protobuf协议的库,Github地址:https://github.com/golang/protobuf环境准备使用Go语言的Protobuf库之前,需要相应的环境准备:1、安装protobuf编译器。可以在如下地址:https://github.com/protocolbuffers/protobuf/releases选择适合自己系统的Proto编译器程序进行下载并解压,如图:2、配置环境变量protoc编译器正常运行需要进行环境变量配置,将protoc..

2020-11-04 16:09:40 10

转载 使用协程快速获得一个代理池

前言在执行 I/O 密集型任务的时候,程序会因为等待 I/O 而阻塞。比如我们使用 requests 库来进行网络爬虫请求的话,如果网站响应速度过慢,程序会一直等待网站响应,最终导致其爬取效率十分低下。本文以爬取 IP 代理池为例,演示 Python 中如何利用异步协程来加速网络爬虫。协程协程(Coroutine),又称微线程,纤程,协程是一种用户态的轻量级线程。协程拥有自己的寄存器上下文和栈。协程调度切换时,将寄存器上下文和栈保存,在调度回来的时候,恢复先前保存的寄存器上下文和栈。因此协程

2020-11-04 16:04:55 13

转载 Python中格式化字符串更酷的方式

Python中格式化字符串更酷的方式在 Python 中,大家都习惯使用 %s 或 format 来格式化字符串,在 Python 3.6 中,有了一个新的选择 f-string。使用对比我们先来看下 Python 中已经存在的这几种格式化字符串的使用比较。# %susername = 'tom'action = 'payment'message = 'User %s has logged in and did an action %s.' % (username, action)

2020-11-04 15:55:55 7

转载 用 pprint 代替 print 更友好的打印调试信息

用 pprint 代替 print 更友好的打印调试信息pprint 是 “pretty printer” 的简写,“pretty” 的含义是 “漂亮的、美观的”,因此 pprint 的含义便是:漂亮的打印。这是个相当简单却有用的模块,主要用于打印复杂的数据结构对象,例如多层嵌套的列表、元组和字典等。先看看 print() 打印的一个例子:mylist = ["Beautiful is better than ugly.", "Explicit is better than implici

2020-11-04 15:50:37 8

转载 技术分享:linux文件管理一

快捷键编辑命令:Ctrl + a :移到命令行首Ctrl + e :移到命令行尾Ctrl + xx:在命令行首和光标之间移动Ctrl + u :从光标处删除至命令行首Ctrl + k :从光标处删除至命令行尾Ctrl + w :从光标处删除至字首Ctrl + d :删除光标处的字符Ctrl + h :删除光标前的字符​重新执行命令:Ctrl + r:逆向搜索命令历史Ctrl + p:历史中的上一条命令ESC + .:打印之前执行过的命令的最后一部分 以空格为分隔符​控制命令

2020-11-03 10:24:32 8

原创 技术分享:Linux基本操作

常见远程桌面工具RealVNC地址:https://www.realvnc.com/en/RealVNC远程控制程序是VNC (Virtual Network Computing)众多操作平台版本中的一员,它可以安装在Windows中而让使用者在世界各地远端遥控自己的电脑,就算是遥控不同的操作平台也没有问题。VNC软件主要由两个部分组成:VNC server及VNC viewer。用户需先将VNC server安装在被控端的计算机上后,才能在主控端执行 VNC viewer 控制被控端。

2020-11-03 10:23:41 12

转载 zabbix基于钉钉报警

zabbix基于钉钉报警 准备工作 1,安装钉钉---注册钉钉账号。 首先创建一个群聊把需要得到监控信息的人加到一起. 在钉钉上面添加一个机器人.创建机器人机器人添加成功2、登陆zabbix-server的机器创建python脚本: [root@zabbix-server ~]# cd /usr/lib/zabbix/alertscripts/ [root@zabbix-server alertscripts]# vim dingding.py

2020-11-03 10:14:08 43

转载 go语言:微服务管理--单点故障与分布式

上节课我们提到了服务的注册于发现机制,可以引入一个服务注册发现组件来实现对服务的管理,完成服务注册,信息查询,存储配置等功能。虽然引入了服务注册发现组件解决了就问题,但是会引入新问题。Consul环境配置1、将下载的consul_1.5.1_darwin_amd64.zip进行解压,解压后得到可执行文件consul。 2、将consul可执行文件拷贝到电脑本地的环境变量中。 Unix系统中:可以拷贝到~/bin或/usr/local/bin目录下,这两个目录是常见的安装目录。 Windows

2020-11-03 10:09:15 13

转载 GO语言:微服务管理--服务发现

在微服务简介篇,我们已经介绍过微服务架构中要解决的四个基本的问题。从本节课开始我们来学习如何实现服务的管理。为什么要使用服务发现设想下,我们写了一些通过REST API或者Thrift API调用某个服务的代码,为了发起这个请求,代码需要知道服务实例的网络地址(IP 地址和端口号)。在传统运行在物理机器上的应用中,某个服务实例的网络地址一般是静态的,比如,代码可以从只会偶尔更新的配置文件中读取网络地址。然而在现在流行的基于云平台的微服务应用中, 有更多如下图所示的困难问题需要去解决:.

2020-11-03 09:57:31 17

转载 标准的开发框架,对企业开发有多重要?

在最近这几年,互联网进行业入了蓬勃发展的时期,尤其是移动互联网的快速普及,已经颠覆了传统的行业模式。如今人们的生活已经无法离开网络,整个商业市场也随之发生着天翻地覆的变化。有越来越多的新企业,随着互联网的浪潮开辟着新兴市场。凭借独特新颖的业务模式,新兴企业的规模得以迅速壮大,在短时间内超越了诸多传统公司,成为互联网时代的宠儿。不过,虽然新企的业务发展走在了前列,但是企业信息化的建设却于传统公司并无二致,其老旧拖沓的运作方式,严重影响着企业战略的实施。所谓形新而神不新。之所以会出现上述情况..

2020-10-30 15:19:25 23

转载 浅析Dijkstra单源最短路径算法

单源最短路径问题给定 加权有向图G=(V,E,W),每条边的权值w为 非负数,表示两个顶点间的距离。源点s∈V。求:从s出发到其他各个顶点的最短路径。编辑​如上图所示,以1为源点,计算到其余各个顶点的最短距离(我已用红线标出)。下面列出了最终解:源点:11->6->2 : short[2] = 51->6->2->3 : short[3] = 121->6->4 : short[4] = 91->6->5 : .

2020-10-30 15:13:47 12

转载 字节跳动2020Java面经,你离高薪就只差一篇面试题了

前言经历了惨痛的春招与秋招之后,也积攒了一些面经,希望能对大家有所帮助。其他什什么是幂等?什什么情况下需要考虑幂等?你怎么解决幂等的问题?Java多个线程同时读写,读线程的数量量远远⼤大于写线程,你认为应该如何解决并发的问题?你会选择加什什么样的锁? JAVA的AQS是否了了解,它是⼲干嘛的? 除了了synchronized关键字之外,你是怎么来保障线程安全的? 什什么时候需要加volatile关键字?它能保证线程安全吗? 线程池内的线程如果全部忙,提交⼀一个新的任务,会发⽣生什什

2020-10-30 15:12:00 35

转载 js日志输出还是只会console.log么,那你就out了

几乎所有的javascript开发者最常使用的日志打印调试api都是console.log(),其实还有很多的选项供我们选择,笔者下面就为大家一一介绍.一、console.table()console.table()是我非常建议大家去使用的方法,它可以接受JSON或数组并以表格格式打印,在对json对象和数组进行可视化打印的时候简单易用,结果直观。比如下面的json数据对象使用console.table()打印 console.table({ "id":"1", ..

2020-10-30 15:05:26 18

转载 非HTTP状态下开启web视频的临时方案

非HTTP状态下开启web视频的临时方案引子新版本的chrome在调用摄像头的时候,会有安全警告,所以调用摄像头的js方法就无法使用了,如下:意思是保证安全,你要在HTTPS的情况下,才能调用浏览器摄像头。但是我们平时开发的时候,本地环境往往没有HTTPS,如何解决呢?禁用浏览器默认安全模式复制如下命令到浏览器的地址栏:chrome://flags/#unsafely-treat-insecure-origin-as-secure如下图,找到黄色部分,然后enabled开启,并且把你自

2020-10-30 15:02:20 22 1

转载 JVM 对象分配过程

对象分配过程1)依据逃逸分析,判断是否能栈上分配? 如果可以,使用标量替换方式,把对象分配到VM Stack中。如果 线程销毁或方法调用结束后,自动销毁,不需要 GC 回收器 介入。 否则,继续下一步。 2)判断是否大对象? 如果是,直接分配到堆上Old Generation老年代上。如果对象变为垃圾后,由老年代GC 收集器(比如 Parallel Old, CMS, G1)回收。 否则,继续下一步。 3)判断是否可以在TLAB中分配? 如果是,在TLAB中分配堆上...

2020-10-29 16:49:51 8

转载 科普文:峨中间件技术是什么?

中间件(MiddleWare)虽然从字面上解释就是“处于中间的软件”但却在系统中占有重要作用,中间件与操作系统、数据库被称为系统软件的三驾马车,其位于信息系统的中间层,承上启下作用关键。能够帮助用户灵活、高效地开发和集成复杂的应用软件。世界著名的咨询机构 Standish Group 在一份研究报告中归纳了中间件的十大优越性: 缩短应用的开发周期; 节约应用的开发成本; 减少系统初期的建设成本; 降低应用开发的失败率; 保护已有的投资; 简化

2020-10-29 16:46:24 22

转载 爬虫程序优化要点

爬虫程序一般分成数据采集模块、数据分析模块和反爬策略模块,如果能针对这三个模块进行优化,可以让爬虫程序稳定持续的运行。1.采集模块一般来说目标服务器会提供多种接口,包括url、app或者数据api,研发人员需要根据采集数据难度、每天数据量要求、目标服务器反爬限制频率分别进行测试,选择适合的采集接口及方式。2.数据分析模块由于网络采集存在各种不确定性,数据分析部分在根据需要做好数据解析之后,要做好异常处理及定位重启功能,避免出现程序异常退出或者数据采集遗漏、重复的情况3.反爬策略模块分

2020-10-29 16:43:05 20

转载 JSoup与代理IP的结合

Java 的jsoup 是标准的HTML解析器,可采集指定的网页网站数据。通过简洁易用的API,调用DOM、CSS实现jQuery的操作提取特定的数据。jsoup 的特性:1. HTML数据解析分析2. DOM或CSS选择器定位直接获取数据3.HTML元素、属性、文本的直接交互 在数据采集的过程中,部分网站会限制爬虫访问,这种时候就需要使用代理IP,为每个http请求分配不同的IP地址,实现数据快速采集请求的目的。 对于jsoup 下如何配置使用代理IP,下面的de...

2020-10-29 16:38:42 9

转载 抛弃 Java 改用 Kotlin 的六个月后,我后悔了!

毫无疑问,Kotlin 目前很受欢迎,业界甚至有人认为其将取代 Java 的霸主地位。它提供了 Null 安全性,从这一点来说它确实比 Java 更好。那么是不是这就意味着开发者应该毫不犹豫地拥抱 Kotlin,否则就落伍了?等等,或许事情并非如此。在开始使用 Kotlin 编程之前,本文想要分享个故事给你。在这个故事中,作者最早使用 Kotlin 来编写一个项目,后来 Kotlin 的各种怪异模式以及一些其他障碍越来越让人厌烦,最终,他们决定重写这个项目。以下为译文:一直以来,我对基于 JV

2020-10-29 16:35:08 24

原创 linux系统管理:DNS服务

DNS域名解析服务域名解析域名对应ipwww.baidu.com这个域名--对应IP---183.232.231.174解析方式:本地解析:/etc/hosts 默认先使用本地解析[root@linux-server ~]# vim /etc/hosts #添加如下内容127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost loc

2020-10-28 16:22:15 20

转载 linux系统管理:系统优化

系统优化知识点:(简介:系统优化其本质是系统在提供服务的同时,承受压力过大需进行参数调优)1、查看平均负载系统负载System Load:系统CPU繁忙程度的度量,即有多少进程在等待被CPU调度,平均负载(Load Average):一段时间内系统的平均负载,这个一段时间一般取1分钟、5分钟、15分钟[root@linux-server ~]# uptime20:42:26 up 6:12, 2 users, load average: 0.00, 0.01, 0.051分钟

2020-10-28 16:18:51 15

转载 linux系统管理之交互式企业站点(连载)

1.1Web服务器介绍nginx1.2Nginx基本使用获取NginxNginx的官方主页: http://nginx.org关闭防火墙关闭selinux[root@soso666 ~]# systemctl stop firewalld #关闭防火墙[root@soso666 ~]# systemctl disable firewalld #开机关闭防火墙[root@soso666 ~]# setenforce 0 #临时关闭selinux[root@soso666 ~]# ge

2020-10-28 16:12:35 11

转载 Go语言微:启动Consul

启动Consul安装配置好Consul以后,我们可以通过简单的命令启动consul。先来看最简单的启动方式:consul agent -dev在新终端中,执行如上操作。hongweiyu@localhost:~$ consul agent -dev==> Starting Consul agent...==> Consul agent running! Version: 'v1.5.1' Node ID: '808644da

2020-10-28 16:10:51 8

转载 Go语言:Consul服务发现原理

Consul服务发现原理使用以下案例进行Consul服务发现原理的讲解,如图所示:1、部署集群。首先需要有一个正常的Consul集群,有Server,有Leader。这里在服务器Server1、Server2、Server3上分别部署了Consul Server。2、选举Leader节点。假设他们选举了Server2上的 Consul Server 节点为Leader。这些服务器上最好只部署Consul程序,以尽量维护Consul Server的稳定。3、注册服务。然后在服务器Serve

2020-10-28 16:07:08 7

转载 git版本控制器(连载)

版本控制系统1. 版本控制系统:git 分布式 ---没有中心代码库,所有机器之间的地位同等(每台机器上都有相同的代码)svn 集中管理的 ---有中心代码库,其他都是客户端2.git与svn介绍1.git属于分布式版本控制系统: 客户端并不只提取最新版本的文件,而是把原始的代码仓库完整地克隆下来。优点:a.由于任何人每次提取操作,实际上都是一次对代码仓库的完整备份,因此近乎所有的操作都可以在本地执行,速度就是相当的快,并且可以在网络断开的时候操作仍然不受影响,可以频繁

2020-10-27 16:40:43 10

转载 安装企业级wiki管理工具

安装企业级wiki管理工具Confluence是一个专业的wiki程序。它是一个知识管理的工具,通过它可以实现团队成员之间的协作和知识共享。Confluence不是一个开源软件,非商业用途可以免费使用。Confluence使用简单,但它强大的编辑和站点管理特征能够帮助团队成员之间共享信息,文档协作,集体讨论。confluence是一个专业的企业知识管理与协同软件,可以用于构建企业wiki。通过它可以实现团队成员之间的协作和知识共享。网上有关confluence的教程比较多,在此我们以conflu

2020-10-27 16:37:31 20

转载 静态服务之Apache

静态服务之Apache与wiki部署世上最重要的事,不在于我们在何处,而在于我们朝着什么方向走。只能解析静态页面。 动态页面:只要和数据库进行连接的都属于动态页面,比如java写的代码,PHP的代码,python的代码。web服务器:apache (参考服务器配置、优化。静态并发量最高2000) nginx tengine IIS 端口 全部为80!https为443端口web中间件、web容器:php: php-fpm(php端口9000)java: (tomcat端口8080。并发量到

2020-10-27 16:32:44 16

转载 Go语言:Docker安装及运行consul节点

搭建集群在真实的生产环境中,需要真实的部署consul集群。在一台机器上想要模拟多台集群部署的效果,有两种方案:一种是借助虚拟机,另一种是借助容器技术。在本系列课程中,使用后者容器技术来实现集群的搭建。Docker简介Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何的接口,更

2020-10-27 16:27:28 9

空空如也

qianfeng_dashuju的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除