初始化

Ansible-Playbook之初始化服务器

狂风中的少年 提交于 2020-03-14 11:26:26
批量初始化服务器 初始化步骤 配置ssh密钥认证 远程配置主机名 控制远程主机互相添加HOSTS解析 配置远程主机的yum源以及一些软件 时间同步配置 关闭selinux/iptables 修改sshd配置 配置ssh密钥认证 在主控节点的 /etc/ansible/hosts 配置节点 $ vim /etc/ansible/hosts [new] 192.168.56.12 192.168.56.13 在控制节点配置到受控节点的ssh认证方式 # 主控节点执行 $ ssh-keygen -t rsa -f ~/.ssh/id_rsa -N '' $ for host in 192.168.56.{11..12};do ssh-keyscan $host >> ~/.ssh/hnow_hosts 2> /dev/null sshpass -p '123456' ssh-copy-id root@$host &> /dev/null done 将上面的方案playbook化: --- - name: config ssh connection hosts: new gather_facts: false tasks: - name: configure ssh connection shell: | ssh-keyscan {{inventory_hostname}} >> ~/

说下hangfire吧

落爺英雄遲暮 提交于 2020-03-14 01:50:06
最近因工作需要开发计划任务模块(严格来说应该是修改bug吧,其他同事负责的)接触到了Hangfire。早前听同事说hangfire有点坑,怀着好奇,趁这两天bug改的差不多了,在github上面down了hangfire源码,下面分享一下,自己读hangfire源码的一些理解,和工作中需要注意的地方。介绍大概分为以下几个部分吧。1.准备工作,2.简单使用,3.源码分析,4.避坑。需要说明一下接触hangfire源码的时间不长,也就几天时间理解不到位,或者说错了的,希望在评论指正。 准备工作: hangfire源代码的代码量不多,github地址: https://github.com/HangfireIO/Hangfire ,有兴趣的朋友可以自己下载瞅瞅源码。功能上大概可以分为客户端模式和服务端模式。用到的技术大概有Multi Thread、Expression、Dapper、Cron等。可以这么说,它的定时任务完全就是基于多线程协作实现的。因为是多线程环境,所以个人觉得看起来有点费力。 简单使用:.Net&.Net Core环境都可以使用,下面就以.Net Core的使用为例。 1.客户端和服务端独立部署 client端 1 public IServiceProvider ConfigureServices(IServiceCollection services) 2 { 3 /

8.机器学习之聚类算法

倾然丶 夕夏残阳落幕 提交于 2020-03-14 01:43:39
分类 是在一群已经知道类别标号的样本中,训练一种分类器,让其能够对某种未知的样本进行分类,分类算法属于一种有监督的学习。分类算法的分类过程就是建立一种分类模型来描述预定的数据集或概念集,通过分析由属性描述的数据库元组来构造模型。分类的目的就是使用分类对新的数据集进行划分,其主要涉及分类规则的准确性、过拟合、矛盾划分的取舍等。 ———————————————— 聚类 是在一群未知类别标号的样本上,用某种算法将他们分成若干类别,这是一种无监督学习。给定一组数据点,我们可以用聚类算法将每个数据点分到特定的组中,理论上属于同一组的数据点应该有相似的属性和/或特征,而属于不同组的数据点应该有非常不同的属性和/或特征。所以在给定的数据集中,我们可以通过聚类算法将其分成一些不同的组。 聚类是一种将数据点按一定规则分群(分组)的机器学习技术。其主要研究数据间逻辑上或物理上的相互关系。聚类分析本身不是一个特定的算法,而是要解决的一般任务。它可以通过各种算法来实现,这些算法在理解群集的构成以及如何有效地找到它们方面存在显着差异。由聚类所组成的簇是一组数据对象的集合,这些对象与同一簇中的对象彼此类似,与其他簇中的对象相异。其分析结果不仅可以揭示数据间的内在联系与区别,还可以为进一步的数据分析与知识发现提供重要依据。 监督学习: 当我们根据一组给定的预测因子变量或自变量去预测一个目标变量时

