小编Ada*_*ion的帖子

如何在bash字符串中添加新行?

\nshell字符串中不考虑新行

root@toto:~# str="aaa\nbbbb"
root@toto:~# echo $str
aaa\nbbbb
Run Code Online (Sandbox Code Playgroud)

预期结果:

root@toto:~# echo $str
aaa
bbbb
Run Code Online (Sandbox Code Playgroud)

如何在字符串中添加新行?

linux bash shell sh ash

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

SocketInputStream.socketRead0()中CPU使用率高的原因

在剖析本土网络应用程序时,我遇到了非常奇怪的(至少对我来说)观察.

几乎所有的时间都花在socketRead0()SocketInputStream课堂的方法上.这并不奇怪,因为我的应用程序在每个请求上都使用远程服务进行联网.奇怪的是,这种方法不仅挂钟时间使用率高,而且CPU时钟时间也很高.我无法理解为什么CPU时间很长,因为如果我的应用程序等待远程服务回复(实际上并不是那么快),那么应用程序本身就没有什么可做的了.所以CPU时间应该很低.

更多观察:

  • 采样模式下的VisualVM显示该方法SocketInputStream.socketRead0()占用时间高达95%(挂钟时间 CPU时间);
  • mpstat (我们使用Linux作为操作系统)显示约90%的用户时间和约1-3%的系统时间(其余为空闲时间);
  • 应用程序部署在专用服务器上;
  • 远程服务也是HTTP Web应用程序.平均响应时间约为100毫秒.平均响应大小约为2Kb.
  • 我的应用程序使用spring RestTemplate来与远程服务进行交互,而不是SocketInputStream直接进行.

现在我只有一个想法 - 也许这是在JVM中调用本机方法的开销(SocketInputStream.socketRead0()原生)?

你怎么看?还有其他原因吗?

java linux performance jvm cpu-usage

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

Struts 2,以List格式转换日期,非默认格式

我有一个动作,该动作具有日期列表属性.请求参数将以"yyyy.MM.dd"格式显示.在"-coversion.properties"文件中(我不想为此目的使用全局类型转换器).

我没有使用注释.

如果它只是一个日期而不是集合,那么特定于属性的转换将很容易.是否可以将特定于属性的类型转换应用于List的元素?

java struts2

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

为什么域模型不应该用作REST API中的资源?

我发现一个声明,即根据DDD设计的域模型不应该用作REST API()中的资源.

很明显,REST API是应用程序的契约,而域模型是实现的一部分,因此最好将这两个事物分开,以便域模型中的更改不会自动意味着更改REST API.

但是,我认为在小型项目(REST API只有一个消费者 - 由一个团队开发的javascript前端)的情况下,使用单独模型的好处并不能证明分离模型的成本(不同的类 - 域模型和资源表示和模型之间的映射代码).显然,域层不能引用REST特定的基础结构代码(以保持关注点分离).

域和REST模型应该分开吗?

api rest domain-driven-design domain-model

11
推荐指数
3
解决办法
3216
查看次数

搜索Gray Log 2 API或查询ElasticSearch的方法

我有一个关于Gray Log 2的问题

在公司,我为所有系统工作,向具有预定义流的Gray Log服务器报告例外情况.

我需要构建一个外部仪表板,用于从不同的流中检索数据.我没有找到任何灰色Log 2 API用于此目的.我读到有可能直接查询Elastic Search.您能告诉我该怎么做或者是否有任何Gray Log 2 API.

我的仪表板将被编写或在JSF或.NET中仍然不确定哪个最好使用.

我非常感谢这个问题的详细答案.链接也会有所帮助.

.net java elasticsearch graylog2

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

如何使用xmlint --xpath在每次匹配后追加换行符

我有以下HTML代码:

<textarea name="command" class="setting-input   fixed-width" rows="9">1</textarea><textarea name="command" class="setting-input   fixed-width" rows="5">2</textarea>
Run Code Online (Sandbox Code Playgroud)

我想解析它以接收这样的输出:

1
2
Run Code Online (Sandbox Code Playgroud)

目前我正在使用:

xmllint --xpath '//textarea[@name="command"]/text()' --html
Run Code Online (Sandbox Code Playgroud)

但每次比赛后都不会附加换行符.

xml shell xpath xmllint

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

启动并配置WildFly服务器,并在1个maven运行中使用wildfly-maven-plugin部署应用程序

我想有办法运行maven,以便:

  • 以独立模式启动WildFly服务器实例(wildfly:run)
  • 部署hsqldb驱动程序
  • 添加数据源
  • 部署应用程序

问题是:

  • wildfly:run 阻止所以不能执行其他maven目标
  • 服务器实例必须先运行才能配置或部署应用程序(daaa)

我想到的一个可能的工作是:

  • wildfly:start
  • 配置服务器并部署应用程序
  • 阻止,直到用户按下CTRL-C,是否有maven插件执行此操作?

java maven wildfly

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

如何使用不同的字段分隔符对多个字段进行排序

我想在多个字段和多个字段分隔符上对文件进行排序.请帮忙.这是我的示例数据文件:

$ cat Data3
My Text|50002/100/43
My Message|50001/100/7
Help Text|50001/100/7
Help Message|50002/100/11
Text Message|50001/100/63
Visible Text|50001/100/52
Invisible Text|50002/100/1
Run Code Online (Sandbox Code Playgroud)

第一个字段分隔符是管道符号,第二个字段分隔符是/.我想先在第二个字段上对这些数据进行排序,然后在其中,数据应该按照最后一个字段的排序顺序(单独依据/).最后,我的排序数据应如下所示:

Help Text|50001/100/7
My Message|50001/100/7
Visible Text|50001/100/52
Text Message|50001/100/63
Invisible Text|50002/100/1
Help Message|50002/100/11
My Text|50002/100/43
Run Code Online (Sandbox Code Playgroud)

通过使用sort -k2,2n -t'|',我能够对字段2(50001/50002)进行排序,但是然后在该值内如何对最后一个字段进行排序(由...分隔/)?

unix sorting

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

添加元素到列表Java

为什么在将值分配给Arrays.asList后,我无法将元素添加到List

List<Integer> sam = Arrays.asList(1,2,3,4);
sam.add(5);

for (Integer integer : sam)
{
  System.out.println(integer);
}
Run Code Online (Sandbox Code Playgroud)

java

7
推荐指数
2
解决办法
5万
查看次数

如何在双向关联中实例化不可变类?

我有两个不可变的类:用户部门,它们使用双向关联连接 - 用户部门的引用,部门有一个用户列表.如何使用提供的用户创建新的Department实例?

码:

class User {
    private final Department department;
    private final String name;

    public User(Department department, String name) {
        this.department = department;
        this.name = name;
    }
}

class Department {
    private final List<User> users;
    private final String name;

    public Department(List<User> users, String name) {
        this.users = new ArrayList<>(users);
        this.name = name;
    }
}
Run Code Online (Sandbox Code Playgroud)

java software-design immutability

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