小编ole*_*sii的帖子

如何自动化Puppet的模块安装

我正在将系统一键部署到Ubuntu机器上.刚刚开始使用Puppet.看来,为了让我使用外部模块,我必须使用类似的东西预先安装它们

puppet module install foo
Run Code Online (Sandbox Code Playgroud)

问题:

  1. 我是否总是需要预先安装模块才能使用它们?
  2. 如何自动安装Puppet模块?

这是一个独立的木偶设置(所以不是主从的木偶).我将不得不为不同的客户多次重复这一点.因此,有一个按钮为我完成所有工作将是很好的.在后期阶段,有一个主从设置的地方.但它必须对每个客户都是独立的.

deployment ubuntu puppet continuous-delivery

4
推荐指数
1
解决办法
1916
查看次数

获取cassandra连接错误

我无法使用Eclipse连接到Cassandra(ver2.0.5).以下是错误的完整日志:

16:06:59.818 [main] WARN cddriver.core.FrameCompressor - 找不到Snappy类,如果打算使用它,应该确保Snappy库在类路径中.Snappy压缩将无法用于该协议.

[...]为简洁而省略

java eclipse cassandra maven

4
推荐指数
1
解决办法
6304
查看次数

如何使数字总和等于1

我使用概率,我需要检查值的总和是1.我正在编写单元测试,其中一个测试失败了.这就是它失败的原因:

double[] probabilities = new[] { 0.4, 0.3, 0.2, 0.1 };
double sum = probabilities.Sum();
//On my PC gives sum of 0.99999999999999989

if (sum != 1)
{
    throw new ArgumentException(
        "Sum of the probabilities does not equal to 1. " +
        "Computed value was: " + sum);
}
Run Code Online (Sandbox Code Playgroud)

我能改变什么才能做到这一点:0.4 + 0.3 + 0.2 + 0.1 = 1

c# double

3
推荐指数
1
解决办法
760
查看次数

SQL从持续时间中获取数据

我有一个SQL数据库,其中我有一个DataType DateTime列.现在我希望特定数据具有所有日期的特定持续时间.例如,我希望所有日期的7点到8点之间的数据,有什么办法吗?

c# sql

3
推荐指数
1
解决办法
300
查看次数

这是一个语义违反封装的例子,如果是这样,我该如何解决?

如果我有像这样的服务器接口...

interface IServer
{
    void Login();
    void Post();
    void Get();
}
Run Code Online (Sandbox Code Playgroud)

...... 除非你先做,否则在哪里工作PostGet不工作Login.它是否是对封装的语义违反,因为它使得您对接口的使用隐含地依赖于实现?你会怎么解决它?

c# encapsulation

3
推荐指数
2
解决办法
256
查看次数

如何检查 MySQL 连接是否经过 SSL 加密?

我正在使用 MySQL 官方网站上的 MySQL .NET 连接器。我正在尝试建立从我的 C# 程序到 Mysql 数据库的安全 SSL 连接。Mysql 服务器允许使用 SSL 连接。have_ssl变量设置为yesca-certserver-certserver-key指定。

用户的权限是:

'GRANT USAGE ON *.* TO \'logowanie\'@\'%\' IDENTIFIED BY PASSWORD \'*...\' REQUIRE SSL'
'GRANT SELECT ON `db`.`table1` TO \'logowanie\'@\'%\''
Run Code Online (Sandbox Code Playgroud)

所以我假设,这个用户不能在没有 SSL 的情况下登录?我对吗?

我在 C# 程序中的连接字符串如下所示:

"server=127.0.0.1;uid=logowanie;pwd=log1;database=ewidencja;SslMode=Required";
Run Code Online (Sandbox Code Playgroud)

看到这个连接字符串没有任何证书文件的路径!它只有“SSLMode=Required”选项。是否可以在没有任何其他 SSL 选项的情况下进行 SSL 加密连接?

并且用户能够登录并在 上执行一些选择命令table1。所以我假设这个连接是 SSL 加密的?如何检查此连接是否经过 SSL 加密以确保 100%?

c# mysql connection ssl

3
推荐指数
1
解决办法
9267
查看次数

如何在Spark中以小块的形式迭代大型Cassandra表

