小编Abh*_*der的帖子

有没有办法在单个npmrc文件中配置多个注册表

这是我的问题.我们有一个私有的NPM注册表,只能在VPN中使用.我想有一个后备注册表https://registry.npmjs.org,这样当我离开VPN时,它可以无缝地工作.

PS目前我正在使用npmrc,它可以很好地切换.npmrc文件作为解决方法

node.js npm

106
推荐指数
8
解决办法
7万
查看次数

TCP负载平衡器和HTTP负载平衡器之间的区别以及何时使用什么?

我试图了解这两者之间的基本用例,以及何时优先使用另一种。

  1. 例如,HAProxy支持TCP负载平衡。在实际情况下,这将是决定因素吗?
  2. 还有什么HTTP LB可以实现TCP不能,反之亦然
  3. 任何参考架构

任何与实际用例相关的链接都很好

architecture load-balancing web-applications haproxy

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

在java泛型中键入Witness

我从Geonicics Trail In Java Documentation中看到了什么Type Witness

BoxDemo.<Integer>addBox(Integer.valueOf(10), listOfIntegerBoxes);
Run Code Online (Sandbox Code Playgroud)

或者,如果省略类型见证,Java编译器会自动推断(从方法的参数)类型参数是Integer:

BoxDemo.addBox(Integer.valueOf(20), listOfIntegerBoxes);
Run Code Online (Sandbox Code Playgroud)

想了解

  • 这样做的正确方法是什么?使用Type Witness还是让Java推断?
  • 是否存在绝对需要使用类型见证的情况?
  • 这是Java 5的一个功能还是以后添加的?

java generics

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

AngularJS Ng-repeat和Duplicates

我在SO中没有看到任何问题,讨论在ng-repeat中不允许重复.我的问题略有不同.在我的情况下,我很困惑,因为即使数组中有重复的对象,我也没有收到错误

这是我的HTML代码

<table>
      <tr ng-repeat="item in items">
        <td> {{ item.email}}</td>           
      </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

这是填充数组的代码

app.controller('MainCtrl', function($scope) {


$scope.items=[];

  $scope.items.push({
           "id":"1",
           "email":"a@b.com"});
  $scope.items.push({
           "id":"1",
           "email":"a@b.com"});

  $scope.items.push({
           "id":"2",
           "email":"x@y.com"});
  $scope.items.push({
           "id":"2",
           "email":"x@y.com"});


});
Run Code Online (Sandbox Code Playgroud)

根据我的理解,我应该得到错误,并且数组中有重复的对象

然而它变得完美呈现.这是plunker链接

NG-重复演示

显然我遗漏了一些基本的东西.有人能指出我在理解方面的差距吗?

编辑

这是我在我的应用程序中面临的问题(只有电子邮件ID因为显而易见的原因而被更改)

ExampleApp.filter("extractEmail",function(){

  return function(items){
    //console.log("test" + input[0].highlight.file[0]);
    var filtered = [];

    console.log(" items == " + items);


    angular.forEach(items, function(item){

      if (item){
        var obj = item.highlight.file[0].toString().match(/([\w-\.]+)@((?:[\w]+\.)+)([a-zA-Z]{2,4})/);

      if (obj) {
        //console.log(obj[0]);
        filtered.push(obj[0]);
      }

      }


    }); 

    console.log(filtered);
    return filtered;
  }

});
Run Code Online (Sandbox Code Playgroud)