Hello China操作系统在Virtual PC上的安装和使用

你说的曾经没有我的故事 提交于 2020-03-13 18:48:26
本文介绍如何在Windows 7操作系统和Virtual PC 2007虚拟机上安装Hello China操作系统,Hello China的版本是V1.75。对于Windows XP等非Windows 7操作系统,由于不能直接支持虚拟硬盘,不能按照本文介绍的方法安装Hello China的GUI功能,但是可以安装内核和基于字符界面的shell。 HelloChina在Virtual PC上的启动过程 首先介绍一下Hello ChinaV1.75在Virtual PC上的启动过程。为了最大可能的降低安装和使用的复杂性,V1.75版本在Virtual PC上是通过虚拟软盘启动的。Hello China的内核和核心驱动程序(比如键盘驱动、鼠标驱动、IDE接口硬盘驱动、文件系统等)等文件都集成在了虚拟软盘中。这样通过虚拟软盘启动计算机,操作系统的核心模块就直接从虚拟软盘中加载到内存并执行。内核初始化完成之后,Hello China会进入字符shell模式,这时候用户就可以运行字符模式命令了。 在字符模式下,用户输入GUI命令,即可进入图形模式的shell。一旦用户输入gui命令,Hello China会在硬盘的第一个分区(用C:标识,与Windows类似)的PTHOUSE目录下,寻找hcngui.bin文件,这个文件即是Hello China图形模式模块的可执行二进制文件。一旦找到这个文件

移动硬盘在磁盘管理中显示没有初始化寻回资料方法

一曲冷凌霜 提交于 2020-03-13 13:09:29
问题描述: 磁盘没有初始化是因为0号扇区损坏,导致移动硬盘分区表读取不出来,从而移动硬盘出现磁盘没有初始化。 工具/软件:极限数据恢复软件 步骤1:程序运行后,直接双击需要恢复的物理盘,磁盘没有初始化需要从磁盘恢复文件。 步骤2:等待程序扫描完毕一般需要几分钟到半个小时。 步骤3:程序找到资料后,程序会将找到的分区列出来。 步骤4:将需要恢复的资料勾上,接着点右上角的保存,《另存为》按钮,将勾上的文件复制出来。 步骤5:最后一步只需等程序将资料COPY完成就好了 。 注意事项1:磁盘没有初始化恢复出来的文件需要暂时保存到其它盘里。 注意事项2:想要恢复磁盘没有初始化需要注意,在文件找到之前,不要重建新的分区。 来源: 51CTO 作者: es1xune 链接: https://blog.51cto.com/13390677/2475554

out 和 ref 之间的区别整理

可紊 提交于 2020-03-13 12:58:36
ref 和 out 都是 C# 中的关键字,所实现的功能也差不多,都是指定一个参数按照引用传递。 对于编译后的程序而言,它们之间没有任何区别,也就是说它们只有语法区别。 总结起来,他们有如下语法区别: 1 、 ref 传进去的参数必须在调用前初始化, out 不必,即: int i; SomeMethod( ref i );// 语法错误 SomeMethod( out i );// 通过 2 、 ref 传进去的参数在函数内部可以直接使用,而 out 不可: public void SomeMethod(ref int i) { int j=i;// 通过 //... } public void SomeMethod(out int i) { int j=i;// 语法错误 } 3 、 ref 传进去的参数在函数内部可以不被修改,但 out 必须在离开函数体前进行赋值。 ref 在参数传递之前必须初始化;而 out 则在传递前不必初始化,且在 ... 值类型与引用类型之间的转换过程称为装箱与拆箱。 总结: 应该说,系统对 ref 的限制是更少一些的。 out 虽然不要求在调用前一定要初始化,但是其值在函数内部是不可见的,也就是不能使用通过 out 传进来的值,并且一定要在函数内赋一个值。或者说函数承担初始化这个变量的责任。 下面谈谈ref和out到底有什么区别: 1 关于重载

ajax readyState的五种状态详解

