小编Dan*_*dis的帖子

HAProxy 平衡器使用 url_param 值?

我有 3 个不同的 Restful 服务器:w1、w2、w3

引用我的负载均衡器的客户端提供名为“ip”(ipv4) 的 url 参数。请求之间的 url 参数 ip 是不同的:

curl -XGET http://localhost:8080/api/v1/link?ip=x.x.x.x
Run Code Online (Sandbox Code Playgroud)

我想使用 HASH 算法根据 ip 参数平衡 HAProxy 到 w1、w2、w3。

HAProxy 配置如下:

global
    #daemon
    maxconn 3000

defaults
    mode http
    timeout connect 5000ms
    timeout client 50000ms
    timeout server 50000ms

frontend http-in
    bind *:80
    default_backend workers

backend workers
    balance url_param ip
    hash-type consistent
    server w1 localhost:8080 weight 1 maxconn 1000 check
    server w2 localhost:8081 weight 1 maxconn 1000 check
    server w3 localhost:8082 weight 1 maxconn 1000 check

listen …
Run Code Online (Sandbox Code Playgroud)

hash load-balancing haproxy

5
推荐指数
1
解决办法
2808
查看次数

在 ASP.NET Core 中注册子 IOptions

我有以下配置设置:

public void ConfigureServices(IServiceCollection services)
{
    var configuration = new ConfigurationBuilder().AddJsonFile("appsettings.json").Build();
    services.Configure<AppSettings>(configuration);
}

public class AppSettings
{
    public ChildSettings Child { get; set; }

    public string Property { get; set; }
}