我的console.log打印 [“a@gmail.com", “a@gmail.com", “b@gmail.com", …

javascript angularjs

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

Elasticsearch 中的 BulkRequest java API 中的错误:“传递的对象数量必须是偶数,但为 [1]”

我正在尝试将 map 与 ElasticSearch Java Api 的 Bulk Insert Api 一起使用

public  void bulkInsert(List<Map<String,String>> listOfObjects ){

    BulkRequestBuilder bulkRequest = client.prepareBulk();

    Iterator<Map<String,String>> itr = listOfObjects.iterator();

    if (itr.hasNext()){
        Map<String,String> document = itr.next();
        bulkRequest.add(client.prepareIndex(index, type)
                .setSource(document));
    }

    BulkResponse bulkResponse = bulkRequest.execute().actionGet();


    if (bulkResponse.hasFailures()) {
        System.out.println(bulkResponse.buildFailureMessage());
    }   

}
Run Code Online (Sandbox Code Playgroud)

我打电话给

Map<String,String> jsonMap = new HashMap<String,String>();

    jsonMap.put("name", fullName.toString());
    jsonMap.put("file", file);

    List<Map<String,String>> listOfObjects = new ArrayList<Map<String,String>>();
    listOfObjects.add(jsonMap);
    indexService.bulkInsert(listOfObjects);
Run Code Online (Sandbox Code Playgroud)

我收到以下异常 传递的对象数量必须是偶数,但为 [1]

java elasticsearch

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

在JOOQ中插入MySQL的返回查询

我正在尝试使用以下代码来获取自动生成的ID。我的后端是MySQL。代码看起来像这样

Record record = create.insertInto(CANDIDATE, CANDIDATE.FIRST_NAME,      
       CANDIDATE.LAST_NAME,CANDIDATE.EXTRACTED_NAME)
       .values("Charlotte", "Roche","Charlotte Roche")
       .returning(CANDIDATE.ID)
       .fetchOne();

System.out.println(record.getValue(CANDIDATE.ID));
Run Code Online (Sandbox Code Playgroud)

我收到NullPointerException。我看了http://www.jooq.org/javadoc/latest/org/jooq/InsertReturningStep.html。它说

Derby,H2,Ingres,MySQL, SQL Server仅允许将IDENTITY列值检索为“生成的键”。如果要求其他字段,则发出第二条语句。客户代码必须确保两个语句之间的事务完整性。

根据我在Mysql中的理解,auto_increment用作IDENTITY。任何人都可以请教一些如何实现MySQL的方法

我看了关于类似主题的这个SO问题,并尝试了以下

Result<?>  record =
            create.insertInto(CANDIDATE, CANDIDATE.FIRST_NAME, CANDIDATE.LAST_NAME,CANDIDATE.EXTRACTED_NAME)
                  .values("Charlotte", "Roche","Charlotte Roche")
                  .returning(CANDIDATE.ID)
                  .fetch();

            System.out.println(record.size());
Run Code Online (Sandbox Code Playgroud)

虽然它在后端插入记录,但是将record.size()打印为零

java mysql java-ee jooq

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

在spring security中覆盖默认login-processing-url的用例是什么?

以下是spring security form登录的示例配置

<http auto-config="true" use-expressions="false">
      <form-login login-processing-url="/static/j_spring_security_check"
                  login-page="/login"
                  authentication-failure-url="/login?login_error=t"/>
  </http>
Run Code Online (Sandbox Code Playgroud)

现在,如果我没有指定任何显式login-processing-url spring,则将其假定为"/ j_spring_security_check".我找不到默认和重写之间的任何类型的功能差异,并且发现spring无缝地处理更改.我试着去谷歌了解我们什么时候应该覆盖它.答案都没有让我满意.

那么我们何时以及为什么要覆盖默认的login-processing-url?最重要的是,当我们"必须"覆盖默认值时,是否存在任何用例?

谢谢

java spring spring-mvc spring-security java-ee

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

如何使用Elasticsearch Java Api使用query_string创建查询

目前我的查询请求正文如下

{
  "query": {
    "query_string": {
      "default_field": "file",
      "query": "Email OR @gmail.com @yahoo.com"
    }
  },
  "highlight": {
    "fields": {
      "file": {

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

我的java代码看起来像

String queryString = "{" 
                + "\"query_string\": " 
                    + "{"
                        + "\"default_field\":"
                    + " \"file\","
                            + " \"query\": \"Email OR @gmail.com @yahoo.com\""
                            + "}"
                            + "}";
Run Code Online (Sandbox Code Playgroud)

以下API调用

SearchRequestBuilder searchRequestBuilder = client.prepareSearch()
                .setIndices("resume")
     .setTypes("docs").setQuery(queryString).addHighlightedField("file");

SearchResponse response = searchRequestBuilder.execute().actionGet();
Run Code Online (Sandbox Code Playgroud)

我更喜欢基于api的方法用于"queryString"部分.我无法找到任何处理请求的"query_string"部分的api.有match_all,match,term等等api,但不适用于query_string

任何帮助将非常感激

java java-ee elasticsearch

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

原始线程与非原始线程的区别

在 Open JDK note 中,我发现了这个精确的注释

在新创建的线程(非原始线程)中使用 JNI_CreateJavaVM 创建 VM。注意:在原始线程中创建 VM 会大大降低自定义 VM 的能力,例如 Windows 上的堆栈大小以及许多其他限制

在谷歌上找不到太多关于这方面的文献!!:O。请赐教。

java operating-system jvm jvm-hotspot

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

HTTP反向代理,TCP代理,Socks5代理之间的区别?

这是我对这些内容的理解,我发现其中几乎没有差距。特别是何时何地使用

HTTP代理:

  • 可以用作TLS终止代理
  • 可用于修改HTTP标头
  • 可用作DMZ前面的负载平衡器或公共IP提供程序以屏蔽后端服务器

TCP代理

  • 可以用作TCP连接的反向代理,不仅可以支持HTTP,还可以支持其他应用程序层协议,例如FTP

我的问题

  • 如果我只接受HTTP网络流量,那么应该使用TCP代理而不是HTTP代理的用例是什么?
  • 这种理解是联系吗?TCP客户端可以连接到TCP代理上的单个套接字,而TCP代理可以打开与后端服务器的多个连接,类似于负载平衡器

SOCKS5代理

  • 来自维基百科

套接字安全(SOCKS)是一种Internet协议,它通过代理服务器在客户端和服务器之间交换网络数据包。SOCKS5还提供身份验证,因此只有授权用户才能访问服务器。实际上,SOCKS服务器将TCP连接代理到任意IP地址,并为UDP数据包转发提供了一种方法。

SOCKS在OSI模型的第5层(会话层,表示层和传输层之间的中间层)执行。SOCKS服务器在TCP端口1080上接受传入的客户端连接

我的问题

  • Web应用程序中SOCKS代理的用途是什么
  • TCP和SOCKS5代理之间的区别
  • 在TCP / IP模型中是传输层协议
  • 代理UDP连接的用例是什么

proxy networking tcp socks web

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