若如初见. 提交于 2020-03-13 09:23:25
在《Pragmatic Ajax A Web 2.0 Primer 》中对readyStae状态的介绍,摘译如下: 0: (Uninitialized) the send( ) method has not yet been invoked. 1: (Loading) the send( ) method has been invoked, request in progress. 2: (Loaded) the send( ) method has completed, entire response received. 3: (Interactive) the response is being parsed. 4: (Completed) the response has been parsed, is ready for harvesting. 0 - (未初始化)还没有调用send()方法 1 - (载入)已调用send()方法,正在发送请求 2 - (载入完成)send()方法执行完成,已经接收到全部响应内容 3 - (交互)正在解析响应内容 4 - (完成)响应内容解析完成,可以在客户端调用了 对于readyState的这五种状态,其他书中大都语焉不详。像《Foundations of Ajax》中,只在书中的表2-2简单地列举了状态的“名称”--The state

ajax readyState的五种状态详解

孤者浪人 提交于 2020-03-13 09:22:19
0 - (未初始化)还没有调用send()方法 1 - (载入)已调用send()方法,正在发送请求 2 - (载入完成)send()方法执行完成,已经接收到全部响应内容 3 - (交互)正在解析响应内容 4 - (完成)响应内容解析完成,可以在客户端调用了 在《Pragmatic Ajax A Web 2.0 Primer 》中对readyStae状态的介绍,摘译如下: 0: (Uninitialized) the send( ) method has not yet been invoked. 1: (Loading) the send( ) method has been invoked, request in progress. 2: (Loaded) the send( ) method has completed, entire response received. 3: (Interactive) the response is being parsed. 4: (Completed) the response has been parsed, is ready for harvesting. 0 - (未初始化)还没有调用send()方法 1 - (载入)已调用send()方法,正在发送请求 2 - (载入完成)send()方法执行完成,已经接收到全部响应内容 3

构造器Constructor是否可被Override(重写)

拥有回忆 提交于 2020-03-13 08:05:07
构造器Constructor不能被继承,因此不能被重写(Override),但是可以被重载(Overload) 如果父类自定义了有参构造函数,则子类无论定义构造函数与否,定义有参构造函数与否,都会报错,正确的做法是在子类的构造方法中添上super(参数),以表明子类构造之前先构造父类,而这句话必须放在第一句,否则报"Constructor call must be the first statement in a constructor"的错误。 类的加载顺序:   首先执行 父类的静态代码块/初始化静态变量(两者优先级相同),然后执行子类的静态代码/初始化静态变量(两者优先级相同,谁写在前面谁先执行),然后初始化父类成员变量/执行代码块{}(两者优先级相同),接着父类的构造器,然后子类的成员变量/代码块,最后子类的构造器。 来源: https://www.cnblogs.com/hellohbx/p/12484214.html

Go语言基础之变量声明

自作多情 提交于 2020-03-13 01:50:19
Go语言基础之变量声明 Go语言中变量的声明 目录: 变量声明 标准声明 批量声明 变量的初始化 类型推导 短变量声明 变量声明 变量(Variable)的功能是存储数据。不同的变量保存的数据类型可能会不一样。常见变量的数据类型有:整型、浮点型、布尔型等。 Go语言中的每一个变量都有自己的类型,并且变量必须经过声明才能开始使用。 Go的变量声明有以下5种方式 标准声明 批量声明 变量的初始化 类型推导 短变量声明 标准声明 标准声明的格式是: var 变量名 变量类型 变量声明以关键字var开头,变量类型放在变量的后面,行尾无需分号 var name string var count int var sex bool 批量声明 每声明一个变量就需要写var关键字会比较繁琐,go语言中还支持批量变量声明 var ( name string count int sex bool ) 类型推导 有时候我们会将变量的类型省略,这个时候编译器会根据等号右边的值来推导变量的类型完成初始化。 var name, sex = "Wahaha", true 变量的初始化 Go语言在声明变量的时候,会自动对变量对应的内存区域进行初始化操作。每个变量会被初始化成其类型的默认值,例如: 整型和浮点型变量的默认值为0。 字符串变量的默认值为空字符串。 布尔型变量默认为false。 切片、函数