pkg

Nginx系列(四)——配置文件自动化管理

最后都变了- 提交于 2020-08-11 02:25:41
Automation 自动化 需要安装Puppet class nginx { package {"nginx": ensure => 'installed',} #确认Nginx已安装 service {"nginx": ensure => 'true', hasrestart => 'true', #确认开机自启 restart => '/etc/init.d/nginx reload', #重启Nginx } file { "nginx.conf": path => '/etc/nginx/nginx.conf', require => Package['nginx'], notify => Service['nginx'], content => template('nginx/templates/nginx.conf.erb'), user=>'root', group=>'root', mode='0644'; } } Chef 安装Chef package 'nginx' do action :install end service 'nginx' do supports :status => true, :restart => true, :reload => true action [ :start, :enable ] end template 'nginx

Go 其三 Map与String

佐手、 提交于 2020-08-10 18:12:23
   艺多不压身,学习一下最近蛮火的Go语言,整理一下笔记。相关Code和笔记也放到了Git上, 传送门 。 MAP Map 声明 m := map[string]int{"one":1, "two":2, "three":3} m1 := map[string]int{} m1["one"] = 1 m2 := make(map[string]int, 10/*Initial Capacity*/) //为什么不初始化len? 对于切片 s := make([]int, 3, 5) 会指定len并给默认的0值,但语义上Map其实没办法指定默认值的,因此没有len. Map元素的访问 与其他主要变成语言的差异 当访问的Key不存在时,仍会返回零值,不能通过返回nil来判断元素是否存在,可以用如下方式判断 if v,ok:=m1[3];ok{   t.Logf("Key 3's value is %d", v) } else {   t.Log("Key 3 is not existing.") } 其中ok为bool值,当值存在时,ok的值为true Map遍历 m := map[string]int{"one":1, "two":2, "three":3} for k,v := range m { t.Log(k,v) } 附上测试代码: package my_map

计算机网络知识汇总

允我心安 提交于 2020-08-09 20:43:24
1、正向代理和反向代理: 参考文章: https://blog.csdn.net/liuhenghui5201/article/details/90720442 正向代理是代理的客户端,代理向目标服务器的行为就像客户端自己一样 反向代理是代理的服务端,代理是一个统一的中介,然后由该中介找到相应的服务器为客户端提供服务。 正向代理的典型应用举例: 通过VPN翻墙访问境外网站。 反向代理的典型应用举例:使用apache、nginx做反向代理,搭建负载均衡的服务器集群。 2、TCP流量控制与拥塞控制 流量控制是发送方和接收方的一种约定,接收方会动态向发送方反馈当前接收方可以接收的最大数据包大小,确保发送方发送的数据包不会超过接收方的最大接收能力。 拥塞控制是为了预防在一个共享网络中同时有多个请求,且每个请求都发送大数据,导致网络拥堵的情况而采用的一种机制。它的核心在于慢启动,发送方向接收方发送的数据量会随着时间逐步增加(一开始发送1个pkg,然后发送2个,发送4个...),但是这个数据量依然不会超过流量控制中接收方告知发送方的最大大小。 参考文章: https://www.jianshu.com/p/ad88e08e5dc8 3、TCP连接的三次握手和四次挥手 TCP在建立连接时进行三次握手,关闭连接时进行四次挥手。 三次握手过程:Client发送SYN消息给Server--

Java使用 POI 操作Excel

﹥>﹥吖頭↗ 提交于 2020-08-09 10:52:25
   Java中常见的用来操作 Excel 的方式有2种:JXL和POI。JXL只能对 Excel进行操作,且只支持到 Excel 95-2000的版本。而POI是Apache 的开源项目,由Java编写的跨平台 Java API,可操作 Microsoft Office。借助POI,可以方便的生成数据报表,数据批量上传,数据备份等工作。 一.简单使用 1.创建Maven工程导入POI坐标 <!-- poi 相关 --> < dependency > < groupId > org.apache.poi </ groupId > < artifactId > poi </ artifactId > < version > 4.0.1 </ version > </ dependency > < dependency > < groupId > org.apache.poi </ groupId > < artifactId > poi-ooxml </ artifactId > < version > 4.0.1 </ version > </ dependency > < dependency > < groupId > org.apache.poi </ groupId > < artifactId > poi-ooxml-schemas </ artifactId > <

CentOS 7 安装 Jenkins

牧云@^-^@ 提交于 2020-08-09 10:40:05
准备工作 首选需要安装JAVA环境 https://www.cnblogs.com/stulzq/p/9286878.html 如果你的系统没有自带git,那么也需要安装一个 yum install git 1.安装 第一种方法 sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key yum install jenkins 第二种方法 直接下载 rpm 安装 各个版本地址 https://pkg.jenkins.io/ wget https://pkg.jenkins.io/redhat/jenkins-2.156-1.1.noarch.rpm rpm -ivh jenkins-2.156-1.1.noarch.rpm 2.配置 vim /etc/sysconfig/jenkins # 监听端口 JENKINS_PORT="8080" 3.配置权限 为了不因为权限出现各种问题,这里直接使用root 修改用户为root vim /etc/sysconfig/jenkins # 修改配置 $ JENKINS_USER=

01-Go语言介绍

被刻印的时光 ゝ 提交于 2020-08-09 08:35:57
目录 Go语言介绍 Go语言特性 Go语言发展(版本/特性) Go语言应用 谁在用 Google Facebook 腾讯 百度 京东 小米 360 应用领域 Go语言项目 Go语架构 Go语言发展前景 Go语言介绍 Go 即Golang,是Google公司2009年11月正式对外公开的一门编程语言。 Go是静态强类型语言,是区别于解析型语言的编译型语言。 解析型语言——源代码是先翻译为中间代码,然后由解析器对代码进行解释执行。 编译型语言——源代码编译生成机器语言,然后由机器直接执行机器码即可执行。 Go语言特性 跨平台的编译型语言 语法接近C语言 管道(channel),切片(slice),并发(routine) 有垃圾回收的机制 支持面向对象和面向过程的编程模式 Go语言发展(版本/特性) 2009年11月7日 weekly.2009-11-06 —— 早期的版本 2012年3月28日 go1 —— 稳定版版的发布 2013年5月14日 go1.1 —— 语言本身的变化、库的变化等。 2013年12月01日 go1.2 —— 提供更好的调度和一个新的语言特性。 2014年6月18日 go1.3 —— 主要是在实现的工作上的变化,以及精准的垃圾回收。 2014年12月10日 go1.4 —— 包含了2个很小的语言变更。 2015年8月19日 go1.5 —— 实现的架构变化

非易失性MRAM技术发展

北城以北 提交于 2020-08-08 12:11:58
切换(或场驱动) MRAM 包括大部分的独立MRAM设备。然而切换MRAM的规模不足以取代大多数其他记忆。STT-MRAM产品将扩展到更高的密度,需要更低的能量写比切换MRAM。2019年已发运大部分MRAM内存的Everspin开始向STT-MRAM发运最高1Gb的芯片容量,这种内存密度使这些设备在许多应用中更受关注。Everspin代理商英尚微电子提供产品技术支持及解决方案. 主要的嵌入式半导体制造商为工业和消费应用中使用的嵌入式产品提供MRAM非易失性存储器选项。这些铸造厂包括全球铸造厂、英特尔、三星和TSMC。 STT-MRAM 有很高的性能,但不如最快的静态随机存取存储器快。然而一种被称为自旋轨道转矩(SOT)的MRAM技术有潜力匹配静态随机存储器的性能。 磁性随机存取存储器(场或自旋器件)使用一个选择晶体管作为存储单元,见下图1。MRAM单元可以具有专用晶体管,或者该晶体管可以在两个存储单元之间共享。在用于MRAM生产之前,必须在晶片上创建特定的选择晶体管设计。 图1 MRAM记忆细胞 目前MRAM软件技术正在世界各地的实验室中开发,但是随着STT-MRAM产品成本的降低,无论是嵌入式产品还是独立产品,MRAM软件技术都可能成为MRAM取代最快的静态随机存取存储器应用的手段,提供更高的非易失性存储器密度,从而支持非常低功耗的物联网和人工智能应用。 Everspin代理

go语言包管理

狂风中的少年 提交于 2020-08-06 11:00:52
要构建Go语言的编译环境,首先得安装Go语言的编译工具 官方路径:https://golang.google.cn/dl/,一般是访问不了,使用国内网站:https://studygolang.com/dl 然后需要设置环境变量 在windows下需要将go编译器的安装路径加到Path,还要设置GOROOT和GOPATH变量,分别对应GO安装目录和项目下的src目录。 GO包管理一般有两种方式:GOPATH方式和GO Module方式 GOPATH方式是GO原生支持的方式,一般要求项目下包含三个目录: bin:放置可执行文件 pkg:放置编译生成的lib包 src:放置源码,go编译查找源文件目录 例如项目结构如下: 一般源文件的包名就是所在的文件夹名,如果在main函数中要调用algorithms中的qsort中的函数,只需要import文件即可: 如果需要导入github上的开源代码,直接import项目的url链接即可,并且需要go get导入到本地路径,go会自动在src目录下生成github.com目录。 Go Module管理方式 Go Module方式是golang1.11新增的特性,直接基于模块管理,而不是基于固定目录 要使用Go Module,需要先设置go变量GO111MODULE=on 要注意Go Module方式跟GOPATH方式不兼容

CentOS7.6 源码安装 libevent-2.1.8-stable

吃可爱长大的小学妹 提交于 2020-08-06 08:54:26
获取libevent libevent官网:https://libevent.org/ GitHub-libevent项目链接:https://github.com/libevent/libevent 要获取libevent源码包,可以在上面两个网址链接上获取到。本人下载的是libevent-2.1.8-stable版本,源码包文件名为:libevent-2.1.8-stable.tar.gz。 《注意》安装需要有root权限,最好是在root用户下进行,如果不是root用户,执行编译安装操作时需要在命令前加上 sudo 。本人是在 root用户下进行操作的。 安装步骤 一、解压缩源码包。 tar -xzvf libevent-2.1.8-stable.tar.gz 二、进入 libevent-2.1.8-stable 目录,执行 configure 配置脚本 1、查看 configure 脚本的使用帮助及其选项,可以执行命令: ./configure --help 查看。 如果直接执行:./configure,那么默认安装路径是/usr/local,对应的头文件、可执行文件和库文件分别对应的目录是:' /usr/local/include '、'/usr/local/bin','/usr/local/lib'。 2、我本人设置了自定义安装路径,执行命令如下: .

Linux搭建Jenkins、卸载及使用nginx反向代理

心不动则不痛 提交于 2020-08-06 06:50:16
1.新建一个jenkins用户 useradd jenkins 2.使用yum安装Jenkins(没有jdk先安装jdk) 先查看是否有jenkins的安装包 yum list jenkins 如果有直接安装即可 yum install jenkins 没有则进行下一步 wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo ## 获取yum源 rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key ## 导入秘钥 yum install jenkins ## 安装 安装成功!可使用service jenkins status查看状态 3.启动jenkins,以及相关命令 service jenkins start ## 启动 service jenkins status ## 查看状态 service jenkins stop ## 停止 4.浏览器访问 http://127.0.0.1:8080 配置及安装相关插件 查看密码解锁 cat /var/lib/jenkins/secrets/initialAdminPassword 选择插件安装。根据他推荐的很多冗余的插件