在我的测试环境中,我有1个Cassandra节点和3个Spark节点.我想迭代一个大约有200k行的大表,每个大约需要20-50KB.

CREATE TABLE foo (
  uid timeuuid,
  events blob,
  PRIMARY KEY ((uid))
) 
Run Code Online (Sandbox Code Playgroud)

这是在spark集群中执行的scala代码

val rdd = sc.cassandraTable("test", "foo")

// This pulls records in memory, taking ~6.3GB
var count = rdd.select("events").count()  

// Fails nearly immediately with 
// NoHostAvailableException: All host(s) tried for query failed [...]
var events = rdd.select("events").collect()
Run Code Online (Sandbox Code Playgroud)

Cassandra 2.0.9,Spark:1.2.1,Spark-cassandra-connector-1.2.0-alpha2

我试图只运行collect,没有count- 在这种情况下它只是快速失败NoHostAvailableException.

问题:迭代大表读取和一次处理小批量行的正确方法是什么?

scala cassandra apache-spark rdd

3
推荐指数
1
解决办法
3005
查看次数

在方法中应用开/关原理

嗨我的任务是重构一部分代码,以便它与开放/封闭原则相对应.我设法在两种方法中应用策略模式但在一种方法中我不知道应该如何进行.

public ProductPriceCalculator(Product product)
{
    this.product = product;
    buyerStrategy = new BuyerStrategy();
    discountStrategy = new DiscountStrategy();
}

public Price CalculatePrice()
{
    price = new Price();

    decimal productPrice = product.BasePrice + 
                           (product.BasePrice * product.Addition);
    decimal TVA = CalculateTVA();
    price.ProductPrice = productPrice*TVA;
    decimal discount = CalculateDiscount(price.ProductPrice);
    price.Discount = price.ProductPrice * discount;
    price.ProductPriceWithDiscount = price.ProductPrice - price.Discount;
    price.TransportPrice = product.Transport.GetTransportPrice();
    price.TotalPrice = price.ProductPriceWithDiscount + price.TransportPrice;

    return price;
} 
Run Code Online (Sandbox Code Playgroud)

在这种情况下,这个方法通过使用类中的方法来初始化对象.现在这个方法没有关闭进行修改,因为如果在某些时候我必须向Price添加另一个属性,我将不得不回到这里初始化它.

我该如何正确构建此代码?

c# design-patterns solid-principles

2
推荐指数
1
解决办法
230
查看次数

通知计算财产的变化

在这个网站上有类似的问题,但我没有找到真正有效的答案,所以我再次发布.

public MyClass
{

   public person Person1 {get; set;}

   public person Person2 {get; set;}

  CalculatedProperty 
   { 
     get
     { return Person1.Salary + (Person2.Salary/2) ; }
   }

}

public class Person
{
  public double Salary
    { get; set;}
}
Run Code Online (Sandbox Code Playgroud)

我希望能够在CalculatedProperty任何时候Person1.Salary和/或Person2.Salary更改时通知更改.

我曾尝试添加OnPropertyChanged("CalculatedProperty")上的制定者Person1Person2,但它不工作(我明白为什么),但无法找到一个方法来更改通知.请帮忙=)

(有没有办法使用ObjectDataProvider它?...一直在尝试...)

c# wpf notify

2
推荐指数
1
解决办法
1054
查看次数

正则表达式检查文件是否有任何扩展名

我正在寻找一个正则表达式来测试文件是否有任何扩展名.我将其定义为:如果在最后一个"."之后没有斜杠,则file具有扩展名..斜杠总是反斜杠.

我从这个正则表达式开始

.*\..*[^\\]
Run Code Online (Sandbox Code Playgroud)

这转化为

.*          Any char, any number of repetitions 
\.          Literal .
.*          Any char, any number of repetitions 
[^\\]       Any char that is NOT in a class of [single slash]
Run Code Online (Sandbox Code Playgroud)

这是我的测试数据(不包括##,这是我的评论)

\path\foo.txt            ## I only want to capture this line
\pa.th\foo               ## But my regex also captures this line <-- PROBLEM HERE
\path\foo                ## This line is correctly filtered out
Run Code Online (Sandbox Code Playgroud)

这样做的正则表达式是什么?

regex file-extension path

2
推荐指数
2
解决办法
6119
查看次数