小编vis*_*071的帖子

28
推荐指数
6
解决办法
5万
查看次数

使用大于四位十六进制数字的代码打印unicode字符

我试图在屏幕上使用unicode文本在表情符号上打印表情符号.

Wiki的表情符号列表中,我发现它们的形式为U + 1F6xx__即.5个字符十六进制.

我怎么用文本代码打印笑脸: U+1F60A

请帮忙.

java printing unicode

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

定义自定义负载平衡算法

情况如下:

我有许多Web服务器,比如10.我需要使用(软件)负载均衡器,它可以使用反向代理服务器实现,如HAProxy或Varnish.现在,我们所服务的所有流量都是通过https而不是http,所以Varnish是不可能的.

现在,我想将用户的请求分成几个类别,这些类别取决于请求的一个输入(POST)参数.根据该参数,我需要在服务器之间划分请求,基于此,(即使所有其他输入(POST)参数相同),不同的服务器将以不同的方式提供服务.

所以,我需要定义一个自定义负载平衡算法,这样,对于该参数的特定值,我将负载除以特定的3(比方说),对于某些其他值,将请求分为特定的2和其他值( s),剩下的5.

由于我不能使用清漆,因为它不能用于终止ssl(定义自定义算法在VCL中很容易),我正在考虑使用HA-Proxy.

所以,这是一个问题:

任何人都可以帮助我如何使用HA-Proxy定义自定义负载平衡功能?

我研究了很多,但我找不到任何这样的文件.因此,如果HA-Proxy不可能,您是否可以将我转介给其他一些反向代理服务,它也可以用作负载均衡器,以满足上述两个标准?(ssl终止和定义自定义负载平衡的能力).

编辑:

这个问题是我之前提出的一个问题.用于https的清漆

ssl https reverse-proxy load-balancing haproxy

9
推荐指数
1
解决办法
1261
查看次数

字符串之间的缩写相似度

我的项目中有一个用例,我需要将key-string 与很多字符串进行相似性比较。如果这个值大于某个阈值,我认为这些字符串与我的“相似” key,并根据该列表,我进行一些进一步的计算/处理。

我一直在探索模糊匹配字符串相似性的东西,它使用edit distance基于“levenshtein、jaro 和 jaro-winkler”相似性的算法。

尽管它们工作得很好,但如果一个字符串是另一个字符串的“缩写”,我希望获得更高的相似度分数。有没有我可以使用的算法/实现。

笔记:

language: python3 
packages explored: fuzzywuzzy, jaro-winkler
Run Code Online (Sandbox Code Playgroud)

例子:

using jaro_winkler similarity:

>>> jaro.jaro_winkler_metric("wtw", "willis tower watson")
0.7473684210526316
>>> jaro.jaro_winkler_metric("wtw", "willistowerwatson")
0.7529411764705883

using levenshtein similarity:

>>> fuzz.ratio("wtw", "willis tower watson")
27
>>> fuzz.ratio("wtw", "willistowerwatson")
30
>>> fuzz.partial_ratio("wtw", "willistowerwatson")
67
>>> fuzz.QRatio("wtw", "willistowerwatson")
30
Run Code Online (Sandbox Code Playgroud)

在这种情况下,如果可能的话,我希望分数更高(>90%)。我也可以接受很少的误报,因为它们不会对我的进一步计算造成太多问题。但是,如果我们匹配 s1 和 s2,使得 s1 完全包含在 s2 中(反之亦然),那么它们的相似度得分应该会高得多。

编辑:我的用例的更多示例

对我来说,空格是多余的。这意味着,wtw被视为“willistowerwatson”和“willis tower watson”的缩写。

另外,stove是“STack OVERflow”或“STandardOVErview”的有效缩写

一种简单的算法是从较小字符串的第一个字符开始,看看它是否存在于较大字符串中。然后检查第二个字符,依此类推,直到条件满足第一个字符串完全包含在第二个字符串中。这对我来说是 100% 匹配。

诸如“willistowerwatson”之类的进一步示例wtwx可以给出例如 80% …

python edit-distance similarity jaro-winkler

7
推荐指数
1
解决办法
1016
查看次数

运行“Composer Install”后缺少“vendor”文件夹

我目前正在尝试在 Vagrant/Homestead 上运行一个从 Github 拉取的 Laravel 应用程序。我将其连接到数据库,并在文件夹内运行 Composer Install、Composer Update。当我尝试在浏览器上访问它时,出现以下错误:

警告:require(/home/vagrant/.../public/vendor/autoload.php):无法打开流:在线/home/vagrant/..../public/autoload.php中没有这样的文件或目录2

我导航到供应商文件夹,发现它尚未创建。有什么想法如何修复它吗?

该应用程序在 Laravel 4 中运行,当我运行 Composer Install 时,我从终端得到以下输出:

Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Nothing to install or update
Package herrera-io/json is abandoned, you should avoid using it. Use kherge/json instead.
Package kherge/version is abandoned, you should avoid using it. No replacement was suggested.
Package herrera-io/phar-update is abandoned, you should avoid using it. No replacement was suggested.
Package mjolnic/bootstrap-colorpicker is abandoned, you …
Run Code Online (Sandbox Code Playgroud)

php laravel homestead

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

Java线程:CPU利用率过高

我正在使用一种服务来读取消息Kafka并将其推入Cassandra.

我正在使用相同的线程架构.