public class ChildSettings
{
    public string ChildProperty { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我的 appSettings.json 如下所示:

{
    "Child": {
        "ChildProperty": "Value"
    }
    "Property": "Value"
}
Run Code Online (Sandbox Code Playgroud)

我可以IOptions<AppSettings>很好地注入我的控制器:

public class MyController : Controller
{
    public MyController(IOptions<AppSettings> options)
    {
        ChildSettings appSettings = options.Value;
    }
}
Run Code Online (Sandbox Code Playgroud)

它有点旧了,必须下降几个级别才能到达您想要的设置对象。有没有一种方法可以IOptions<ChildSettings>像这样使用:

public class …
Run Code Online (Sandbox Code Playgroud)

asp.net configuration asp.net-core-mvc asp.net-core

5
推荐指数
1
解决办法
2050
查看次数

Java (Windows) - 通过进程 ID,获取内存使用情况、磁盘使用情况、网络使用情况

我一直在研究为特定过程实现以下数据的最佳方法:

  1. CPU使用率
  2. 内存使用情况
  3. 磁盘使用情况
  4. 网络使用

我决定使用 OSHI(操作系统和硬件信息)API。对我来说不幸的是,这个 API 没有给我开箱即用的信息,它需要一些关于如何计算的基本知识,例如每个进程的 CPU 使用率。

我的问题是:如何通过进程 id 获取内存、磁盘、网络使用情况?

使用以下每个进程的 CPU 使用数据示例

例如:

要获取 claculator.exe 运行进程的实际 CPU 使用率:

import oshi.SystemInfo;
import oshi.hardware.CentralProcessor;
import oshi.software.os.OSProcess;
import oshi.software.os.OperatingSystem;

public class processCPUusage {
    public static void main(String[] args) throws InterruptedException {
        OSProcess process;
        long currentTime,previousTime = 0,timeDifference;
        double cpu;
        int pid = 7132;
        SystemInfo si = new SystemInfo();
        OperatingSystem os = si.getOperatingSystem();
        CentralProcessor processor = si.getHardware().getProcessor();
        int cpuNumber = processor.getLogicalProcessorCount();
        boolean processExists = true;
        while (processExists) {
            process …
Run Code Online (Sandbox Code Playgroud)

java windows jna oshi

5
推荐指数
1
解决办法
1858
查看次数

GitHub:如何将自己作为他人存储库的贡献者移除

我想从我的“存储库”列表中删除我作为协作者添加到的存储库(登录时位于GitHub主页的左侧)。但是,我找不到办法做到这一点。

注意:我的问题与如何删除“您的贡献的存储库”不同- 他正在尝试删除他贡献的存储库,我正在尝试删除其他人将我添加到的存储库。

github repository

5
推荐指数
1
解决办法
3891
查看次数

根据运输类别有条件地隐藏 WooCommerce 运输方式

在本网站(此处)上使用 WooCommerce v3.2.4 (WP v4.9) 和 11 种运输类别为超重/超大且适用统一费率的产品:运往加拿大
20 美元,运往美国25 美元。

\n

所有其他产品的统一运费为10 美元(加拿大)和15 美元(美国),除非订单超过100 美元,否则自动免运费。

\n

我的客户希望在购物车中有任何超重/超大物品时禁用免费送货。问题是,当购物车中混合有常规商品和超大商品时,购物车表示没有可用的送货方式,并且没有应用任何送货方式。

\n

我正在使用XAdapter Woocommerce Shipping Table Rate插件将较高的成本应用于“超重”运输类别。

\n

我停用了这个插件,因为我意识到我可以使用 WooCommerce 运输区域设置来为特定运输类别设置统一费率。请参阅下面的屏幕截图:\n我的某个送货区域的统一费率设置

\n

我正在使用一些代码来:

\n
    \n
  • 当购物车中存在“超重”运输类别时,隐藏免费送货和统一费率
  • \n
  • 如果该类别不存在,则隐藏“超重”运输方法(163 是运输类别的 ID) \xe2\x80\xa6
  • \n
\n

这是该代码:

\n
add_filter(\'woocommerce_package_rates\', \'wf_hide_shipping_method_based_on_shipping_class\', 100, 2);\n\nfunction wf_hide_shipping_method_based_on_shipping_class($available_shipping_methods, $package){\n    $hide_when_shipping_class_exist = array(\n        163 => array(\n            \'flat_rate:1\',\n            \'flat_rate:2\',\n            \'free_shipping:3\',\n            \'free_shipping:5\'\n        )\n    );\n\n    $hide_when_shipping_class_not_exist = array(\n        163 => array( \'wf_woocommerce_shipping_pro:overweightoversizeoverweight\')\n    );\n\n …
Run Code Online (Sandbox Code Playgroud)

php wordpress cart woocommerce

5
推荐指数
1
解决办法
5958
查看次数

我可以为 protobuf 中的数字设置最大值吗?

在protobuf中,我们只能选择使用有符号或无符号的32位或64位整数来限制值的范围。

然而,我想要定义的数据结构包含 8 位、16 位和 32 位整数的混合,以节省嵌入式设备上的空间。在它们上,数据结构的实现也有些不同,并且需要为某些字段保留特殊值,因此它们的最大数量不是 2 的幂。

在这些嵌入式设备上,protobuf 定义仅用于与它们之间的传输,而不用于实际存储。所以我可以在读入它们时限制数字。

但是,我宁愿在.proto.options文件中定义这些最大值,以确保所有客户端应用程序都了解这些限制。

有没有办法做到这一点?

我知道有字段选项,但此处列出的选项不包含此选项。可以创建自定义选项,但这似乎需要编写编译器扩展,这意味着我必须为我想要编译的每种语言手动实现此限制检查,而这会花费比节省的时间更多的时间。

size limit protocol-buffers proto3

5
推荐指数
1
解决办法
7362
查看次数

Visual Studio 2017 - Option Strict 将不会关闭

VS2017最近更新后。我在所有项目上都看到很多后期绑定错误。

显示错误是因为选项脚本在某处设置为打开,但我的所有项目都将选项选项严格设置为关闭。

在某些项目中,即使我在后面的页面代码中将 Option Strict 设置为 Off,我仍然会收到错误。

有时,如果我尝试在项目中引用 Microsoft Visual Basic,错误就会消失,有时则不会。

还有其他人遇到这个问题吗?有什么想法如何修复吗?

strict visual-studio visual-studio-2017

5
推荐指数
1
解决办法
2123
查看次数

SVG fill="url(#)" 的问题

我正在动态创建几个具有相同结构的 SVG。

我遇到的问题是我必须通过它们的 ID 引用渐变,因此当有多个 SVG 时,ID 会发生冲突并导致意外结果。有没有办法通过 ID 引用其他 SVG 元素?我可以将选择限制在 SVG 元素内吗?


第一部分

在一个简单的例子中,我有两个具有相同结构的 SVG——它们将由一些 javascript 动态创建。问题:请注意,第二个 SVG 使用第一个的渐变:

<div>
  This is the first SVG, it defines "#Gradient" as red-black.
  <br>
  <svg viewBox="0 0 10 10" width="50" height="50" style="border: 1px solid black;">
    <defs>
      <linearGradient id="Gradient" x1="0%" x2="0%" y1="0%" y2="100%">
        <stop offset="0%" stop-color="red"/>
        <stop offset="100%" stop-color="black"/>
      </linearGradient>
    </defs>
    <circle cx="5" cy="5" r="5" fill="url('#Gradient')" />
  </svg>
</div>
    
<div>
  This is the second SVG. It ends up displaying a …
Run Code Online (Sandbox Code Playgroud)

svg linear-gradients

5
推荐指数
1
解决办法
1037
查看次数

如何在 cy.visit() 中将动态值插入 URL?

我正在尝试将值插入到我想要访问的 URL 中。我用这个(例如):

const idp = '10'
    
cy.visit('http://test.com/aaa/bbb?id=${idp}')
Run Code Online (Sandbox Code Playgroud)

但是当我运行这个时,它将以此http://test.com/aaa/bbb?id=$%7Bidp%7D 而不是结束id=10

我也感兴趣如何从 URL 获取变量的值。

例如,我有 URL http://test.com/aaa/bbb?id=5,我想创建变量 idc,其值为 5。

javascript url cypress

5
推荐指数
1
解决办法
3201
查看次数

ExceptionInInitializerError:在 JNA 中加载 DLL 时超出代码大小限制

我正在尝试在JAVA中加载“nicaiu.dll”以使用NI-DAQ设备获取数据。

我已将本机库“nicaiu.dll”和 C 标头“NIDAQmx.h”转换为 JNAerator 的完整本机绑定。但是当我加载dll时,出现异常:

Exception in thread "main" java.lang.ExceptionInInitializerError
    at TestDAQ.main(TestDAQ.java:151)
Caused by: java.lang.IllegalArgumentException: code size limit exceeded
    at sun.misc.ProxyGenerator.generateStaticInitializer(ProxyGenerator.java:1261)
    at sun.misc.ProxyGenerator.generateClassFile(ProxyGenerator.java:484)
    at sun.misc.ProxyGenerator.generateProxyClass(ProxyGenerator.java:339)
    at java.lang.reflect.Proxy$ProxyClassFactory.apply(Proxy.java:639)
    at java.lang.reflect.Proxy$ProxyClassFactory.apply(Proxy.java:557)
    at java.lang.reflect.WeakCache$Factory.get(WeakCache.java:230)
    at java.lang.reflect.WeakCache.get(WeakCache.java:127)
    at java.lang.reflect.Proxy.getProxyClass0(Proxy.java:419)
    at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:719)
    at com.sun.jna.Native.loadLibrary(Native.java:415)
    at com.sun.jna.Native.loadLibrary(Native.java:391)
    at org.xjtu.nidaqmx4j.NicaiuLibrary.<clinit>(NicaiuLibrary.java:29)
    ... 1 more
Run Code Online (Sandbox Code Playgroud)

这是加载dll的代码

Exception in thread "main" java.lang.ExceptionInInitializerError
    at TestDAQ.main(TestDAQ.java:151)
Caused by: java.lang.IllegalArgumentException: code size limit exceeded
    at sun.misc.ProxyGenerator.generateStaticInitializer(ProxyGenerator.java:1261)
    at sun.misc.ProxyGenerator.generateClassFile(ProxyGenerator.java:484)
    at sun.misc.ProxyGenerator.generateProxyClass(ProxyGenerator.java:339)
    at java.lang.reflect.Proxy$ProxyClassFactory.apply(Proxy.java:639)
    at java.lang.reflect.Proxy$ProxyClassFactory.apply(Proxy.java:557)
    at java.lang.reflect.WeakCache$Factory.get(WeakCache.java:230)
    at java.lang.reflect.WeakCache.get(WeakCache.java:127)
    at java.lang.reflect.Proxy.getProxyClass0(Proxy.java:419)
    at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:719) …
Run Code Online (Sandbox Code Playgroud)

java reflection jna

5
推荐指数
1
解决办法
724
查看次数