有消息k threads来自Kafka主题.这些写入队列,声明为:

public static BlockingQueue<>
Run Code Online (Sandbox Code Playgroud)

现在有很多线程,比如n写入Cassandra.这是执行此操作的代码:

public void run(){
    LOGGER.log(Level.INFO, "Thread Created: " +Thread.currentThread().getName());
    while (!Thread.currentThread().isInterrupted()) {
        Thread.yield();
        if (!content.isEmpty()) {
            try {
                JSONObject msg = content.remove();
                // JSON
                for(String tableName : tableList){
                    CassandraConnector.getSession().execute(createQuery(tableName, msg));
                }
            } catch (Exception e) {

            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

content 是用于读写操作的BlockingQueue.

我在Thread线程的实现中扩展了类,并且有一定数量的线程继续执行,除非被中断.

问题是,这是使用太多的CPU.这是第一行top命令:

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
46232 vishran+  20   0 3010804 …
Run Code Online (Sandbox Code Playgroud)

java multithreading cpu-usage

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

我编写了这段代码,它给出了NullPointerException

import java.awt.*;
import java.awt.event.*;

public class sample2 extends Frame
    {
    Button b[];
    public sample2()
        {
        super("trying");
        b=new Button[10];
        setLayout(new FlowLayout());
        for(int i=0;i<10;i++)
            add(b[i]);
        }
    public static void main(String args[])
        {
        sample2 obj=new sample2();
        obj.setSize(500,100);
        obj.setVisible(true);
        }
    }
Run Code Online (Sandbox Code Playgroud)

例外情况如下

Exception in thread "main" java.lang.NullPointerException 
at java.awt.Container.addImpl(Container.java:1037) 
at java.awt.Container.add(Container.java:373) 
at sample2.<init>(sample2.java:13) 
at sample2.main(sample2.java:17) 
Run Code Online (Sandbox Code Playgroud)

java awt nullpointerexception jbutton shadowing

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

java,String.getBytes方法的问题

我有一个大小为8的字节数组.我使用以下代码将其转换为字符串.(见下文).

现在,当我使用getBytes方法将字符串再次转换为byte []时,结果是荒谬的,这是一个16字节的byte [],与前一个字节数组只有几个(2或3)匹配字节.谁能告诉我哪里出错了?

byte[] message = new byte[8];
//initialize message
printBytes("message: " + message.length + " = ", message);
try {
    String test = new String(message, "utf-8");
    System.out.println(test);
    byte[] f = test.getBytes("utf-8");
    Help.printBytes("test = " + f.length, f);
} catch (UnsupportedEncodingException e1) {
    // TODO Auto-generated catch block
    e1.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

printBytes函数:

public static void printBytes(String msg, byte[] b){
    System.out.print(msg + " = ");
    for(int i = 0; i < b.length; i++){
        System.out.print("" + String.format("%02X", b[i]));
    }
    System.out.println("\n");
}
Run Code Online (Sandbox Code Playgroud)

输出: …

java

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

整数除法不使用/或*运算符

我正在阅读算法和数据结构教科书,并提出了这个问题:

1-28.编写一个函数来执行整数除法而不使用/或*运算符.找到一种快速的方法来做到这一点.

我们怎样才能想出一个快速的方法呢?

algorithm

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

代码在调试模式下可以正常运行,但是在正常运行时(Eclipse)会停止

我在SO上找到此链接:

代码在正常运行时不起作用,但在调试(日食)中工作

然后在看到答案的同时,Thread.sleep(0)在我的while循环中添加了一个内容,它可以正常工作。

问题是“为什么?”。另外,此问题是否特定于Eclipse

java eclipse multithreading

0
推荐指数
1
解决办法
3475
查看次数

如何根据第一个元素在对的 unordered_set 中搜索元素&gt;

unordered_set<pair<int, int> s;
Run Code Online (Sandbox Code Playgroud)

我想执行s.find()操作,但我不知道如何根据第一个元素来实现它。

eg, if my set is: (3,4),(2,5),(5,6),(7,8)

我想找到第一个元素是 7 的第二个元素,我该怎么做。

c++ algorithm unordered-set data-structures

0
推荐指数
1
解决办法
536
查看次数

将枚举或数组映射到二维数组ruby

假设我有这样的枚举:

enum colors: [:black, :dark_gray, :light_gray, :white]
Run Code Online (Sandbox Code Playgroud)

我希望输出为:

[["black",0], ["dark_gray",1], ["light_gray",2], ["white",3]]
Run Code Online (Sandbox Code Playgroud)

或者作为

[["Black",0], ["Dark gray",1], ["Light gray",2], ["White",3]] #using k.humanize on all keys
Run Code Online (Sandbox Code Playgroud)

我怎样才能将其作为输出.此外,这也可以来自1-d阵列.例如.

input=[1,2,3]
output=[[1,1],[2,4],[3,9]]
Run Code Online (Sandbox Code Playgroud)

使用像地图等的东西

我尝试使用map函数,但我尝试的方式给出了无效的语法.所以我在这里问了.答案应该是微不足道的,但我错过了一些东西.

我试过了:

op = colors.keys.map{[|s| s, colors[s]]}
Run Code Online (Sandbox Code Playgroud)

但这是错误的语法.

SyntaxError: unexpected ']', expecting '}'
Run Code Online (Sandbox Code Playgroud)

ruby arrays enums ruby-on-rails

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